static void cmpDecompile(char *Output, char *Input) { char Tmp[1024], Name[256]; u1 Hash[256], Key[256], ArName[128]; int I, J, K, C, Off, Len, NFiles, L; u1 *M, *Q, *Z; pathParts(0, ArName, 0, Input); downcase(ArName); if (!strcmp(ArName, "magic") || !strcmp(ArName, "treasure") || !strcmp(ArName, "status") || !strcmp(ArName, "itemgen") || !strcmp(ArName, "mono") || !strcmp(ArName, "text")) { printf(" not an archive CMP\n"); abort(); } Q = M = readFile(0, 1<<20, Input); NFiles = ru4(Q); //printf(" NFiles=%d\n", NFiles); times (K, NFiles) { C = ru4(Q); times(I, C) { Name[I] = *Q++ ^ CmpKey[I%32]; if (Name[I]=='\\') Name[I] = '/'; }
void QtSE::loadProject( const QString &path /* = QString() */ ) { if( !path.isEmpty() ) { QString projectValue; QJsonObject obj = CJsonTemplate::get()->loadUserJson( path , projectValue ); if( !obj.isEmpty() && projectValue == "project" ) { CPath pathParts( path , true ); jsonProjectName = pathParts.getName( true ); QDir::setCurrent( pathParts.getPath( false ) ); //projectTree->clear(); fsProjectTree->clear(); generateProjectTree( QDir::current().absolutePath() , fsProjectTree->invisibleRootItem() ); } } }