joyce8/EMBER2024-capa huggingface dataset:
Function at 0x7a4000
Capabilities:
Get file version info

Disassembly:
push ecx
push ebx
mov ebx, dword [esp + 0xc]
push ebp
push esi
lea eax, [esp + 0xc]
push edi
push eax
push ebx
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov esi, eax
test esi, esi
je 0x7a4131
push esi
call fcn.007a7145
add esp, 4
mov edi, eax
push edi
push esi
push 0
push ebx
call sub.VERSION.dll_GetFileVersionInfoW
push 0
push 0x80
push 3
push 0
push 0
push 0xc0000000
push ebx
call fcn.00796080
mov ebp, eax
add esp, 0x1c
cmp ebp, 0xffffffff
je 0x7a4131
push 0
push ebp
call fcn.007963a0
push 0
push 0
push 0
push 4
push 0
push ebp
mov ebx, eax
call fcn.00796260
add esp, 0x20
mov dword [esp + 0x18], eax
test eax, eax
jne 0x7a408b
push ebp
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
push 0
push 0
push 0
push 6
push eax
call fcn.007962f0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x7a4121
push 0x7bc918
push edi
call fcn.007a53f0
push eax
push ebx
push esi
call fcn.007a3f60
push 0x7bc8f8
push edi
call fcn.007a53f0
push eax
push ebx
push esi
call fcn.007a3f60
push 0x7bc8d8
push edi
call fcn.007a53f0
push eax
push ebx
push esi
call fcn.007a3f60
push 0x7bc8c0
push edi
call fcn.007a53f0
add esp, 0x44
push eax
push ebx
push esi
call fcn.007a3f60
push 0x7bc8a0
push edi
call fcn.007a53f0
push eax
push ebx
push esi
call fcn.007a3f60
push 0x7bc888
push edi
call fcn.007a53f0
push eax
push ebx
push esi
call fcn.007a3f60
add esp, 0x34
push esi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov ecx, dword [esp + 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push ecx
call esi
push ebp
call esi
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
Function at 0x7a51b0
Capabilities:
Acquire debug privileges

Disassembly:
push ecx
lea eax, [esp]
mov dword [esp], 0
push eax
push 0x20
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [esp]
push 1
push str.SeBackupPrivilege
push ecx
call fcn.007a5140
mov edx, dword [esp + 0xc]
push 1
push str.SeDebugPrivilege
push edx
call fcn.007a5140
mov eax, dword [esp + 0x18]
push 1
push str.SeRestorePrivilege
push eax
call fcn.007a5140
mov ecx, dword [esp + 0x24]
push 1
push str.SeSecurityPrivilege
push ecx
call fcn.007a5140
mov edx, dword [esp + 0x30]
add esp, 0x30
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
pop ecx
ret

Function at 0x7a5bfa
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push esi
lea eax, [ebp - 4]
push eax
push 0x20019
xor esi, esi
push esi
push str.CLSIDADB880A6_D8FF_11CF_9377_00AA003B7A11InprocServer32
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x7a5c50
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
mov dword [ebp - 8], 0x104
push esi
push esi
push 0x7b787c
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x7a5c43
inc esi
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, esi
jmp 0x7a5c52
xor eax, eax
pop esi
leave
ret 4
Function at 0x10005ad0
Capabilities:
Enumerate pe sections

Disassembly:
push edi
xor edi, edi
movzx eax, word [ecx + 0x14]
movzx esi, word [ecx + 6]
test esi, esi
lea eax, [eax + ecx + 0x18]
sbb byte [esi + 0x23], dh
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x10005aed
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
cmp dword [esp + 0xc], edx
jb 0x10005afe
add edx, ecx
cmp dword [esp + 0xc], edx
jb 0x10005b08
inc edi
add eax, 0x28
cmp edi, esi
jb 0x10005ae3
xor eax, eax
pop edi
pop esi
ret

Function at 0x10006773
Capabilities:
Contain obfuscated stackstrings

Disassembly:
add byte [eax], al
cmp dword [ebp + 0xc], 1
je 0x10006949
cmp dword [ebp + 0xc], 8
jne 0x10006911
and byte [ebp - 0x6b8], 0
and byte [ebp - 0x6b7], 0
mov byte [ebp - 0x6b6], 0x9b
and byte [ebp - 0x6b5], 0
mov byte [ebp - 0x6b4], 0x33
mov byte [ebp - 0x6b3], 0x16
mov byte [ebp - 0x6b2], 0xd
mov byte [ebp - 0x6b1], 0x10
mov byte [ebp - 0x6b0], 1
mov byte [ebp - 0x6af], 0x34
mov byte [ebp - 0x6ae], 0x16
mov byte [ebp - 0x6ad], 0xb
mov byte [ebp - 0x6ac], 7
mov byte [ebp - 0x6ab], 1
mov byte [ebp - 0x6aa], 0x17
mov byte [ebp - 0x6a9], 0x17
mov byte [ebp - 0x6a8], 0x29
mov byte [ebp - 0x6a7], 1
mov byte [ebp - 0x6a6], 9
mov byte [ebp - 0x6a5], 0xb
mov byte [ebp - 0x6a4], 0x16
mov byte [ebp - 0x6a3], 0x1d
mov byte [ebp - 0x6a2], 0x64
lea eax, [ebp - 0x6b8]
push eax
call fcn.10005a9b
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call sym.VCRUNTIME140.dll___GetPlatformExceptionInfo
add esp, 0xc
mov dword [ebp - 0x690], eax
mov byte [ebp - 0x6a0], 0x8b
or byte [ebp - 0x69f], 0xff
mov byte [ebp - 0x69e], 0x55
mov byte [ebp - 0x69d], 0x8b
mov byte [ebp - 0x69c], 0xec
lea eax, [ebp - 0x694]
push eax
push 5
lea eax, [ebp - 0x6a0]
push eax
push dword [ebp - 0x33c]
push 0xffffffffffffffff
call dword [ebp - 0x690]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x6bc], eax
push 0x1000
push 8
push dword [ebp - 0x674]
call dword [ebp - 0x67c]
mov dword [ebp - 0x698], eax
call fcn.10005a8b
lcall 0x68b5, 0xff36db47
stc
invalid
call fcn.10005a8b
adc eax, 0x804a9d23
movsd dword es:[edi], dword [esi]
mov esp, 0xfffffa
push 0
call dword [ebp - 0x340]
mov dword [ebp + 8], eax
push 0x104
add byte [ebp - 0x3337b], cl
call dword [eax + 0x6a]
add bh, bh
xchg ebp, eax
enter 0xfffffffffffffffa, 0xffffffffffffffff
and byte [ebp - 0x230], 0

Function at 0x10006950
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x22f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
Function at 0x10006960
Capabilities:
Contain obfuscated stackstrings

Disassembly:
and byte [ebp - 0x12c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x12b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x654], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x653]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x504], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x503]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.10005a69
or byte [eax + 0x2ff845c6], ah
Function at 0x100069b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov byte [ebp - 0x24], 0x34
and byte [ebp - 0x36c], 0
and byte [ebp - 0x36b], 0
mov byte [ebp - 0x36a], 0xaa
and byte [ebp - 0x369], 0
mov byte [ebp - 0x368], 0x12
mov byte [ebp - 0x367], 0x30
mov byte [ebp - 0x366], 0x21
mov byte [ebp - 0x365], 6
mov byte [ebp - 0x364], 0x2c
mov byte [ebp - 0x363], 0x26
mov byte [ebp - 0x362], 0x21
mov byte [ebp - 0x361], 0x30
mov byte [ebp - 0x360], 0x38
mov byte [ebp - 0x35f], 0x11
mov byte [ebp - 0x35e], 0x3c
mov byte [ebp - 0x35d], 0x27
mov byte [ebp - 0x35c], 0x30
mov byte [ebp - 0x35b], 0x36
test dword [esp + edi*8 - 0x39cf0001], esp
test dword [ebp + 0x36fffffc], esp
mov byte [ebp - 0x35a], 0x21
mov byte [ebp - 0x359], 0x3a
mov byte [ebp - 0x358], 0x27
mov byte [ebp - 0x357], 0x2c
mov byte [ebp - 0x356], 0x14
mov byte [ebp - 0x355], 0x55
lea eax, [ebp - 0x36c]
push eax
call fcn.10005a9b
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call sym.VCRUNTIME140.dll___GetPlatformExceptionInfo
add esp, 0xc
mov dword [ebp - 0x3d4], eax
call fcn.10005a8b
js 0x10006a78
rol dword [ecx], 0x68
add al, 1
add byte [eax], al
lea eax, [ebp - 0x12c]
push eax
call dword [ebp - 0x3d4]
mov dword [ebp - 0x28], eax
call fcn.10005a8b
dec esi
jbe 0x10006a25
test byte [eax - 0x7fff1f9b], 0x65
loope 0x10006aad
mov byte [ebp - 0x1e], 0x1d
and byte [ebp - 0x1d], 0
mov byte [ebp - 0x1c], 0xa5
mov byte [ebp - 0x1b], 0x87
mov byte [ebp - 0x1a], 0x96
mov byte [ebp - 0x19], 0xb6
mov byte [ebp - 0x18], 0x87
mov byte [ebp - 0x17], 0x8f
mov byte [ebp - 0x16], 0x92
mov byte [ebp - 0x15], 0xb2
mov byte [ebp - 0x14], 0x83
mov byte [ebp - 0x13], 0x96
mov byte [ebp - 0x12], 0x8a
mov byte [ebp - 0x11], 0xa3
mov byte [ebp - 0x10], 0xe2
lea eax, [ebp - 0x20]
push eax
call fcn.10005a9b
call [ecx + 0x50]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call sym.VCRUNTIME140.dll___GetPlatformExceptionInfo
add esp, 0xc
les ecx, [ecx + ecx*4]
test dword [eax - 0x72000004], edx
test dword [ecx + edi*8 + 0x6850ffff], ebp
add al, 1
add byte [eax], al
call dword [ebp - 0x370]
mov dword [ebp - 0x550], eax
mov eax, dword [ebp - 0x28]
movsx eax, byte [ebp + eax - 0x12d]
cmp eax, 0x5c
jne 0x10006b37
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x550]
movsx eax, byte [ebp + eax - 0x655]
cmp eax, 0x5c
jne 0x10006b57
mov eax, dword [ebp - 0x550]
dec eax
mov dword [ebp - 0x550], eax
and dword [ebp - 0x338], 0
and dword [ebp - 0x3d0], 0
jmp 0x10006b74
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0x104
jge 0x10006bdb
mov eax, dword [ebp - 0x3d0]
movsx eax, byte [ebp + eax - 0x334]
and eax, 0x80
test eax, eax
je 0x10006ba6
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
jmp 0x10006bd9
mov eax, dword [ebp - 0x3d0]
invalid
invalid
invalid
invalid

Function at 0x10007610
Capabilities:
Contain obfuscated stackstrings

Disassembly:
add byte [eax], al
add byte [eax - 0x78b5b], al
inc dword [eax]
and byte [ebp - 0x78b], 0
mov byte [ebp - 0x78a], 0xa0
and byte [ebp - 0x789], 0
invalid
Function at 0x10007b20
Capabilities:
Contain obfuscated stackstrings

Disassembly:
inc dword [ebx - 0x37b43]
inc dword [eax]
je 0x10007b2c
jmp fcn.10007b31
jmp fcn.1000742d

Function at 0x10007c35
Capabilities:
Resolve function by parsing pe exports

Disassembly:
dec dword [eax + 0x64dc8491]
mov eax, dword [0x30]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x1c]
lodsd eax, dword [esi]
cmp byte [eax + 0x1c], 0x18
je 0x10007c4f
xchg esi, eax
lodsd eax, dword [esi]
mov eax, dword [eax + 8]
push eax
call fcn.10005a8b
not dh
adc ah, byte [edx - 0x75]
clc
mov eax, dword [edi + 0x3c]
mov edx, dword [edi + eax + 0x78]
add edx, edi
mov ecx, dword [edx + 0x18]
mov ebx, dword [edx + 0x20]
add ebx, edi
call fcn.10005a8b
add esi, dword [ecx + edi - 0x68]
invalid
cwde
Function at 0x410730
Capabilities:
Create thread
Terminate process
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push esi
push edi
push 0x417588
call dword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
push 1
call fcn.0040f7a0
add esp, 4
push 0
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
test eax, eax
je 0x4107c0
push 0
push 1
push 5
call fcn.0040f6e0
add esp, 0xc
test al, al
je 0x4107c0
push 0
push 0
push 6
call fcn.0040f6e0
add esp, 0xc
test al, al
jne 0x4107c0
mov dword [ebp - 4], 2
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll__get_heap_handle]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov esi, eax
test edi, edi
je 0x4107ad
push 4
lea eax, [ebp - 4]
push eax
push 0
push edi
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
test esi, esi
je 0x4107c0
push 4
lea eax, [ebp - 4]
push eax
push 0
push esi
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
lea eax, [ebp - 8]
push eax
push 0
push 0
push 0x40f940
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov esi, eax
push 2
test esi, esi
jne 0x4107e5
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
push 0x40f6c0
push 0x64
push 0
push 0
call dword [sym.imp.USER32.dll_SetTimer]
cmp dword [0x41d4f8], 0x258
mov edi, eax
jae 0x41085c
nop dword [eax]
push 0
push 0
push 0
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x410838
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp dword [0x41d484], 0
je 0x410850
mov dword [0x41d4f8], 0
call fcn.0040cb20
cmp dword [0x41d4f8], 0x258
jb 0x410810
push edi
push 0
call dword [sym.imp.USER32.dll_KillTimer]
call dword [sym.imp.ole32.dll_CoUninitialize]
push 0
push esi
call dword [sym.imp.KERNEL32.dll_TerminateThread]
call fcn.00407fc0
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret

Function at 0x4b7000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x4b700c
pop eax
sub eax, 0x8ca0c
push 0
pop edi
push eax
xor dword [eax + 0x22c], 0x66a7218
xor dword [eax + 0x33c], 0xbc146b8
sub dword [eax + 0x280], 0x70774a66
add dword [eax + 0x3e0], 0x23cb18d4
not dword [eax + 0x80]
not dword [eax + 0x2c]
sub dword [eax + 0xd8], 0x66d31b98
add dword [eax + 0x31c], 0x1b2e1fda
add dword [eax + 0x370], 0x84f3a62
sub dword [eax + 0x15c], 0x26443bd9
not dword [eax + 0x2d8]
not dword [eax + 0x8c]
sub dword [eax + 0x12c], 0x4a6562f2
xor dword [eax + 0xcc], 0x65b77fde
not dword [eax + 0x274]
add dword [eax + 8], 0x6e892495
sub dword [eax + 0x3c0], 0x6f5c45d3
sub dword [eax + 0x1a0], 0x3f521574
add dword [eax + 0x338], 0x252b0ac9
sub dword [eax + 0x380], 0x4108120c
not dword [eax + 0x284]
invalid
invalid
Function at 0x431000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
nop
mov eax, section..reloc
nop
push 4
nop
nop
nop
pop edi
nop
nop
nop
nop
nop
nop
nop
cmp eax, 0
nop
nop
nop
nop
nop
je 0x431072
nop
mov ebx, 0x40915c
mov ecx, ebx
nop
nop
nop
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
push eax
nop
nop
nop
nop
nop
nop
mov eax, ecx
nop
nop
nop
nop
div edi
xchg ecx, eax
nop
nop
nop
nop
nop
nop
nop
pop eax
nop
nop
nop
nop
mov esi, 0x2d1e50f2
xor dword [eax], esi
nop
nop
nop
nop
nop
nop
nop
add eax, edi
nop
nop
nop
nop
loop 0x431060
nop
nop
mov eax, section..reloc_1
cmp eax, 0
nop
nop
nop
nop
nop
je 0x4310d2
nop
nop
nop
mov ebx, 0x42f3f8
nop
mov ecx, ebx
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
xor edx, edx
nop
push eax
nop
nop
nop
nop
nop
nop
mov eax, ecx
nop
nop
nop
nop
nop
div edi
nop
nop
nop
nop
xchg ecx, eax
nop
nop
nop
nop
nop
nop
nop
pop eax
mov esi, 0x40df3bbf
nop
nop
xor dword [eax], esi
nop
nop
nop
nop
nop
add eax, edi
nop
nop
nop
loop 0x4310c0
nop
nop
nop
nop
nop
nop
nop
nop
popal
jmp 0x401219
Function at 0x40b220
Capabilities:
Hash data using sha1

Disassembly:
mov eax, dword [esp + 4]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
mov dword [eax + 0x10], 0xc3d2e1f0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
ret

Function at 0x40c760
Capabilities:
Encode data using xor

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x60]
call fcn.0040c460
test eax, eax
mov ebx, eax
je 0x40c860
mov eax, edi
or eax, esi
je 0x40c841
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.004318f0
test eax, eax
mov dword [esp + 0x2c], eax
je 0x40c89d
mov ebp, dword [esp + 0x2c]
lea eax, [esp + 0x3c]
mov dword [esp + 8], eax
lea eax, [esp + 0x38]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00408d10
mov eax, dword [esp + 0x3c]
xor ecx, ecx
imul eax, dword [0x44d388]
cmp edi, 0
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], edi
mov edx, eax
ja 0x40c7f8
cmp esi, eax
jbe 0x40c800
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x20]
mov dword [esp + 4], ebp
mov dword [esp + 0xc], eax
mov eax, dword [0x44d360]
mov dword [esp + 8], edx
mov dword [esp + 0x28], edx
mov dword [esp], eax
call fcn.0040cdb0
add ebp, dword [esp + 0x28]
sub esi, dword [esp + 0x20]
sbb edi, dword [esp + 0x24]
mov dword [esp], ebx
call fcn.00408d30
mov eax, edi
or eax, esi
jne 0x40c7c0
jmp 0x40c849
mov dword [esp + 0x2c], 0
mov dword [esp], ebx
call fcn.00409360
mov eax, dword [esp + 0x2c]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp + 8], 0x4434a9
mov dword [esp + 4], 0x443410
mov dword [esp + 0xc], eax
mov eax, dword [0x44f3fc]
mov dword [esp + 0x10], edx
add eax, 0x40
mov dword [esp], eax
call fcn.0040c430
mov eax, dword [0x44c528]
test eax, eax
je 0x40c8d1
xor eax, eax
jmp 0x40c855
call dword [0x44f3e8]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.00431960
mov dword [esp + 8], 0x443479
mov dword [esp + 4], 0x4433a8
mov dword [esp + 0xc], eax
mov eax, dword [0x44f3fc]
add eax, 0x40
mov dword [esp], eax
call fcn.0040c430
mov dword [esp + 4], 1
mov dword [esp], 0x44d3c0
call fcn.0042cd35
lea esi, [esi]
lea edi, [edi]
Function at 0x461d50
Capabilities:
Packed with generic packer

Disassembly:
pushal
mov esi, section.UPX1
lea edi, [esi - 0x45000]
push edi
or ebp, 0xffffffff
jmp 0x461d72
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x461d79
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x461d68
mov eax, 1
add ebx, ebx
jne 0x461d8b
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x461d9c
jne 0x461dbb
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x461dbb
dec eax
add ebx, ebx
jne 0x461da8
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x461d80
add ebx, ebx
jne 0x461db7
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x461e0d
xor ecx, ecx
sub eax, 3
jb 0x461dd3
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x461e42
sar eax, 1
mov ebp, eax
jmp 0x461dde
add ebx, ebx
jne 0x461dde
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x461dac
inc ecx
add ebx, ebx
jne 0x461dec
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x461dac
add ebx, ebx
jne 0x461df9
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x461dee
jne 0x461e0a
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x461dee
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x461e2c
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x461e1e
jmp 0x461d6e
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x461e2c
add edi, ecx
jmp 0x461d6e
pop esi
mov edi, esi
mov ecx, 0x31c
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x461e4a
cmp byte [edi], 6
jne 0x461e4a
mov eax, dword [edi]
mov bl, byte [edi + 4]
shr ax, 8
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x461e4f
lea edi, [esi + 0x5f000]
mov eax, dword [edi]
or eax, eax
je 0x461ebe
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0x61000]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0x61028]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x461e7c
mov ecx, edi
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0x6102c]
or eax, eax
je 0x461eb8
mov dword [ebx], eax
add ebx, 4
jmp 0x461e99
call dword [esi + 0x6103c]
mov ebp, dword [esi + 0x61030]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x1ef]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x461ef2
sub esp, 0xffffff80
jmp 0x403260
Function at 0x8516ef
Capabilities:
Decompress data using aplib

Disassembly:
push ebp
mov ebp, esp
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
cld
mov dl, 0x80
movsb byte es:[edi], byte [esi]
call fcn.0085176e
jae 0x8516fb
xor ecx, ecx
call fcn.0085176e
jae 0x851725
xor eax, eax
call fcn.0085176e
jae 0x851736
mov al, 0x10
call fcn.0085176e
adc al, al
jae 0x851717
jne 0x851763
stosb byte es:[edi], al
jmp 0x8516fc
call fcn.0085177a
dec ecx
loop 0x851742
mov eax, ebp
call fcn.00851778
jmp 0x851764
lodsb al, byte [esi]
shr eax, 1
je 0x85178a
adc ecx, 2
mov ebp, eax
jmp 0x851764
xchg ecx, eax
dec eax
shl eax, 8
lodsb al, byte [esi]
mov ebp, eax
call fcn.00851778
cmp eax, 0x7d00
jae 0x851762
cmp eax, 0x500
jae 0x851763
cmp eax, 0x7f
ja 0x851764
inc ecx
inc ecx
push esi
mov esi, edi
sub esi, eax
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x8516fc
pop ebp
ret 8
Function at 0x431005
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
mov eax, section..text
nop
push 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop edi
nop
nop
cmp eax, 0
nop
nop
nop
je 0x431072
nop
nop
mov ebx, 0x40915c
nop
nop
nop
nop
mov ecx, ebx
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
nop
nop
push eax
nop
nop
nop
nop
nop
mov eax, ecx
nop
nop
div edi
nop
nop
nop
nop
nop
nop
xchg ecx, eax
nop
nop
nop
pop eax
nop
nop
nop
nop
mov esi, 0x6f171571
nop
nop
nop
nop
xor dword [eax], esi
nop
nop
nop
add eax, edi
nop
nop
nop
nop
nop
loop 0x431060
nop
mov eax, section..reloc
nop
nop
nop
cmp eax, 0
nop
nop
je 0x4310d2
nop
nop
mov ebx, 0x42f3f8
nop
nop
mov ecx, ebx
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
nop
nop
push eax
nop
nop
nop
nop
nop
nop
mov eax, ecx
nop
nop
div edi
nop
nop
xchg ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
nop
nop
mov esi, 0x5d3a5e16
nop
nop
nop
xor dword [eax], esi
nop
nop
nop
nop
nop
add eax, edi
loop 0x4310c0
nop
nop
nop
nop
nop
nop
nop
nop
popal
nop
jmp 0x401219
Function at 0x4011a7
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
xor eax, eax
push ebx
mov ebx, 0xbb40e64e
cmp dword [0x4010fc], eax
je 0x4011c9
cmp dword [0x4010fc], ebx
jne 0x401262
push esi
push eax
push eax
push 1
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
lea eax, [ebp - 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov esi, dword [ebp - 8]
xor esi, dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
xor esi, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
xor esi, eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor esi, eax
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x14]
xor esi, eax
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4010fc
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [0x4010fc], esi
test esi, esi
jne 0x401238
mov dword [0x4010fc], ebx
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
mov esi, 0x4010fc
push 4
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
push 4
push esi
call fcn.00526000
mov eax, dword [0x4010fc]
not eax
mov dword [0x40300c], eax
pop esi
pop ebx
leave
ret