joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10bc2c
Capabilities:
Access peb ldr_data
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, eax
xor edx, edx
push ebp
push 0x10bd99
push dword fs:[edx]
mov dword fs:[edx], esp
mov byte [ebx + 0x64], 0
mov byte [ebx + 0x70], 0
mov byte [ebx + 0x31], 1
mov eax, dword [ebx + 0x44]
add eax, 0x18
mov edx, dword [0x11c55c]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x44]
add eax, 0x1c
mov edx, dword [0x11c994]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x44]
mov byte [eax + 8], 1
mov byte [eax + 0x20], 9
mov dword [eax + 0x28], 8
mov dword [eax + 0x2c], 8
mov dword [eax + 0x34], 3
mov byte [eax + 9], 0
xor edx, edx
mov dword [eax + 0x30], edx
mov byte [eax + 0xa], 0
mov byte [eax + 0x21], 2
mov eax, dword [ebx + 0x34]
mov byte [eax + 4], 1
mov dword [eax + 0x38], 6
mov eax, dword [ebx + 0x3c]
add eax, 4
mov edx, dword [0x11ca5c]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x3c]
add eax, 8
mov edx, dword [0x11c7b0]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x3c]
add eax, 0xc
mov edx, dword [0x11c6b8]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x3c]
add eax, 0x10
mov edx, dword [0x11cb08]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 0x20
mov edx, dword [0x11cc30]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 4
mov edx, dword [0x11c674]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 8
mov edx, dword [0x11c5bc]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 0xc
mov edx, dword [0x11c750]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 0x1c
mov edx, dword [0x11c788]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 0x24
mov edx, dword [0x11c7b8]
mov edx, dword [edx]
call fcn.00044c9c
mov eax, dword [ebx + 0x38]
add eax, 0x28
mov edx, dword [0x11c778]
mov edx, dword [edx]
call fcn.00044c9c
mov dword [ebx + 0x54], ebx
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
mov dword [ebx + 0x50], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x10bda3
pop edi
pop esi
pop ebx
pop ebp
ret
Function at 0x116a6c
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, eax
mov eax, ebx
call fcn.000bcde0
xor edx, edx
push ebp
push 0x116ade
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebx + 0x70]
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 4]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 8]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 0xc]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 0x10]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 0x14]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov ecx, dword [eax + 0x1c]
mov byte [ecx + 0x30], dl
mov dl, byte [ebx + 0x30]
mov eax, dword [eax + 0x20]
mov byte [eax + 0x30], dl
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x116ae8
pop edi
pop esi
pop ebx
pop ebp
ret
Function at 0x10001000
Capabilities:
Check os version

Disassembly:
sub esp, 0xa4
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0xa0], eax
push esi
push edi
push 0x90
lea eax, [esp + 0x10]
push 0
push eax
call fcn.10001d10
add esp, 0xc
mov dword [esp + 8], 0x94
lea eax, [esp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [esp + 0xc], 5
ja 0x10001054
jne 0x1000104d
cmp dword [esp + 0x10], 1
jae 0x10001054
mov esi, 0x20019
jmp 0x10001059
mov esi, 0x20119
push ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [esp + 0xa0]
push eax
push esi
xor edi, edi
xorps xmm0, xmm0
push edi
push str.SOFTWARE
push 0x80000002
movq qword [esp + 0xb4], xmm0
mov dword [esp + 0xbc], edi
call ebx
test eax, eax
jne 0x100010cd
lea eax, [esp + 0xa4]
push eax
push esi
push edi
push str.hp_indigo
push dword [esp + 0xb0]
call ebx
test eax, eax
jne 0x100010cd
lea eax, [esp + 0xa8]
push eax
push esi
push edi
push str.pre_installation
push dword [esp + 0xb4]
call ebx
test eax, eax
mov ecx, 1
cmove edi, ecx
mov eax, dword [esp + 0xa8]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop ebx
test eax, eax
je 0x100010e2
push eax
call esi
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x100010f0
push eax
call esi
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x100010fe
push eax
call esi
mov ecx, dword [esp + 0xa8]
mov eax, edi
pop edi
pop esi
xor ecx, esp
call fcn.1000147a
add esp, 0xa4
ret

Function at 0x10004457
Capabilities:
Parse pe header

Disassembly:
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
je 0x10004496
mov ecx, 0x5a4d
cmp word [eax], cx
jne 0x10004496
mov ecx, dword [eax + 0x3c]
add ecx, eax
cmp dword [ecx], 0x4550
jne 0x10004496
mov eax, 0x10b
cmp word [ecx + 0x18], ax
jne 0x10004496
cmp dword [ecx + 0x74], 0xe
jbe 0x10004496
cmp dword [ecx + 0xe8], 0
setne al
ret
xor al, al
ret
Function at 0x1000711f
Capabilities:
Query environment variable

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
mov esi, eax
test esi, esi
je 0x100071bc
push ebx
push esi
call fcn.100070e8
xor ebx, ebx
sub eax, esi
push ebx
push ebx
push ebx
push ebx
sar eax, 1
push eax
push esi
push ebx
push ebx
mov dword [ebp - 8], eax
call fcn.1000707c
add esp, 0x24
mov dword [ebp - 4], eax
test eax, eax
jne 0x10007169
push esi
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
xor eax, eax
jmp 0x100071bb
push edi
push eax
call fcn.100080da
mov edi, eax
pop ecx
push ebx
test edi, edi
jne 0x10007189
call fcn.10005bc4
pop ecx
push esi
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
xor eax, eax
jmp 0x100071ba
push ebx
push dword [ebp - 4]
push edi
push dword [ebp - 8]
push esi
push ebx
push ebx
call fcn.1000707c
add esp, 0x20
test eax, eax
jne 0x100071a8
push edi
call fcn.10005bc4
jmp 0x100071b0
push ebx
call fcn.10005bc4
mov ebx, edi
pop ecx
push esi
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov eax, ebx
pop edi
pop ebx
pop esi
leave
ret

Function at 0x10007429
Capabilities:
Allocate thread local storage

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push esi
push 0x1000e528
push 0x1000e520
push str.FlsAlloc
push 0x1f
call fcn.10007345
mov esi, eax
add esp, 0x10
test esi, esi
je 0x1000745d
push dword [ebp + 8]
mov ecx, esi
call dword [0x1000d118]
call esi
jmp 0x10007463
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
pop esi
pop ebp
ret 4

Function at 0x100074a7
Capabilities:
Get thread local storage value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push esi
push 0x1000e538
push 0x1000e530
push str.FlsGetValue
push 0x21
call fcn.10007345
mov esi, eax
add esp, 0x10
test esi, esi
je 0x100074de
push dword [ebp + 8]
mov ecx, esi
call dword [0x1000d118]
call esi
pop esi
pop ebp
ret 4
pop esi
pop ebp
jmp dword [sym.imp.KERNEL32.dll_TlsGetValue]

Function at 0x100074e6
Capabilities:
Set thread local storage value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push esi
push 0x1000e540
push 0x1000e538
push str.FlsSetValue
push 0x22
call fcn.10007345
mov esi, eax
add esp, 0x10
test esi, esi
je 0x10007520
push dword [ebp + 0xc]
mov ecx, esi
push dword [ebp + 8]
call dword [0x1000d118]
call esi
pop esi
pop ebp
ret 8
pop esi
pop ebp
jmp dword [sym.imp.KERNEL32.dll_TlsSetValue]
Function at 0x1000cba0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
mov ecx, 0x5a4d
cmp word [eax], cx
jne 0x1000cbcd
mov ecx, dword [eax + 0x3c]
add ecx, eax
cmp dword [ecx], 0x4550
jne 0x1000cbcd
mov edx, 0x10b
xor eax, eax
cmp word [ecx + 0x18], dx
sete al
pop ebp
ret
xor eax, eax
pop ebp
ret

Function at 0x401ae0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [ebp + 8]
mov dword [0x40406c], eax
push str.Riched32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0
push 0
push 0
push 0x80000000
push 0
push 0x80000000
push 0xcf0000
push str.mifedount
push str.Deltapo
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x401b33
xor eax, eax
jmp 0x401b4e
push 0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
mov eax, 1
mov esp, ebp
pop ebp
ret
Function at 0x42e000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
nop
mov eax, section..text
nop
mov ebx, 0x407ef8
mov ecx, 0x39112102
nop
nop
nop
nop
test eax, eax
nop
je 0x42e04e
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
inc eax
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
jne 0x42e024
nop
nop
nop
mov eax, section..rsrc
nop
mov ebx, 0x42cd70
nop
mov ecx, 0x675e06fe
nop
nop
nop
nop
test eax, eax
nop
nop
nop
je 0x42e084
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
add eax, 4
nop
nop
cmp eax, ebx
nop
nop
nop
nop
jne 0x42e06c
nop
nop
nop
nop
popal
nop
nop
nop
nop
nop
jmp 0x401219
Function at 0x42e000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
nop
mov eax, section..text
mov ebx, 0x407ef8
nop
nop
mov ecx, 0x4b5d6cc2
nop
test eax, eax
nop
nop
nop
nop
nop
nop
je 0x42e04e
nop
xor dword [eax], ecx
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
inc eax
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
jne 0x42e024
nop
nop
nop
mov eax, section..data
nop
nop
mov ebx, 0x42cd70
nop
mov ecx, 0x20086dad
nop
nop
test eax, eax
nop
nop
nop
je 0x42e084
nop
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
add eax, 4
nop
nop
cmp eax, ebx
nop
nop
jne 0x42e06c
nop
nop
nop
nop
popal
nop
nop
nop
nop
nop
jmp 0x401219
Function at 0x424f5a
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x38
mov eax, 0
mov dword [ebp - 0x10], 0
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.DLL_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.DLL_CommandLineToArgvW]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
push eax
call dword [sym.imp.MSVCRT.DLL_malloc]
add esp, 4
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x40], eax
mov eax, 0
mov edx, dword [ebp - 0x38]
cmp eax, edx
jne 0x424fcc
push 0
push str.CommandLineToArgvW_failed_
push 6
push 0xc
lea esi, [esp + 4]
push esi
push 1
call fcn.00425471
jmp 0x425059
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
jmp 0x425046
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov dword [ebp - 0x30], eax
push dword [ebp - 0x30]
call dword [sym.imp.MSVCRT.DLL_malloc]
add esp, 4
mov edx, eax
mov eax, dword [ebp - 0x40]
mov dword [eax], edx
push 0
push 0
push dword [ebp - 0x30]
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
push eax
push 0xffffffffffffffff
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp eax, 0
jg 0x424fd4
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.DLL_LocalFree]
mov eax, 0
xchg edx, eax
mov eax, dword [ebp - 0x40]
mov dword [eax], edx
mov eax, dword [ebp - 0x20]
xchg edx, eax
mov eax, dword [0x54802c]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x10]
xchg edx, eax
mov eax, dword [0x54802c]
mov dword [eax], edx
mov eax, 0
xchg edx, eax
mov eax, dword [0x54802c]
mov dword [eax + 8], edx
mov eax, dword [ebp - 0x20]
xchg edx, eax
mov eax, dword [0x548080]
mov dword [eax], edx
leave
ret
Function at 0x42a92a
Capabilities:
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x14
push dword [0x5705b4]
push dword [0x548004]
call dword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
mov eax, 0
mov dword [ebp - 0xc], 0
mov eax, dword [0x5705b4]
mov eax, dword [eax]
and eax, 0xffff
mov dword [ebp - 0x18], eax
mov eax, dword [0x5705b4]
mov eax, dword [eax]
shr eax, 0x10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 8]
cmp eax, 0
je 0x42a9b9
cmp eax, 1
je 0x42a9f0
cmp eax, 2
je 0x42aa19
cmp eax, 4
je 0x42aa34
cmp eax, 5
je 0x42aa68
cmp eax, 3
je 0x42aa90
call fcn.0042a9b0
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
shr eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x18]
imul edx
mov dword [ebp - 0x10], eax
mov eax, 0
mov dword [ebp - 0x14], 0
jmp 0x42aab2
mov eax, dword [ebp - 0x18]
push edx
mov edx, dword [ebp - 0x1c]
imul edx
pop edx
mov dword [ebp - 0x10], eax
mov eax, 0
mov dword [ebp - 0x14], 0
jmp 0x42aab2
mov eax, dword [0x5705b4]
mov eax, dword [eax]
and eax, 0xffff
push eax
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
and eax, 0xffff
pop edx
xchg edx, eax
sub eax, edx
mov dword [ebp - 0x10], eax
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x14], eax
jmp 0x42aab2
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
and eax, 0xffff
mov dword [ebp - 0x10], eax
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
and eax, 0xffff0000
mov dword [ebp - 0x14], eax
jmp 0x42aab2
mov eax, dword [0x5705b4]
mov eax, dword [eax]
and eax, 0xffff
mov dword [ebp - 0x10], eax
mov eax, dword [0x5705b4]
mov eax, dword [eax + 4]
and eax, 0xffff0000
mov dword [ebp - 0x14], eax

Function at 0x42ae43
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x28
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 0xc]
cmp eax, 1
je 0x42ae7a
cmp eax, 2
je 0x42aeaa
cmp eax, 4
je 0x42aeda
call fcn.0042ae71
mov eax, dword [ebp + 8]
mov al, byte [eax + 2]
cmp al, 0x5b
je 0x42aec1
mov eax, 0
jmp 0x42b814
mov eax, dword [ebp + 8]
add eax, 4
mov dword [ebp + 8], eax
mov eax, 4
mov dword [ebp - 0x10], 4
jmp 0x42af08
mov eax, dword [ebp + 8]
mov al, byte [eax + 4]
cmp al, 0x5b
je 0x42aef1
mov eax, 0
jmp 0x42b814
mov eax, dword [ebp + 8]
add eax, 8
mov dword [ebp + 8], eax
mov eax, 8
mov dword [ebp - 0x10], 8
Function at 0x42be99
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0xc
mov eax, dword [0x5705a4]
cmp eax, 0
je 0x42bee9
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
jmp 0x42bed3
and eax, 0xff
mov esi, dword [ebp - 0xc]
mov al, byte [esi]
and eax, 0xff
push eax
call fcn.0042b881
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
mov esi, dword [ebp - 0xc]
mov al, byte [esi]
cmp al, 0
jne 0x42beb7
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp + 8]
sub eax, edx
mov dword [ebp - 0x10], eax
jmp 0x42bf1c
push dword [ebp + 8]
call dword [sym.imp.MSVCRT.DLL_strlen]
add esp, 4
mov dword [ebp - 0x10], eax
mov eax, 0
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x10]
push dword [ebp + 8]
push dword [0x548004]
call dword [sym.imp.KERNEL32.DLL_WriteFile]
xor eax, eax
push eax
push dword [ebp - 0x10]
push dword [ebp + 8]
call fcn.0042f5cf
mov eax, dword [ebp + 8]
leave
ret 4

Function at 0x42c14c
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 8
push 0
push 0
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryW]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
shl eax, 1
push eax
call dword [sym.imp.MSVCRT.DLL_malloc]
add esp, 4
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryW]
mov eax, dword [ebp - 0xc]
dec eax
mov edx, eax
mov eax, dword [ebp + 8]
mov dword [eax], edx
mov eax, dword [ebp - 0x10]
leave
ret 4
Function at 0x434f3c
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x28
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
and eax, 0x1f
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x10]
pop eax
bsr eax, eax
mov edx, eax
mov eax, dword [ebp - 0x2c]
mov cl, dl
shl eax, cl
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
add eax, edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x38
jne 0x434fb5
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0xc]
cmp eax, 0
jl 0x434fb5
jmp 0x434fb9
xor eax, eax
jmp 0x434fbc
xor eax, eax
inc eax
cmp eax, 0
je 0x434ff4
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x28], eax
push dword [ebp - 0x10]
pop eax
bsr eax, eax
mov edx, eax
mov eax, dword [ebp - 0x28]
mov cl, dl
shl eax, cl
mov edx, eax
mov eax, dword [ebp - 0x14]
add eax, edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x28]
shl eax, 2
mov dword [ebp - 0x28], eax
jmp 0x43501c
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x14]
sub eax, edx
push eax
push dword [ebp - 0x10]
pop eax
bsr eax, eax
pop edx
xchg edx, eax
mov cl, dl
sar eax, cl
shl eax, 2
mov dword [ebp - 0x28], eax
mov eax, dword [0x57673c]
mov dword [ebp - 0x20], eax
jmp 0x435132
Function at 0x4353d9
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
mov eax, dword [ebp + 8]
shr eax, 0x10
mov edx, dword [ebp + 8]
xor eax, edx
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
push edx
mov edx, 0x85ebca6b
mov ecx, edx
imul ecx
pop edx
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
shr eax, 0xd
mov edx, dword [ebp + 8]
xor eax, edx
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
push edx
mov edx, 0xc2b2ae35
mov ecx, edx
imul ecx
pop edx
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
shr eax, 0x10
mov edx, dword [ebp + 8]
xor eax, edx
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
leave
ret 4
Function at 0x43d1a6
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x14
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov edx, dword [0x5767f0]
cmp eax, edx
jle 0x43d1cd
mov eax, dword [ebp - 0xc]
mov dword [0x5767f0], eax
mov eax, dword [ebp + 0xc]
add eax, 4
mov dword [ebp + 0xc], eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0xc]
add eax, 4
mov dword [ebp + 0xc], eax
mov eax, dword [0x570644]
mov edx, eax
mov eax, dword [ebp - 0xc]
push edx
mov edx, 0xc
mov ecx, edx
imul ecx
pop edx
add eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
push eax
call dword [sym.imp.MSVCRT.DLL_strlen]
add esp, 4
dec eax
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 4], edx
mov eax, dword [0x579b18]
cmp eax, 0
je 0x43d24e
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
push eax
call fcn.0044fc62
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 8], edx
mov eax, dword [ebp + 0xc]
add eax, 4
mov dword [ebp + 0xc], eax
mov eax, dword [ebp + 8]
sub eax, 3
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
cmp eax, 0x3e
je 0x43d2d4
push 0
push dword [str._n_r_t__e]
push 3
push 0
push 0x3e
push 2
push 0
push 0x583d50
push 6
push 0
push dword [str._n_r_t__e]
push 3
push 0
push dword [ebp + 8]
push 2
push 0
push str._Found:
push 6
push 0
push dword [str._n_r_t__e]
push 3
push 0
push dword [ebp - 0xc]
push 2
push 0
push str._Datatype_Error:_invalid_actions_count_for_type:
push 6
push 0x6c
lea esi, [esp + 4]
push esi
push 9
call fcn.00425453
push 0
call dword [sym.imp.MSVCRT.DLL_exit]
add esp, 4
mov eax, dword [ebp - 0xc]
shl eax, 8
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0
je 0x43d2f6
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
cmp eax, 0xffffffff
jne 0x43d2f6
jmp 0x43d2fa
xor eax, eax
jmp 0x43d2fd
xor eax, eax
inc eax
cmp eax, 0
je 0x43d32b
mov eax, dword [ebp - 0x14]
shl eax, 8
inc eax
push eax
mov eax, 0x3e
mov edx, dword [ebp + 8]
sub eax, edx
pop edx
xchg edx, eax
add eax, edx
mov dword [ebp - 0x18], eax
mov eax, dword [0x570648]
mov edi, dword [ebp - 0x18]
dec edi
mov eax, dword [eax + edi*4]
jmp 0x43d330
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov edx, eax
mov eax, dword [0x570648]
mov edi, dword [ebp - 0x10]
dec edi
mov dword [eax + edi*4], edx
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
add eax, 4
mov dword [ebp + 0xc], eax
mov eax, dword [ebp + 8]
dec eax
mov dword [ebp + 8], eax
mov eax, 0
mov edx, dword [ebp + 8]
cmp eax, edx
jne 0x43d2de
leave
pop esi
pop ecx
pop ecx
pop ecx
add esp, ecx
push esi
ret
Function at 0x444f4f
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 0x10
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
push eax
push 0
push dword [0x570954]
push dword [ebp + 8]
call fcn.00439a19
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
xchg edx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
xchg edx, eax
xchg edx, eax
shl eax, 4
add eax, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
jmp 0x444ff4
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 3
je 0x444fe9
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
cmp eax, edx
sete al
xor ah, ah
cwde
xor al, 1
cmp eax, 0
je 0x444fde
push dword [ebp - 0x14]
push dword [ebp - 0x10]
call fcn.0042f873
mov eax, dword [ebp - 0x14]
add eax, 0x10
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
add eax, 0x10
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, eax
mov eax, dword [ebp - 0x10]
cmp eax, edx
jb 0x444fab
mov eax, dword [ebp - 0x14]
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x10], edx
mov eax, dword [ebp - 0x18]
cmp eax, 0
je 0x445039
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
push eax
push 0
push dword [0x570958]
push dword [ebp + 8]
call fcn.00439a19
mov eax, dword [ebp + 8]
leave
ret 0x1c

Function at 0x447b37
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
sub esp, 4
mov eax, dword [ebp + 0x10]
cmp eax, 0
jne 0x447b52
call fcn.0048b026
jmp 0x447b55
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xc], eax
mov eax, 2
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax], edx
mov eax, 0
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax + 4], edx
mov eax, 0
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax + 0xc], edx
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x447bb6
cmp eax, 0xffffffff
je 0x447bce
push 0
push str._Loading_Error:_input_encoding_unsupported
push 6
push 0xc
lea esi, [esp + 4]
push esi
push 1
call fcn.00425453
push 0
call dword [sym.imp.MSVCRT.DLL_exit]
add esp, 4
jmp 0x447be9
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0043281b
mov edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax + 8], edx
jmp 0x447be9
xor eax, eax
push eax
push 0
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0043299b
mov edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax + 8], edx
mov eax, 7
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax], edx
mov eax, dword [ebp - 0xc]
leave
ret 0x10