Можно ли обратить? Код (Text): format PE GUI 4.0 entry start include '%fasminc%\win32a.inc' section '.code' code readable executable align 4 start: mov esi, szExitProcess cld xor ecx, ecx dec ecx mov edx, ecx @L1: xor eax, eax xor ebx, ebx lodsb or al, al jz @L4 xor al, cl mov cl, ch mov ch, dl mov dl, dh mov dh, 8 @L2: shr bx, 1 rcr ax, 1 jnb @L3 xor ax, 08320h xor bx, 0EDB8h @L3: dec dh jnz @L2 xor ecx, eax xor edx, ebx jmp @L1 @L4: not edx not ecx mov eax, edx rol eax, 10h mov ax, cx cinvoke wsprintf, szBuff, format_string, eax xor ecx, ecx invoke MessageBox, ecx, szBuff, ecx, ecx invoke ExitProcess, 0 section '.data' data readable writeable szExitProcess db "ExitProcess",0 format_string db "Hash: %08lX",0 szBuff rb 64 section '.idata' import data readable library kernel32,'KERNEL32.DLL',\ user32,'USER32.DLL' include '%fasminc%\APIA\KERNEL32.INC' include '%fasminc%\APIA\USER32.INC'
на что-то очень похоже... crc в свкп ? просто считай хеши всех имён апи из библы и сравнивай с теми которые лежат в IT.
ExitProcess - 11 байт в каждом байте этой строчки (грубо говоря) 6 значащих бит итого 11*6=66 бит результат имеет 8*4=32 бита ~50% информации теряется. так что полностью восстановить имя из хэша нельзя, проще так и делать, как говорит Mario555