joyce8/EMBER2024-capa huggingface dataset:
Function at 0x404d30
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 0x10]
xor ecx, ecx
test esi, esi
je 0x404d5b
mov edx, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x404d44
pop edi
mov eax, edx
pop esi
pop ebp
ret
mov eax, dword [ebp + 8]
pop esi
pop ebp
ret
Function at 0x40a6d0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 0xc]
mov edx, 0x811c9dc5
push edi
mov edi, dword [ebp + 8]
mov ecx, 0
sub esi, edi
je 0x40a701
nop dword [eax]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x40a6f0
pop edi
mov eax, edx
pop esi
pop ebp
ret 8
Function at 0x40c840
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, ecx
xor cl, cl
push edi
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x40ca5d
cmp eax, 0x7c
je 0x40ca5d
cmp eax, 0x29
jne 0x40c87c
cmp dword [esi + 0x10], 0
jne 0x40ca5d
test dword [esi + 0x50], 0x10000000
je 0x40ca74
cmp eax, 0x2e
jne 0x40c890
push 5
lea ecx, [esi + 0x24]
call fcn.0040cad0
jmp 0x40ca41
cmp eax, 0x5c
jne 0x40c8f5
mov ecx, esi
call fcn.0040c7e0
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x40c8c2
cmp byte [esi + 0x48], 0x62
jne 0x40c8c2
push 4
lea ecx, [esi + 0x24]
call fcn.0040cad0
mov ecx, esi
call fcn.0040c7e0
jmp 0x40ca4f
test eax, eax
je 0x40c8e9
cmp byte [esi + 0x48], 0x42
jne 0x40c8e9
push 4
lea ecx, [esi + 0x24]
call fcn.0040cad0
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.0040c7e0
jmp 0x40ca4f
mov ecx, esi
call fcn.0040db90
jmp 0x40ca48
cmp eax, 0x5b
jne 0x40c9a8
mov ecx, esi
call fcn.0040c7e0
lea ecx, [esi + 0x24]
call fcn.0040ef90
mov eax, dword [esi + 0x4c]
cmp eax, 0x5e
jne 0x40c926
mov eax, dword [esi + 0x28]
mov ecx, esi
xor dword [eax + 8], 1
call fcn.0040c7e0
mov eax, dword [esi + 0x4c]
test dword [esi + 0x50], 0x20000000
je 0x40c992
cmp eax, 0x5d
jne 0x40c992
test dword [esi + 0x2c], 0x100
mov bl, al
je 0x40c950
mov eax, dword [esi + 0x30]
push 0x5d
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
mov bl, al
mov edi, dword [esi + 0x28]
mov ecx, dword [edi + 0x18]
test ecx, ecx
jne 0x40c976
push 0x20
call fcn.004e2005
xorps xmm0, xmm0
mov dword [ebp - 4], eax
add esp, 4
mov ecx, eax
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
mov dword [edi + 0x18], eax
movzx edx, bl
mov eax, edx
and edx, 7
shr eax, 3
add ecx, eax
movzx eax, byte [ecx]
bts eax, edx
mov byte [ecx], al
mov ecx, esi
call fcn.0040c7e0
mov ecx, esi
call fcn.0040eac0
cmp dword [esi + 0x4c], 0x5d
jne 0x40ca6d
jmp 0x40ca41
cmp eax, 0x28
jne 0x40c9d4
mov ecx, esi
call fcn.0040c7e0
mov ecx, esi
call fcn.0040dd30
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x40ca74
mov ecx, esi
call fcn.0040c7e0
test bl, bl
je 0x40ca4f
jmp 0x40ca48
cmp eax, 0x5e
jne 0x40c9ec
push 2
lea ecx, [esi + 0x24]
call fcn.0040cad0
mov ecx, esi
call fcn.0040c7e0
jmp 0x40ca4f
cmp eax, 0x24
jne 0x40ca04
push 3
lea ecx, [esi + 0x24]
call fcn.0040cad0
mov ecx, esi
call fcn.0040c7e0
jmp 0x40ca4f
cmp eax, 0x2a
je 0x40ca66
cmp eax, 0x2b
je 0x40ca66
cmp eax, 0x3f
je 0x40ca66
cmp eax, 0x7b
je 0x40ca66
cmp eax, 0x7d
jne 0x40ca26
test dword [esi + 0x50], 0x10000000
je 0x40ca7b
cmp eax, 0x5d
jne 0x40ca34
test dword [esi + 0x50], 0x10000000
je 0x40ca6d
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0040dfa0
mov ecx, esi
call fcn.0040c7e0
mov ecx, esi
call fcn.0040de40
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x40c857
pop edi
pop esi
mov al, cl
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa
call fcn.0040b6e0
push 4
call fcn.0040b6e0
push 5
call fcn.0040b6e0
push 6
call fcn.0040b6e0
int3
Function at 0x41f800
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x58a088]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 8]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 0x10]
push eax
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], 0
push eax
push 0
push 0x20006
push 0
push 0
push 0
mov dword [ebp - 8], 0
call fcn.00403390
push eax
push 0x80000000
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x41f88a
mov ecx, esi
call fcn.00402ab0
mov ecx, esi
mov eax, dword [eax + 0x10]
add eax, eax
push eax
call fcn.00403390
push eax
push 2
push 0
mov ecx, edi
call fcn.00403390
push eax
push dword [ebp - 0xc]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0xc]
test eax, eax
je 0x41f89e
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
xor al, al
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 4]
mov al, 1
pop edi
xor ecx, ebp
pop esi
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret 0x10

Function at 0x422f70
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80c
mov eax, dword [0x58a088]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
call fcn.004b0500
test al, al
jne 0x423000
push 0x800
lea eax, [ebp - 0x808]
push 0
push eax
call fcn.004e48c0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
mov ecx, esi
call fcn.00403390
push eax
lea eax, [ebp - 0x808]
push str._s.bak_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x808]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0x808]
mov ecx, esi
push eax
call fcn.00403390
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x423011
push 4
push 0
lea eax, [ebp - 0x808]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov al, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xor al, al
xor ecx, ebp
pop esi
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret
Function at 0x428510
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52ab68
mov eax, dword fs:[0]
push eax
mov eax, 0x1064
call fcn.004e30b0
mov eax, dword [0x58a088]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
push str.0.0.0.0
call fcn.00402d30
add esp, 4
mov ecx, esi
push eax
push str.0.0.0.0
call fcn.00402b20
push 0x5582bc
lea ecx, [ebp - 0x1028]
call fcn.00402a40
mov dword [ebp - 4], 0
lea edx, [ebp - 0x1028]
mov ecx, 0x1a
call fcn.0048f420
test al, al
je 0x428785
push str.SoftMgr_2345
lea ecx, [ebp - 0x1058]
call fcn.00402a40
mov byte [ebp - 4], 1
lea eax, [ebp - 0x1058]
push eax
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1070]
push eax
call fcn.0048f1b0
add esp, 0xc
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1028]
push eax
call fcn.004044e0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1070]
call fcn.00402a30
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1058]
call fcn.00402a30
push str.Application
lea ecx, [ebp - 0x1058]
call fcn.00402a40
mov byte [ebp - 4], 3
lea eax, [ebp - 0x1058]
push eax
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1070]
push eax
call fcn.0048f1b0
add esp, 0xc
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1028]
push eax
call fcn.004044e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1070]
call fcn.00402a30
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1058]
call fcn.00402a30
lea eax, [ebp - 0x1028]
push eax
call fcn.0048dd20
add esp, 4
test al, al
je 0x428785
push str.config.ini
lea ecx, [ebp - 0x1058]
call fcn.00402a40
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1058]
push eax
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.0048f1b0
add esp, 0xc
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1058]
call fcn.00402a30
push 0x1000
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.004e48c0
add esp, 0xc
lea ecx, [ebp - 0x1040]
call fcn.00403390
push eax
push 0x800
lea eax, [ebp - 0x1010]
push eax
push 0x5582bc
push 0x55bda4
push str.Install
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x428773
xor eax, eax
cmp word [ebp - 0x1010], ax
je 0x428773
nop dword [eax]
inc eax
cmp word [ebp + eax*2 - 0x1010], 0
jne 0x428700
test eax, eax
je 0x428773
lea eax, [ebp - 0x1010]
push eax
call fcn.00402d30
add esp, 4
mov ecx, esi
push eax
lea eax, [ebp - 0x1010]
push eax
call fcn.00402b20
push esi
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1070]
push eax
call fcn.0048f1b0
add esp, 0xc
mov byte [ebp - 4], 8
mov ecx, edi
push eax
call fcn.004044e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1070]
call fcn.00402a30
mov bl, 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1040]
call fcn.00402a30
jmp 0x428787
xor bl, bl
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x1040]
call fcn.00402a30
jmp 0x428787
xor bl, bl
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1028]
call fcn.00402a30
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret 8
Function at 0x4287c0
Capabilities:
Check os version
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52abbd
mov eax, dword fs:[0]
push eax
mov eax, 0x1138
call fcn.004e30b0
mov eax, dword [0x58a088]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
mov esi, dword [ebp + 8]
mov ecx, esi
mov dword [ebp - 0x1144], esi
mov dword [ebp - 0x1140], 0
call fcn.00402a90
mov dword [ebp - 4], 0
push 1
mov dword [ebp - 0x1140], 1
mov dword [ebp - 0x1018], 0
call fcn.004e2005
add esp, 4
mov dword [ebp - 0x1018], eax
mov byte [eax], 0
lea eax, [ebp - 0x1138]
push 0x118
push 0
push eax
call fcn.004e48c0
add esp, 0xc
mov dword [ebp - 0x113c], 0x11c
lea eax, [ebp - 0x113c]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x428882
cmp dword [ebp - 0x1138], 6
mov eax, dword [ebp - 0x1018]
setae cl
mov byte [eax], cl
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x1018]
call fcn.004a3770
push 0x1000
lea eax, [ebp - 0x1014]
push 0
push eax
call fcn.004e48c0
add esp, 0xc
lea eax, [ebp - 0x1014]
push 0
push 0x1c
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x4288df
lea eax, [ebp - 0x1014]
push eax
call fcn.00402d30
add esp, 4
mov ecx, esi
push eax
lea eax, [ebp - 0x1014]
push eax
call fcn.00402b20
lea ecx, [ebp - 0x1018]
call fcn.004a3a80
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1018]
call fcn.004a30b0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret 4
Function at 0x438950
Capabilities:
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52da61
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x58a088]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
push 0x138
call fcn.004e2005
mov edi, eax
mov dword [ebp - 0x10], edi
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x14], edi
mov byte [edi], 0
call fcn.004e2005
add esp, 8
mov dword [edi + 4], eax
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov byte [ebp - 4], 1
lea esi, [edi + 8]
push 0
mov dword [ebp - 0x18], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.00440320
mov dword [esi], eax
mov byte [ebp - 4], 4
lea esi, [edi + 0x10]
push 0
mov dword [ebp - 0x18], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.00440320
mov dword [esi], eax
mov byte [ebp - 4], 7
lea ecx, [edi + 0x20]
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
call fcn.00402a90
mov byte [ebp - 4], 8
lea ecx, [edi + 0x38]
call fcn.0042ddd0
mov byte [ebp - 4], 9
lea esi, [edi + 0xb8]
mov ecx, esi
mov dword [ebp - 0x18], esi
call fcn.00402a90
mov byte [ebp - 4], 0xa
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov byte [esi + 0x30], 0
mov byte [ebp - 4], 0xb
lea ecx, [edi + 0xf0]
call fcn.00402a90
mov byte [ebp - 4], 0xc
lea ecx, [edi + 0x108]
call fcn.0040a300
mov byte [ebp - 4], 0xd
lea ecx, [edi + 0x120]
call fcn.0040a300
mov dword [ebp - 4], 0xffffffff
mov eax, ebx
mov dword [ebx], edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x441010
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x80
push esi
mov dword [esp + 4], 0x10d040e
xor esi, esi
mov dword [esp + 8], 0x80b0f02
mov dword [esp + 0xc], 0xc060a03
mov dword [esp + 0x10], 0x7000905
mov dword [esp + 0x14], 0xe08010f
mov dword [esp + 0x18], 0x4030b06
mov dword [esp + 0x1c], 0xd020709
mov dword [esp + 0x20], 0xa05000c
mov dword [esp + 0x24], 0xe09000a
mov dword [esp + 0x28], 0x50f0306
mov dword [esp + 0x2c], 0x70c0d01
mov dword [esp + 0x30], 0x802040b
mov dword [esp + 0x34], 0x30e0d07
mov dword [esp + 0x38], 0xa090600
mov dword [esp + 0x3c], 0x5080201
mov dword [esp + 0x40], 0xf040c0b
mov dword [esp + 0x44], 0x1040c02
mov dword [esp + 0x48], 0x60b0a07
mov dword [esp + 0x4c], 0xf030508
mov dword [esp + 0x50], 0x90e000d
mov dword [esp + 0x54], 0xf0a010c
mov dword [esp + 0x58], 0x8060209
mov dword [esp + 0x5c], 0x4030d00
mov dword [esp + 0x60], 0xb05070e
mov dword [esp + 0x64], 0xe020b04
mov dword [esp + 0x68], 0xd08000f
mov dword [esp + 0x6c], 0x7090c03
mov dword [esp + 0x70], 0x1060a05
mov dword [esp + 0x74], 0x408020d
mov dword [esp + 0x78], 0x10b0f06
mov dword [esp + 0x7c], 0xe03090a
mov dword [esp + 0x80], 0x70c0005
nop dword [eax]
mov ecx, esi
mov edx, esi
sar ecx, 4
and edx, 0xf
movzx eax, byte [esp + ecx + 4]
shl al, 4
or al, byte [esp + edx + 0x14]
mov byte [esi + 0x58ed80], al
movzx eax, byte [esp + ecx + 0x24]
shl al, 4
or al, byte [esp + edx + 0x34]
mov byte [esi + 0x58ea80], al
movzx eax, byte [esp + ecx + 0x44]
shl al, 4
or al, byte [esp + edx + 0x54]
mov byte [esi + 0x58ec80], al
movzx eax, byte [esp + ecx + 0x64]
shl al, 4
or al, byte [esp + edx + 0x74]
mov byte [esi + 0x58eb80], al
inc esi
cmp esi, 0x100
jl 0x441120
pop esi
add esp, 0x80
ret
Function at 0x443ec0
Capabilities:
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52f3dd
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x58a088]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
call fcn.00402a90
mov dword [ebp - 4], 0
lea ecx, [esi + 0x18]
call fcn.00402a90
mov byte [ebp - 4], 1
lea ecx, [esi + 0x30]
call fcn.00402a90
mov byte [ebp - 4], 2
lea ecx, [esi + 0x48]
call fcn.00402a90
mov byte [ebp - 4], 3
lea ecx, [esi + 0x60]
call fcn.00402a90
mov byte [ebp - 4], 4
lea ecx, [esi + 0x78]
call fcn.00402a90
mov byte [ebp - 4], 5
lea ecx, [esi + 0x90]
call fcn.00402a90
mov byte [ebp - 4], 6
lea ecx, [esi + 0xa8]
call fcn.00402a90
mov byte [ebp - 4], 7
lea ecx, [esi + 0xc0]
call fcn.00402a90
mov byte [ebp - 4], 8
lea ecx, [esi + 0xd8]
call fcn.00402a90
mov byte [ebp - 4], 9
lea ecx, [esi + 0xf0]
call fcn.00402a90
mov byte [ebp - 4], 0xa
lea ecx, [esi + 0x108]
call fcn.00402a90
mov byte [ebp - 4], 0xb
lea ecx, [esi + 0x120]
call fcn.00402a90
mov byte [ebp - 4], 0xc
lea ecx, [esi + 0x138]
call fcn.00402a90
mov byte [ebp - 4], 0xd
lea ecx, [esi + 0x150]
call fcn.00402a90
mov byte [ebp - 4], 0xe
lea ecx, [esi + 0x168]
call fcn.00402a90
mov byte [ebp - 4], 0xf
lea ecx, [esi + 0x180]
call fcn.00402a90
mov byte [ebp - 4], 0x10
lea ecx, [esi + 0x198]
call fcn.00402a90
mov byte [ebp - 4], 0x11
lea ecx, [esi + 0x1b0]
call fcn.00402a90
mov byte [ebp - 4], 0x12
lea ecx, [esi + 0x1c8]
call fcn.00402a90
mov byte [ebp - 4], 0x13
lea ecx, [esi + 0x1e0]
call fcn.00402a90
mov byte [ebp - 4], 0x14
lea ecx, [esi + 0x1f8]
call fcn.00402a90
mov byte [ebp - 4], 0x15
lea ecx, [esi + 0x210]
call fcn.00402a90
mov dword [ebp - 4], 0xffffffff
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x444050
Capabilities:
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52f3dd
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x58a088]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
mov dword [ebp - 4], 0x15
lea ecx, [esi + 0x210]
call fcn.00402a30
mov byte [ebp - 4], 0x14
lea ecx, [esi + 0x1f8]
call fcn.00402a30
mov byte [ebp - 4], 0x13
lea ecx, [esi + 0x1e0]
call fcn.00402a30
mov byte [ebp - 4], 0x12
lea ecx, [esi + 0x1c8]
call fcn.00402a30
mov byte [ebp - 4], 0x11
lea ecx, [esi + 0x1b0]
call fcn.00402a30
mov byte [ebp - 4], 0x10
lea ecx, [esi + 0x198]
call fcn.00402a30
mov byte [ebp - 4], 0xf
lea ecx, [esi + 0x180]
call fcn.00402a30
mov byte [ebp - 4], 0xe
lea ecx, [esi + 0x168]
call fcn.00402a30
mov byte [ebp - 4], 0xd
lea ecx, [esi + 0x150]
call fcn.00402a30
mov byte [ebp - 4], 0xc
lea ecx, [esi + 0x138]
call fcn.00402a30
mov byte [ebp - 4], 0xb
lea ecx, [esi + 0x120]
call fcn.00402a30
mov byte [ebp - 4], 0xa
lea ecx, [esi + 0x108]
call fcn.00402a30
mov byte [ebp - 4], 9
lea ecx, [esi + 0xf0]
call fcn.00402a30
mov byte [ebp - 4], 8
lea ecx, [esi + 0xd8]
call fcn.00402a30
mov byte [ebp - 4], 7
lea ecx, [esi + 0xc0]
call fcn.00402a30
mov byte [ebp - 4], 6
lea ecx, [esi + 0xa8]
call fcn.00402a30
mov byte [ebp - 4], 5
lea ecx, [esi + 0x90]
call fcn.00402a30
mov byte [ebp - 4], 4
lea ecx, [esi + 0x78]
call fcn.00402a30
mov byte [ebp - 4], 3
lea ecx, [esi + 0x60]
call fcn.00402a30
mov byte [ebp - 4], 2
lea ecx, [esi + 0x48]
call fcn.00402a30
mov byte [ebp - 4], 1
lea ecx, [esi + 0x30]
call fcn.00402a30
mov byte [ebp - 4], 0
lea ecx, [esi + 0x18]
call fcn.00402a30
mov dword [ebp - 4], 0xffffffff
mov ecx, esi
call fcn.00402a30
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x44a7d0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5306c8
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x58a088]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0
mov dword [esi + 0x10], eax
call fcn.004f186e
mov ecx, dword [esi]
add esp, 4
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
test ecx, ecx
je 0x44a8aa
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x1c], edx
call fcn.0043fee0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x38]
call fcn.00404470
test al, al
jne 0x44a89b
push 0
push 0x80
push 4
push 0
push 0
push 0x40000000
lea ecx, [ebp - 0x38]
call fcn.00403390
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x44a89b
test esi, esi
je 0x44a89b
push 0
push 0
push 0
push esi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
push 8
lea eax, [ebp - 0x20]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38]
call fcn.00402a30
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e1ff4
mov esp, ebp
pop ebp
ret 4
Function at 0x45c750
Capabilities:
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x532743
mov eax, dword fs:[0]
push eax
sub esp, 8
push esi
push edi
mov eax, dword [0x58a088]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
push 0
push 0
mov dword [ebp - 0x14], edi
mov dword [edi], 0
mov dword [edi + 4], 0
call fcn.00440320
mov dword [edi], eax
mov dword [ebp - 4], 2
lea esi, [edi + 8]
mov dword [ebp - 0x14], esi
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045ff00
mov dword [esi], eax
mov byte [ebp - 4], 5
lea esi, [edi + 0x10]
push 0
mov dword [ebp - 0x14], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045fe60
mov dword [esi], eax
mov byte [ebp - 4], 8
lea esi, [edi + 0x18]
mov dword [ebp - 0x14], esi
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045ff00
mov dword [esi], eax
mov byte [ebp - 4], 0xb
lea ecx, [edi + 0x20]
call fcn.0042ff90
mov byte [ebp - 4], 0xc
lea esi, [edi + 0x28]
push 0
mov dword [ebp - 0x14], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045fdc0
mov dword [esi], eax
mov byte [ebp - 4], 0xf
lea esi, [edi + 0x30]
push 0
mov dword [ebp - 0x14], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045fdc0
mov dword [esi], eax
mov byte [ebp - 4], 0x12
lea esi, [edi + 0x38]
push 0
mov dword [ebp - 0x14], esi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0045fdc0
mov dword [esi], eax
mov byte [ebp - 4], 0x15
lea esi, [edi + 0x40]
mov ecx, esi
mov dword [ebp - 0x14], esi
call fcn.00402a90
mov byte [ebp - 4], 0x16
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov byte [esi + 0x30], 0
mov byte [ebp - 4], 0x17
lea ecx, [edi + 0x78]
call fcn.00402a90
mov dword [ebp - 4], 0xffffffff
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret