joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4a5180
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5dac6b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ecx, 0x6642a4
call fcn.0043ead0
test eax, eax
jne 0x4a5243
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x60
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4a51f0
mov ecx, dword [ebp - 0x1c]
call fcn.004a5610
mov dword [ebp - 0x20], eax
jmp 0x4a51f7
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4a521d
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4a5235
push 0x618984
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
push edx
mov ecx, 0x6642a4
call fcn.0041bd20
mov ecx, 0x6642a4
call fcn.0043ead0
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 0x4a52b0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e75cb
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ecx, 0x6642a0
call fcn.0043ead0
test eax, eax
jne 0x4a5376
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x138
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4a5323
mov ecx, dword [ebp - 0x1c]
call fcn.00499c40
mov dword [ebp - 0x20], eax
jmp 0x4a532a
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4a5350
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4a5368
push 0x6189b4
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
push edx
mov ecx, 0x6642a0
call fcn.0041bd20
mov ecx, 0x6642a0
call fcn.0043ead0
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 0x4b0590
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d774b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ecx, 0x6642a8
call fcn.0043ead0
test eax, eax
jne 0x4b0653
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x40
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4b0600
mov ecx, dword [ebp - 0x1c]
call fcn.004af9e0
mov dword [ebp - 0x20], eax
jmp 0x4b0607
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4b062d
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4b0645
push 0x615f00
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
push edx
mov ecx, 0x6642a8
call fcn.0041bd20
mov ecx, 0x6642a8
call fcn.0043ead0
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 0x4c19b0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e663b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663ea8], 0
jne 0x4c1a8a
mov ecx, 0x664300
call fcn.004087a0
cmp dword [0x663ea8], 0
jne 0x4c1a80
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x68
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4c1a32
mov ecx, dword [ebp - 0x1c]
call fcn.004d9930
mov dword [ebp - 0x20], eax
jmp 0x4c1a39
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4c1a5f
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4c1a77
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663ea8], edx
mov ecx, 0x664300
call fcn.00408760
mov eax, dword [0x663ea8]
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 0x4c1ab0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d7fcb
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663eac], 0
jne 0x4c1b8a
mov ecx, 0x6642e4
call fcn.004087a0
cmp dword [0x663eac], 0
jne 0x4c1b80
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x10
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4c1b32
mov ecx, dword [ebp - 0x1c]
call fcn.004c0eb0
mov dword [ebp - 0x20], eax
jmp 0x4c1b39
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4c1b5f
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4c1b77
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663eac], edx
mov ecx, 0x6642e4
call fcn.00408760
mov eax, dword [0x663eac]
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 0x4c1bb0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d7f9b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663eb0], 0
jne 0x4c1c8a
mov ecx, 0x6642c8
call fcn.004087a0
cmp dword [0x663eb0], 0
jne 0x4c1c80
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x50
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4c1c32
mov ecx, dword [ebp - 0x1c]
call fcn.004c0f20
mov dword [ebp - 0x20], eax
jmp 0x4c1c39
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4c1c5f
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4c1c77
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663eb0], edx
mov ecx, 0x6642c8
call fcn.00408760
mov eax, dword [0x663eb0]
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 0x4c1cb0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d9eab
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663eb4], 0
jne 0x4c1d8a
mov ecx, 0x6642ac
call fcn.004087a0
cmp dword [0x663eb4], 0
jne 0x4c1d80
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x60
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4c1d32
mov ecx, dword [ebp - 0x1c]
call fcn.004c2160
mov dword [ebp - 0x20], eax
jmp 0x4c1d39
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4c1d5f
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4c1d77
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663eb4], edx
mov ecx, 0x6642ac
call fcn.00408760
mov eax, dword [0x663eb4]
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 0x4cb470
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d875f
mov eax, dword fs:[0]
push eax
push ecx
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], 5
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x10]
add ecx, 0x40
call fcn.0040bf30
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x10]
add ecx, 0x30
call fcn.004082d0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x10]
add ecx, 0x24
call fcn.004082d0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x10]
add ecx, 0x18
call fcn.004cb8a0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x10]
add ecx, 0xc
call fcn.004cb880
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10]
call fcn.004cb860
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret
Function at 0x4d7910
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d7f3b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663ec4], 0
jne 0x4d79ea
mov ecx, 0x66433c
call fcn.004087a0
cmp dword [0x663ec4], 0
jne 0x4d79e0
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x10
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4d7992
mov ecx, dword [ebp - 0x1c]
call fcn.004ceaf0
mov dword [ebp - 0x20], eax
jmp 0x4d7999
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4d79bf
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4d79d7
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663ec4], edx
mov ecx, 0x66433c
call fcn.00408760
mov eax, dword [0x663ec4]
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 0x4d7a10
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5ed1fb
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
cmp dword [0x663ec8], 0
jne 0x4d7aed
mov ecx, 0x664320
call fcn.004087a0
cmp dword [0x663ec8], 0
jne 0x4d7ae3
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x214
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4d7a95
mov ecx, dword [ebp - 0x1c]
call fcn.004e69e0
mov dword [ebp - 0x20], eax
jmp 0x4d7a9c
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4d7ac2
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4d7ada
push 0x62aadc
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
mov dword [0x663ec8], edx
mov ecx, 0x664320
call fcn.00408760
mov eax, dword [0x663ec8]
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 0x4d8110
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5dd27b
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ecx, 0x66431c
call fcn.0043ead0
test eax, eax
jne 0x4d81d6
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
push 0x90
call fcn.00595e8d
add esp, 4
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0
je 0x4d8183
mov ecx, dword [ebp - 0x1c]
call fcn.004ee990
mov dword [ebp - 0x20], eax
jmp 0x4d818a
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
jmp 0x4d81b0
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x14], 0
jne 0x4d81c8
push 0x60fee8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x14]
push edx
mov ecx, 0x66431c
call fcn.0041bd20
mov ecx, 0x66431c
call fcn.0043ead0
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 0x4dcbd0
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e5d5c
mov eax, dword fs:[0]
push eax
sub esp, 0x154
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x150], ecx
call sub.KERNEL32.dll_GetTickCount
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x14]
sub ecx, dword [eax + 0x30]
cmp ecx, 0x2710
ja 0x4dcc2c
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 0x14]
cmp eax, dword [edx + 0x30]
jae 0x4dcce1
push 1
push 2
lea ecx, [ebp - 0x94]
call fcn.0040b040
mov dword [ebp - 4], 0
call sub.KERNEL32.dll_GetCurrentThreadId
push eax
push 0x60df18
lea ecx, [ebp - 0x94]
push ecx
call fcn.00409b60
add esp, 8
mov ecx, eax
call fcn.004024e0
lea edx, [ebp - 0x130]
push edx
lea ecx, [ebp - 0x94]
call fcn.004094f0
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x158]
call fcn.0040be10
push eax
push 0x60df2c
push 0x5d
push 0x60df44
push 0x801
call fcn.00409860
mov ecx, eax
call fcn.004fb930
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x130]
call fcn.0040bf30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00409dd0
mov ecx, dword [ebp - 0x150]
mov edx, dword [ebp - 0x14]
mov dword [ecx + 0x30], edx
lea eax, [ebp - 0x10]
push eax
push 0x10
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParametersInterfaces
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4dcded
mov ecx, dword [ebp - 0x150]
call fcn.0052b140
test eax, eax
je 0x4dcde3
push 0
push 0
push 5
push 1
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegNotifyChangeKeyValue]
test eax, eax
je 0x4dcd2f
jmp 0x4dcde3
push 1
push 2
lea ecx, [ebp - 0x114]
call fcn.0040b040
mov dword [ebp - 4], 2
push 0x60df94
lea edx, [ebp - 0x114]
push edx
call fcn.00409b60
add esp, 8
lea eax, [ebp - 0x14c]
push eax
lea ecx, [ebp - 0x114]
call fcn.004094f0
mov dword [ebp - 0x15c], eax
mov ecx, dword [ebp - 0x15c]
mov dword [ebp - 0x160], ecx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x160]
call fcn.0040be10
push eax
push str.CRouteChangeEvent::Svc
push 0x69
push 0x60dfb4
push 0x19
call fcn.00409860
mov ecx, eax
call fcn.004fb930
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x14c]
call fcn.0040bf30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x114]
call fcn.00409dd0
mov ecx, dword [ebp - 0x150]
add ecx, 0x3c
call fcn.004dc3a0
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4dcd01
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret
Function at 0x4dee00
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov dword [ebp - 0x18], ecx
cmp dword [ebp + 8], 0
je 0x4dee19
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
test ecx, ecx
jne 0x4dee20
xor eax, eax
jmp 0x4deee2
lea edx, [ebp - 4]
push edx
mov eax, dword [ebp + 8]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4dee3d
xor eax, eax
jmp 0x4deee2
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00595ebd
add esp, 4
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov dword [edx], eax
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 8]
push edx
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
jne 0x4dee7b
mov ecx, dword [ebp - 0x18]
call fcn.004dedc0
xor eax, eax
jmp 0x4deee2
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 8]
push ecx
push str.VarFileInfoTranslation
mov edx, dword [ebp - 0x18]
mov eax, dword [edx]
push eax
call sub.VERSION.dll_VerQueryValueA
test eax, eax
jne 0x4deea3
mov ecx, dword [ebp - 0x18]
call fcn.004dedc0
xor eax, eax
jmp 0x4deee2
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
shr edx, 0x10
and edx, 0xffff
movzx eax, dx
and eax, 0xffff
movzx ecx, ax
mov edx, dword [ebp - 8]
mov eax, dword [edx]
and eax, 0xffff
movzx edx, ax
and edx, 0xffff
movzx eax, dx
shl eax, 0x10
or ecx, eax
mov edx, dword [ebp - 0x18]
mov dword [edx + 4], ecx
mov eax, 1
mov esp, ebp
pop ebp
ret 4
Function at 0x4e66e0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d7488
mov eax, dword fs:[0]
push eax
sub esp, 0x10
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], ecx
push 0x663da0
lea ecx, [ebp - 0x10]
call fcn.0040be90
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x74], 0
push 0x60d01c
mov ecx, dword [ebp + 8]
push ecx
call fcn.005b1ae9
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x4e6763
mov edx, dword [ebp - 0x14]
push edx
push 1
push 4
mov eax, dword [ebp - 0x1c]
add eax, 0x74
push eax
call fcn.005b2836
add esp, 0x10
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.005b1fa4
add esp, 4
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx + 0x74]
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0040be70
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 4

Function at 0x4e6930
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5de498
mov eax, dword fs:[0]
push eax
sub esp, 0xc
mov eax, dword [0x65d4e4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18], ecx
push 0x663da0
lea ecx, [ebp - 0x10]
call fcn.0040be90
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0x74], ecx
push 0x60d05c
mov edx, dword [ebp + 8]
push edx
call fcn.005b1ae9
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x4e69b2
mov eax, dword [ebp - 0x14]
push eax
push 1
push 4
mov ecx, dword [ebp - 0x18]
add ecx, 0x74
push ecx
call fcn.005b1d61
add esp, 0x10
mov edx, dword [ebp - 0x14]
push edx
call fcn.005b1fa4
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0040be70
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 8
Function at 0x4f4380
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, eax
mov dword [edx], 0x12345678
mov dword [edx + 4], 0x23456789
mov dword [edx + 8], 0x34567890
movzx ecx, byte [esi]
test cl, cl
je 0x4f43e5
mov edi, edi
mov eax, dword [edx]
xor ecx, eax
and ecx, 0xff
mov ecx, dword [edi + ecx*4]
shr eax, 8
xor ecx, eax
movzx eax, cl
add eax, dword [edx + 4]
mov dword [edx], ecx
mov ecx, dword [edx + 8]
imul eax, eax, 0x8088405
add eax, 1
mov dword [edx + 4], eax
shr eax, 0x18
xor eax, ecx
shr ecx, 8
and eax, 0xff
xor ecx, dword [edi + eax*4]
add esi, 1
mov dword [edx + 8], ecx
mov cl, byte [esi]
test cl, cl
jne 0x4f43a0
pop esi
ret
Function at 0x4f5750
Capabilities:
Encode data using xor

Disassembly:
cmp dword [esi + 0x4090], 0
je 0x4f5809
cmp dword [esi + 0x6c], 0
jbe 0x4f5809
push ebx
push ebp
mov ebx, 0xffffff78
push edi
lea edi, [esi + 0x88]
sub ebx, esi
jmp 0x4f5780
movzx ecx, byte [edi]
mov eax, dword [esi + 0x4094]
mov ebp, dword [esi + 0x40a0]
xor ecx, eax
mov edx, dword [esi + 0x409c]
shr eax, 8
and ecx, 0xff
mov ecx, dword [ebp + ecx*4]
xor ecx, eax
movzx eax, cl
add eax, dword [esi + 0x4098]
mov dword [esi + 0x4094], ecx
mov ecx, dword [esi + 0x409c]
imul eax, eax, 0x8088405
add eax, 1
mov dword [esi + 0x4098], eax
shr eax, 0x18
xor eax, ecx
and eax, 0xff
and edx, 0xfffd
shr ecx, 8
xor ecx, dword [ebp + eax*4]
or edx, 2
mov eax, edx
xor eax, 1
imul eax, edx
mov dword [esi + 0x409c], ecx
shr eax, 8
xor byte [edi], al
add edi, 1
lea ecx, [ebx + edi]
cmp ecx, dword [esi + 0x6c]
jb 0x4f5780
pop edi
pop ebp
pop ebx
mov edx, dword [esi + 0x6c]
mov ecx, dword [esi + 0x20]
push edx
mov edx, dword [esi + 0x1c]
lea eax, [esi + 0x88]
push eax
mov eax, dword [esi + 8]
push ecx
push edx
call eax
add esp, 0x10
cmp eax, dword [esi + 0x6c]
mov dword [esi + 0x6c], 0
je 0x4f5834
or eax, 0xffffffff
ret
xor eax, eax
ret
Function at 0x4f7760
Capabilities:
Hash data with crc32

Disassembly:
test ecx, ecx
jne 0x4f7767
xor eax, eax
ret
mov eax, dword [esp + 4]
jmp fcn.004f7770