Пример #1
0
/*==================================================================================*/
int main(void)
{

	FileHandle = fopen("junkcode.bin", "rb");
	(void)fseek(FileHandle,0,SEEK_END);
	FileSize = ftell(FileHandle);
	(void)rewind(FileHandle);
	pBuffer = malloc(FileSize);
	(void)fread(pBuffer,1,FileSize, FileHandle);
	(void)fclose(FileHandle);

	/* ============================= Init the Disasm structure (important !)*/
	for (i=0;i<100;i++) {
		(void) memset (&MyDisasm[i], 0, sizeof(DISASM));
	}


	(void) printf("******************************************************* \n");
	(void) printf("Looking for obfuscation in junkcode.bin - simple pattern :\nadd X, Y\nsub X, Y\n");
	(void) printf("******************************************************* \n");

	/* ============================= Disassemble code located in that buffer */

	DisassembleCode (pBuffer, (char*) pBuffer + 0x600, 0x0);
	AnalyzeCode();


	return 0;
}
Пример #2
0
bool TAsmAnalyze::Make(String Name, TListView *Box)
{
    DestFileName = Name;
    DestFile.open(Name.c_str(),std::ios_base::out | std::ios_base::binary);    // declare input and output streams

	pHash = new HashTable;
    IDList = new TStringList;
    //IDList = new TList;

    ErrorList = Box;

	Analyze();

	AnalyzeCode();

    if (CodeError == 0) LinkCode();

    delete IDList;
    //delete IDList;
	delete pHash;

    return true;
}