joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4631c8
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffdfc
push ebx
push esi
test dl, dl
je 0x4631df
add esp, 0xfffffff0
call fcn.00404010
mov byte [ebp - 1], dl
mov ebx, eax
xor edx, edx
mov eax, ebx
call fcn.0041fe98
mov eax, dword [0x485a80]
cmp byte [eax], 0
jne 0x46320c
push 0
call sub.ole32.dll_OleInitialize
test eax, 0x80000000
sete al
mov byte [ebx + 0x17c], al
mov eax, dword [0x485ca0]
cmp word [eax + 2], 0
jne 0x463226
mov eax, dword [0x485ca0]
mov dword [eax + 4], ebx
mov dword [eax], fcn.004650b8
mov eax, dword [0x485d64]
cmp word [eax + 2], 0
jne 0x463240
mov eax, dword [0x485d64]
mov dword [eax + 4], ebx
mov dword [eax], fcn.004652c8
mov byte [ebx + 0x31], 0
mov dl, 1
mov eax, dword [0x4242b8]
call fcn.00425d38
mov esi, eax
mov dword [ebx + 0x38], esi
mov dword [esi + 0xc], ebx
mov dword [esi + 8], 0x46574c
mov dl, 1
mov eax, dword [0x4169dc]
call fcn.00403b4c
mov dword [ebx + 0x8c], eax
mov dl, 1
mov eax, dword [0x4169dc]
call fcn.00403b4c
mov dword [ebx + 0xac], eax
xor eax, eax
mov dword [ebx + 0x5c], eax
xor eax, eax
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x58], 0xff000018
mov dword [ebx + 0x74], 0x1f4
mov byte [ebx + 0x78], 1
xor eax, eax
mov dword [ebx + 0x7c], eax
mov dword [ebx + 0x70], 0x9c4
mov byte [ebx + 0x84], 0
mov byte [ebx + 0xa1], 1
mov byte [ebx + 0xb8], 1
mov dl, 1
mov eax, dword [0x424b10]
call fcn.0042b75c
mov esi, eax
mov dword [ebx + 0x9c], esi
push 0x46341c
mov eax, dword [0x485b9c]
mov eax, dword [eax]
push eax
call sub.user32.dll_LoadIconW
mov edx, eax
mov eax, esi
call fcn.0042bb60
mov eax, dword [ebx + 0x9c]
mov dword [eax + 0x14], ebx
mov dword [eax + 0x10], 0x4659fc
mov dl, 1
mov eax, dword [0x4169dc]
call fcn.00403b4c
mov dword [ebx + 0x94], eax
push pe_nt_image_headers32
lea eax, [ebp - 0x202]
push eax
mov eax, dword [0x485b9c]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetModuleFileNameW_1
lea eax, [ebp - 0x202]
mov dx, 0x5c
call fcn.0040b49c
test eax, eax
je 0x46334e
lea edx, [eax + 2]
lea eax, [ebp - 0x202]
call fcn.0040b29c
lea eax, [ebp - 0x202]
mov dx, 0x2e
call fcn.0040b484
test eax, eax
je 0x463366
mov word [eax], 0
lea eax, [ebp - 0x202]
push eax
call sub.user32.dll_CharNextW_1
push eax
call sub.user32.dll_CharLowerW
lea eax, [ebx + 0x88]
lea edx, [ebp - 0x202]
mov ecx, pe_nt_image_headers32
call fcn.004056fc
push ebx
push 0x464acc
call fcn.00459a20
mov dword [ebx + 0x178], eax
mov byte [ebx + 0xcc], 0
mov eax, dword [0x485a80]
cmp byte [eax], 0
jne 0x4633b7
mov eax, ebx
call fcn.00463590
mov byte [ebx + 0x55], 1
mov byte [ebx + 0x56], 1
mov byte [ebx + 0x57], 1
mov byte [ebx + 0xa2], 1
mov byte [ebx + 0xcd], 0
mov byte [ebx + 0xd8], 0
xor eax, eax
mov dword [ebx + 0xd0], eax
mov byte [ebx + 0xcf], 0
xor eax, eax
mov dword [ebx + 0xa4], eax
mov eax, ebx
call fcn.00465c24
mov eax, ebx
call fcn.004667e8
mov eax, ebx
cmp byte [ebp - 1], 0
je 0x463414
call fcn.00404068
pop dword fs:[0]
add esp, 0xc
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x463838
Capabilities:
Enumerate gui resources

Disassembly:
push ebx
push esi
add esp, 0xfffffff8
mov ebx, eax
mov eax, dword [ebx + 0x170]
test eax, eax
je 0x4638da
cmp dword [ebx + 0x90], 0
jne 0x4638d4
mov dword [esp], eax
mov byte [esp + 4], dl
mov eax, esp
push eax
push 0x4637b0
call sub.user32.dll_EnumWindows
mov eax, dword [ebx + 0x8c]
cmp dword [eax + 8], 0
je 0x4638d4
push 3
mov eax, dword [esp + 4]
push eax
call sub.user32.dll_GetWindow
mov esi, eax
mov dword [esp], esi
push 0xffffffffffffffec
push esi
call sub.user32.dll_GetWindowLongW
test al, 8
je 0x46389a
mov dword [esp], 0xfffffffe
mov eax, dword [ebx + 0x8c]
mov esi, dword [eax + 8]
dec esi
cmp esi, 0
jl 0x4638d4
push 0x213
push 0
push 0
push 0
push 0
mov eax, dword [esp + 0x14]
push eax
mov edx, esi
mov eax, dword [ebx + 0x8c]
call fcn.00418ffc
push eax
call sub.user32.dll_SetWindowPos
dec esi
cmp esi, 0xffffffff
jne 0x4638a9
inc dword [ebx + 0x90]
pop ecx
pop edx
pop esi
pop ebx
ret

Function at 0x463af8
Capabilities:
Enumerate gui resources
Hide graphical window

Disassembly:
push ebx
push esi
push edi
mov ebx, edx
mov esi, eax
mov eax, dword [0x48b17c]
cmp dword [eax + 0x170], 0
je 0x463c5d
test bl, bl
jne 0x463bab
cmp dword [esi + 0x98], 0
jne 0x463ba0
mov eax, esi
call fcn.00466638
push eax
push 0x463a04
call sub.user32.dll_EnumWindows
cmp dword [esi + 0x40], 0
je 0x463b71
mov eax, dword [0x48b17c]
cmp byte [eax + 0xcf], 0
je 0x463b71
mov eax, dword [esi + 0xd4]
call fcn.00406398
mov edi, eax
cmp edi, 0
jl 0x463b71
push 0
mov eax, dword [esi + 0xd4]
mov eax, dword [eax + edi*4]
push eax
call sub.user32.dll_ShowWindow
dec edi
cmp edi, 0xffffffff
jne 0x463b5a
mov eax, dword [esi + 0x94]
mov edi, dword [eax + 8]
dec edi
cmp edi, 0
jl 0x463ba0
cmp bl, 1
cmc
sbb eax, eax
push eax
mov edx, edi
mov eax, dword [esi + 0x94]
call fcn.00418ffc
push eax
call sub.user32.dll_ShowOwnedPopups
dec edi
cmp edi, 0xffffffff
jne 0x463b80
inc dword [esi + 0x98]
jmp 0x463c5d
cmp dword [esi + 0x98], 0
jle 0x463c5d
dec dword [esi + 0x98]
cmp dword [esi + 0x98], 0
jne 0x463c5d
cmp dword [esi + 0x40], 0
je 0x463c08
mov eax, dword [0x48b17c]
cmp byte [eax + 0xcf], 0
je 0x463c08
mov eax, dword [esi + 0xd4]
call fcn.00406398
mov edi, eax
cmp edi, 0
jl 0x463c08
push 5
mov eax, dword [esi + 0xd4]
mov eax, dword [eax + edi*4]
push eax
call sub.user32.dll_ShowWindow
dec edi
cmp edi, 0xffffffff
jne 0x463bf1
mov eax, dword [esi + 0x94]
mov edi, dword [eax + 8]
dec edi
cmp edi, 0
jl 0x463c37
cmp bl, 1
cmc
sbb eax, eax
push eax
mov edx, edi
mov eax, dword [esi + 0x94]
call fcn.00418ffc
push eax
call sub.user32.dll_ShowOwnedPopups
dec edi
cmp edi, 0xffffffff
jne 0x463c17
mov eax, dword [esi + 0x94]
mov edx, dword [eax]
call dword [edx + 8]
push 0
lea eax, [esi + 0xd4]
mov ecx, 1
mov edx, dword [0x45942c]
call fcn.00406558
add esp, 4
pop edi
pop esi
pop ebx
ret
Function at 0x464818
Capabilities:
Get graphical window text

Disassembly:
push ebx
push esi
add esp, 0xfffffdfc
mov esi, edx
mov ebx, eax
cmp byte [ebx + 0xa8], 0
je 0x464883
cmp byte [ebx + 0xcf], 0
jne 0x464883
push pe_nt_image_headers32
lea eax, [esp + 4]
push eax
mov eax, dword [ebx + 0x170]
push eax
call sub.user32.dll_GetWindowTextW
mov ecx, eax
mov edx, esp
mov eax, esi
call fcn.00405680
mov eax, dword [esi]
mov dword [esp + 0x200], eax
mov eax, dword [esp + 0x200]
test eax, eax
je 0x464870
sub eax, 4
mov eax, dword [eax]
test eax, eax
jne 0x464890
mov eax, esi
mov edx, dword [ebx + 0x88]
call fcn.00405544
jmp 0x464890
mov eax, esi
mov edx, dword [ebx + 0x88]
call fcn.00405544
add esp, 0x204
pop esi
pop ebx
ret

Function at 0x465df8
Capabilities:
Hide graphical window

Disassembly:
push ebx
push esi
mov ebx, eax
mov esi, dword [ebx + 0x80]
test esi, esi
je 0x465e66
mov eax, esi
call fcn.0044caac
test al, al
je 0x465e66
mov eax, dword [ebx + 0x80]
call fcn.0044c700
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x465e66
mov eax, dword [ebx + 0x80]
mov edx, dword [eax]
call dword [edx + 0xec]
test al, al
je 0x465e5a
push 0
mov eax, dword [ebx + 0x80]
call fcn.0044c700
push eax
call sub.user32.dll_ShowWindow
xor edx, edx
mov eax, dword [ebx + 0x80]
call fcn.00443da8
jmp 0x465e66
mov cl, 1
mov edx, dword [ebx + 0x70]
mov eax, ebx
call fcn.00465c44
pop esi
pop ebx
ret
Function at 0x4086b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x130
mov eax, dword [0x5d544c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [0x5de9d4]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
push 0xfe
lea edx, [ebp - 0x127]
push 0
push edx
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x130], ecx
mov byte [ebp - 0x128], 0
call fcn.0054c4c0
add esp, 0xc
lea eax, [ebp - 0x28]
push eax
push 0x5ab080
mov dword [ebp - 0x28], 0x53746547
mov dword [ebp - 0x24], 0x65747379
mov dword [ebp - 0x20], 0x7269446d
mov dword [ebp - 0x1c], 0x6f746365
mov dword [ebp - 0x18], 0x417972
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0xff
lea ecx, [ebp - 0x128]
push ecx
call eax
mov edi, ebx
lea esi, [ebp - 0x128]
mov byte [ebp - 0x125], 0
call fcn.00408440
test eax, eax
je 0x4087e9
lea edx, [ebp - 0x14]
push edx
push 0x5ab080
mov dword [ebp - 0x14], 0x74726956
mov dword [ebp - 0x10], 0x416c6175
mov dword [ebp - 0xc], 0x636f6c6c
mov word [ebp - 8], 0x7845
mov byte [ebp - 6], 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, dword [ebp - 0x12c]
mov ecx, dword [ebx]
push 0x40
push 0x3000
push edi
push 0
push ecx
call eax
mov dword [ebp - 0x12c], eax
test eax, eax
je 0x4087e9
mov edx, dword [ebp - 0x130]
mov esi, dword [ebx]
push edx
call fcn.004084d0
add esp, 4
test eax, eax
je 0x4087e9
mov eax, dword [ebp - 0x12c]
push eax
mov esi, ebx
call fcn.00408560
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054aaae
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.0054aaae
mov esp, ebp
pop ebp
ret

Function at 0x408db0
Capabilities:
Query or enumerate registry value

Disassembly:
cmp byte [0x5dfdbc], 0
jne 0x408e88
push str.0:db0:lk0:hs0:ld0:ll0:hb0:pj7_.5_.4202:zb0.1:bb
mov byte [0x5dfdbc], 1
call fcn.0054ba08
push 0x12a0
push 0
push 0x5de9d8
call fcn.0054c4c0
push 0
push 0x5de9f6
push 0x5ab1d8
call fcn.00408b90
push 0
push 0x5debf4
push 0x5ab1e0
call fcn.00408b90
push 0x5dec30
push 0
push 0x5ab1e8
call fcn.00408b90
push 0
push 0x5dec34
push 0x5ab1f0
call fcn.00408b90
add esp, 0x40
push 0
push 0x5dee32
push 0x5ab1f8
call fcn.00408b90
push 0x5dee70
push 0
push 0x5ab200
call fcn.00408b90
push 0
push 0x5dee74
push 0x5ab208
call fcn.00408b90
push 0
push 0x5df072
push 0x5ab210
call fcn.00408b90
push 0x5df0b0
push 0
push 0x5ab218
call fcn.00408b90
add esp, 0x3c
mov eax, 0x5de9d8
jmp fcn.00408c70
ret
Function at 0x49da72
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ebx
xor ebx, ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 4], ebx
cmp dword [ebp + 0xc], ebx
je 0x49daba
call fcn.00438b3b
mov esi, dword [eax + 0xc]
push 0xf0
push dword [ebp + 0xc]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x49daba
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 4], eax
test eax, eax
je 0x49dafd
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov ebx, eax
mov esi, dword [ebp + 8]
mov dword [ebp + 0xc], 1
test ebx, ebx
je 0x49dae6
push dword [ebp + 0x10]
mov eax, dword [edi]
push ebx
push esi
mov ecx, edi
call dword [eax + 0x20]
cmp dword [ebp - 4], 0
mov dword [ebp + 0xc], eax
je 0x49dae6
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FreeResource]
cmp dword [esi + 0x68], 0
je 0x49dafa
mov ecx, dword [esi + 0x68]
push dword [ebp + 0x10]
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov eax, dword [ebp + 0xc]
pop edi
pop esi
pop ebx
leave
ret 0xc

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

Disassembly:
mov edi, edi
push esi
mov esi, ecx
call fcn.00419a95
call fcn.00407320
cmp eax, esi
pop esi
jne 0x4a06c4
mov ecx, 0x5da080
jmp fcn.004519e6
ret

Function at 0x4a1269
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
xor ebx, ebx
call fcn.00438b3b
mov esi, dword [eax + 0xc]
push 5
push dword [ebp + 8]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov edi, eax
test edi, edi
je 0x4a12a2
push edi
call dword [sym.imp.KERNEL32.dll_LockResource]
mov ebx, eax
mov ecx, dword [ebp - 4]
push esi
push dword [ebp + 0xc]
push ebx
call fcn.004a0ea6
push edi
mov esi, eax
call dword [sym.imp.KERNEL32.dll_FreeResource]
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 8

Function at 0x4a1300
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [edi + 0x78], ebx
test ebx, 0xffff0000
jne 0x4a1324
cmp dword [edi + 0x74], 0
jne 0x4a1324
movzx eax, bx
mov dword [edi + 0x74], eax
call fcn.00438b3b
mov esi, dword [eax + 0xc]
push 5
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
push esi
push dword [ebp + 0xc]
mov ebx, eax
push ebx
mov ecx, edi
call fcn.004a12c1
push ebx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_FreeResource]
pop edi
mov eax, esi
pop esi
pop ebx
pop ebp
ret 8
Function at 0x4faef3
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [ebp + 8]
test byte [esi + 4], 1
push edi
mov ebx, ecx
je 0x4faf0b
mov edi, dword [esi + 0xc]
jmp 0x4faf4b
push 5
push dword [esi + 0xc]
push dword [esi + 8]
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov edi, eax
test edi, edi
jne 0x4faf24
call fcn.00445173
push edi
push dword [esi + 8]
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov edi, eax
test edi, edi
jne 0x4faf39
call fcn.00445173
push edi
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
test edi, edi
jne 0x4faf4b
call fcn.00445173
call fcn.00438b3b
cmp dword [eax + 0x3c], 0
je 0x4faf60
push edi
mov ecx, ebx
call fcn.004f9d22
mov edi, eax
push dword [ebp + 0xc]
push edi
call fcn.004fae0d
mov dword [ebp + 8], eax
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x4faf7e
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
and dword [ebx + 0x7c], 0
mov eax, dword [ebp + 8]
test eax, eax
je 0x4faf8a
mov edi, eax
mov dword [ebx + 0x7c], eax
or dword [esi + 4], 1
mov dword [esi + 0xc], edi
pop edi
pop esi
pop ebx
pop ebp
ret 8

Function at 0x51748f
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 8]
push edi
push dword [ebp + 0xc]
mov ecx, esi
call fcn.00517133
cmp dword [esi], 0
mov edi, eax
mov dword [esi + 0xc], 1
je 0x5174d9
push edi
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
lea ecx, [eax + 1]
push ecx
mov ecx, dword [ebp + 0x10]
push eax
call fcn.004196a5
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov ecx, dword [ebp + 0x10]
push 0xffffffffffffffff
call fcn.00413fd7
jmp 0x5174e4
mov eax, dword [ebp + 0x10]
push dword [eax]
push edi
call fcn.004adc86
pop edi
pop esi
pop ebp
ret 0xc

Function at 0x5174ea
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 4]
lea eax, [ebp + 8]
push eax
push dword [ebp + 0xc]
call fcn.0041d028
push 0xfffffffffffffff0
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowLongW]
push dword [ebp + 0xc]
and eax, 3
mov ecx, esi
cmp al, 3
je 0x517527
call fcn.00517133
mov dword [esi + 0xc], 1
jmp 0x51752c
call fcn.00517133
cmp dword [esi], 0
je 0x517575
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
test eax, eax
jle 0x51754d
lea ecx, [eax + 1]
push ecx
mov ecx, dword [ebp + 0x10]
push eax
call fcn.004196a5
jmp 0x51755f
mov ecx, dword [ebp + 0x10]
push 0xff
call fcn.004070d0
push 0x100
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov ecx, dword [ebp + 0x10]
push 0xffffffffffffffff
call fcn.00413fd7
jmp 0x517599
mov esi, dword [ebp + 0x10]
push dword [esi]
push 0xffffffffffffffff
push 0x14d
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
jne 0x517599
push dword [esi]
push dword [ebp + 8]
call fcn.004adc86
pop esi
pop ebp
ret 0xc

Function at 0x54aaae
Capabilities:
Terminate process

Disassembly:
cmp ecx, dword [0x5d544c]
jne 0x54aab8
repz ret
jmp fcn.00551074
Function at 0x55d1d4
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x24
mov eax, dword [0x5d544c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0xc]
push esi
push edi
mov dword [ebp - 0x1c], eax
call fcn.00553759
and dword [ebp - 0x14], 0
cmp dword [0x5ddaac], 0
mov dword [ebp - 0x18], eax
jne 0x55d287
push str.USER32.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ebx, eax
test ebx, ebx
je 0x55d32f
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x5a81fc
push ebx
call edi
test eax, eax
je 0x55d32f
mov esi, dword [sym.imp.KERNEL32.dll_EncodePointer]
push eax
call esi
push 0x5a81ec
push ebx
mov dword [0x5ddaac], eax
call edi
push eax
call esi
push 0x5a81d8
push ebx
mov dword [0x5ddab0], eax
call edi
push eax
call esi
push str.GetUserObjectInformationW
push ebx
mov dword [0x5ddab4], eax
call edi
push eax
call esi
mov dword [0x5ddabc], eax
test eax, eax
je 0x55d287
push str.GetProcessWindowStation
push ebx
call edi
push eax
call esi
mov dword [0x5ddab8], eax
mov eax, dword [0x5ddab8]
mov ecx, dword [ebp - 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_DecodePointer]
cmp eax, ecx
je 0x55d2e0
cmp dword [0x5ddabc], ecx
je 0x55d2e0
push eax
call esi
push dword [0x5ddabc]
mov edi, eax
call esi
mov ebx, eax
test edi, edi
je 0x55d2e0
test ebx, ebx
je 0x55d2e0
call edi
test eax, eax
je 0x55d2d7
lea ecx, [ebp - 0x24]
push ecx
push 0xc
lea ecx, [ebp - 0x10]
push ecx
push 1
push eax
call ebx
test eax, eax
je 0x55d2d7
test byte [ebp - 8], 1
jne 0x55d2e0
or dword [ebp + 0x10], 0x200000
jmp 0x55d313
mov eax, dword [0x5ddab0]
cmp eax, dword [ebp - 0x18]
je 0x55d313
push eax
call esi
test eax, eax
je 0x55d313
call eax
mov dword [ebp - 0x14], eax
test eax, eax
je 0x55d313
mov eax, dword [0x5ddab4]
cmp eax, dword [ebp - 0x18]
je 0x55d313
push eax
call esi
test eax, eax
je 0x55d313
push dword [ebp - 0x14]
call eax
mov dword [ebp - 0x14], eax
push dword [0x5ddaac]
call esi
test eax, eax
je 0x55d32f
push dword [ebp + 0x10]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebp - 0x14]
call eax
jmp 0x55d331
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0054aaae
leave
ret
Function at 0x404256
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
xor eax, eax
mov byte [ebp - 0x1c], 0x49
cmp byte [ebp + 0xc], al
mov dword [ebp - 4], eax
mov byte [ebp - 0x1b], 0x6e
mov byte [ebp - 0x1a], 0x73
mov byte [ebp - 0x19], 0x74
mov byte [ebp - 0x18], 0x61
mov byte [ebp - 0x17], 0x6c
mov byte [ebp - 0x16], 0x6c
mov byte [ebp - 0x15], 0x53
mov byte [ebp - 0x14], 0x68
mov byte [ebp - 0x13], 0x69
mov byte [ebp - 0x12], 0x65
mov byte [ebp - 0x11], 0x6c
mov byte [ebp - 0x10], 0x64
mov byte [ebp - 0xf], al
je 0x4042bc
mov byte [ebp - 0xf], 0x20
mov byte [ebp - 0xe], 0x57
mov byte [ebp - 0xd], 0x69
mov byte [ebp - 0xc], 0x7a
mov byte [ebp - 0xb], 0x61
mov byte [ebp - 0xa], 0x72
mov byte [ebp - 9], 0x64
mov byte [ebp - 8], al
mov ecx, dword [ebp + 8]
lea eax, [ebp + 0xf]
push 1
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00401721
mov eax, dword [ebp + 8]
leave
ret 8
Function at 0x432638
Capabilities:
Encode data using xor

Disassembly:
fmul st(1)
cmpsd dword [esi], dword es:[edi]
push ebp
mov esp, 0xdf6716fa
jno 0x43268e
xor byte [eax + 0x11dd3304], ah
sbb esp, esi
cmc
call [ebp - 0x72]
stosd dword es:[edi], eax
scasb al, byte es:[edi]
adc bl, ah
jno 0x4326a2
fisubr word [edi - 0x62432137]
fimul word [ecx - 0x49]
jg 0x432691
xor al, 0xdc
mov ecx, 0xdcfdf2d5
and dh, byte [edx + 0x5c509317]
pop ebx
fstp st(7)
jg 0x432699
mov byte [0xc7bcabd1], al
jnp 0x432627
mov eax, 0x29269043
outsd dx, dword [esi]
lahf
fsetpm
sti
xchg esp, eax
dec ebp
cmpsd dword [esi], dword es:[edi]
cld
aad 0xbe
cmp ecx, dword [edi + ebx]
aas
ret 0xaf08
lea ebp, [edi]
ljmp 0x4404
nop
push ebx
mov esp, 0xb7440477
outsb dx, byte [esi]
mov ebx, 0x7d572298
out dx, eax
ja 0x432717
invalid
xor edi, dword [ebx - 0x27]
pop esi
out dx, al
aad 0x6e
mov eax, 0x6f11dc8b
ja 0x4326a2
inc ecx
sbb byte [ebx + 0x67e6e5bd], cl
lodsd eax, dword [esi]
inc ebp
imul edi, dword [edx + 0x65], 0x97d3dfbb
out 0xfe, eax
or dword [0x4e507fef], 0xefddbd5b
pop eax
adc byte [eax], al
sar dword [edi + 0x7c58ccf3], cl
mov edi, 0x7c58ccf3
adc dword [esi - 0x3b466811], edx
push 0xffffffffffffffad
stosd dword es:[edi], eax
jg 0x4326d0
push ecx
mov ebx, 0xf26627ce
cmc
jl 0x432698
call 0x6642547c
stc
mov esp, 0xf15f5111
mov ebp, 0xc1c5efee
insd dword es:[edi], dx
ja 0x432778
out dx, eax
mov edx, eax
cmp eax, esp
xchg edx, eax
add eax, 0xf870a99c
sub al, dh
sub bh, bh
jnp 0x43278b
sbb al, 0x85
add dword [esi], edi
invalid
add al, 0x38
pop ecx
inc esp
xor dword [esi + 0x69c66022], 0xd54b375e
imul esi, ebp, 0xfffffff1
sal ebx, 0xe7
insb byte es:[edi], dx
inc ebx
mov dword [0xd7cbdbd], eax
cmp byte [ebx], cl
pushal
xor al, 6
inc edi
cmpsb byte [esi], byte es:[edi]
push esp
outsb dx, byte [esi]
sbb al, 0xb6
shl dword [ecx + ebp*4], cl
iretd
inc eax
rcr byte [esi], 1
cwde
xlatb
push eax
test dword gs:[ecx - 0x43], 0x98ff50f6
dec ebp
jmp 0x432799
dec edx
imul ebx, dword [ebx + 0xa8fd53b], 0x41
or dword [eax + edi*4 + 0x7c], eax
in eax, 0xb2
clc
cmp byte [esi + 8], 0x44
fist word [edi]
fstp xword [eax + 0x17]
daa
push ss
and eax, edi
pop ebp
jmp 0x4327c7
invalid
Function at 0x437834
Capabilities:
Encode data using xor

Disassembly:
xchg edi, eax
and eax, 0xa0888b18
pop esi
dec ecx
arpl word [eax + 0x78], sp
push esp
mov eax, 0xb8c1e143
dec ebx
dec ebp
out 0x77, al
adc byte [eax], ch
leave
dec eax
xchg edx, eax
or edx, dword [ecx + edx*8]
push esp
pop ecx
mov bh, 0xba
mov byte [0xf53cfaff], al
hlt
aad 0xed
jo 0x43773e
das
adc cl, byte [ebp + 0x2ee2820b]
jnp 0x43770b
push ebp
xlatb
xchg byte [edi - 0x63504458], ah
out 0xbc, eax
mov eax, 0xe03b4b4d
in al, 0xc
int 0x61
and eax, 0xa0035327
and byte [ecx + 0x11], al
jae 0x4376d5
push ebx
cmp ah, byte [ebp + 0x17]
adc al, 0xaa
sbb cl, byte [ebx - 0x77]
xlatb
cmp ch, 0xaa
das
sub al, 0x4a
push ss
cmp edi, edi
pop edi
inc esi
mov ebx, 0xec269988
rcl dword [esi + esi*2 - 0x5050c422], cl
sbb ecx, ebp
pop ecx
adc dh, byte [ebx - 0x76a12591]
ficomp word [ebx - 0x5377f85b]
jno 0x4377d6
pushfd
jb 0x43770e
invalid
xor eax, 0xef4c55b
push es
xlatb
and ebp, 0
mov dword ss:[ecx], eax
invalid
add cl, cl
inc ecx
wait
pushal
pop edi
cli
shl dword [edi], 0xac
cmpsb byte [esi], byte es:[edi]
pop eax
clc
pop edx
xchg dword [ecx], esi
pop ss
call 0x11a2bc0c
shr dword [esi + 0x66b45bf8], 1
dec eax
mov dl, 0xf0
xchg ebp, eax
test dl, 0x7d
jle 0x43777b
jg 0x43783f
pop esi
xchg byte [esi + edi*4 + 0x30ebf98b], bh
xor byte [edx - 0x1b], cl
retf
dec edx
in eax, 0xcb
stc
insd dword es:[edi], dx
bound esi, qword [eax - 0x36645f71]
loopne 0x437767
inc ebx
jbe 0x4377d5
dec edi
adc byte [ebx + 0x6259ef19], dh
movsb byte es:[edi], byte [esi]
popfd
ja 0x4377a6
retf
das
jno 0x437842
pop esi
sti
cmpsd dword [esi], dword es:[edi]
lahf
lds esp, [ebp - 0x6c]
invalid
push 0x71
pop eax
xor eax, 0x8b4d66a
test dword [edi], ebx
jmp 0x4377cf