joyce8/EMBER2024-capa huggingface dataset:
Function at 0x49f9b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c4
push 0x214c6981
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 0x1c], eax
push 0x104
lea eax, [ebp - 0x2b8]
push eax
call dword [ebp - 0x1c]
push 0x1c368da0
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 0x14], eax
call dword [ebp - 0x14]
push eax
push 0
lea ecx, [ebp - 0x158]
push ecx
call fcn.0049f400
add esp, 0xc
mov byte [ebp - 0x18], 0x5c
mov byte [ebp - 0x17], 0
mov byte [ebp - 0x144], 0x2e
mov byte [ebp - 0x143], 0x64
mov byte [ebp - 0x142], 0x6c
mov byte [ebp - 0x141], 0x6c
mov byte [ebp - 0x140], 0
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x2b8]
push eax
call fcn.0049fdf0
add esp, 8
lea ecx, [ebp - 0x158]
push ecx
lea edx, [ebp - 0x2b8]
push edx
call fcn.0049fdf0
add esp, 8
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x2b8]
push ecx
call fcn.0049fdf0
add esp, 8
push 0x4e1e0843
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 0x1a4], eax
push 0
push 0x80
push 2
push 0
push 0
push 0x10000000
lea edx, [ebp - 0x2b8]
push edx
call dword [ebp - 0x1a4]
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 0xffffffff
je 0x49fb05
mov dword [ebp - 0x2bc], 0
push 0x7463a627
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 0x2c4], eax
push 0
lea eax, [ebp - 0x2bc]
push eax
push 0xe400
push 0x403000
mov ecx, dword [ebp - 0x13c]
push ecx
call dword [ebp - 0x2c4]
push 0x70ebfb28
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 0x2c0], eax
mov edx, dword [ebp - 0x13c]
push edx
call dword [ebp - 0x2c0]
mov byte [ebp - 0x1b0], 0x60
mov byte [ebp - 0x1af], 0x47
mov byte [ebp - 0x1ae], 0x5c
mov byte [ebp - 0x1ad], 0x56
mov byte [ebp - 0x1ac], 0x5e
mov byte [ebp - 0x1ab], 0x5e
mov byte [ebp - 0x1aa], 1
mov byte [ebp - 0x1a9], 0
mov byte [ebp - 0x1a8], 0x12
mov byte [ebp - 0x1a7], 0x32
push 0x32
push 0xa
lea eax, [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x1b0]
push ecx
call fcn.0049f640
add esp, 0x10
mov byte [ebp - 0x10], 0x20
mov byte [ebp - 0xf], 0x45
mov byte [ebp - 0xe], 0x78
mov byte [ebp - 0xd], 0x75
mov byte [ebp - 0xc], 0x63
mov byte [ebp - 0xb], 0x75
mov byte [ebp - 0xa], 0x74
mov byte [ebp - 9], 0x65
mov byte [ebp - 8], 0
push 0x44
push 0
lea edx, [ebp - 0x1a0]
push edx
call fcn.0049f620
add esp, 0xc
mov dword [ebp - 0x1a0], 0x44
push 0x10
push 0
lea eax, [ebp - 0x138]
push eax
call fcn.0049f620
add esp, 0xc
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x2b8]
push edx
call fcn.0049fdf0
add esp, 8
lea eax, [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x128]
push ecx
call fcn.0049fde0
add esp, 8
lea edx, [ebp - 0x2b8]
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.0049fdf0
add esp, 8
lea ecx, [ebp - 0x2b8]
push ecx
call fcn.0049fd50
add esp, 4
push 0xe621d6
call fcn.0049f5f0
add esp, 4
mov dword [ebp - 4], eax
lea edx, [ebp - 0x138]
push edx
lea eax, [ebp - 0x1a0]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x128]
push ecx
push 0
call dword [ebp - 4]
push 0xea60
mov edx, dword [ebp - 0x134]
push edx
call dword [fcn.00402014]
mov esp, ebp
pop ebp
ret
Function at 0x4a0900
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
mov eax, dword [ebp + 0xc]
push eax
call fcn.004a0600
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x4a09cc
push 0
push 0x14
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0x4c]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [0x10008158]
push 0
push 0
push 0
lea edx, [ebp - 0x4c]
push edx
call dword [0x1000816c]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x4a0956
xor al, al
jmp 0x4a0ae3
mov dword [ebp - 0x6c], 0x1c
lea eax, [ebp - 0x6c]
push eax
push 1
push 0
push 0
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x80]
push edx
mov eax, dword [ebp - 8]
push eax
call dword [0x10008168]
test eax, eax
jne 0x4a0984
xor al, al
jmp 0x4a0ae3
mov ecx, dword [ebp + 0xc]
push ecx
call dword [0x10008084]
add eax, 2
push eax
mov edx, dword [ebp + 0xc]
push edx
push 1
lea eax, [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 8]
push ecx
call dword [0x10008174]
test eax, eax
jne 0x4a09b1
xor al, al
jmp 0x4a0ae3
lea edx, [ebp - 0x6c]
push edx
mov eax, dword [ebp - 8]
push eax
push 0x19
call dword [0x10008170]
test eax, eax
jne 0x4a09cc
xor al, al
jmp 0x4a0ae3
mov dword [ebp - 4], 0
mov byte [ebp - 0x3c], 0x6e
mov byte [ebp - 0x3b], 0x65
mov byte [ebp - 0x3a], 0x77
mov byte [ebp - 0x39], 0x64
mov byte [ebp - 0x38], 0x65
mov byte [ebp - 0x37], 0x76
mov byte [ebp - 0x36], 0x2e
mov byte [ebp - 0x35], 0x64
mov byte [ebp - 0x34], 0x6c
mov byte [ebp - 0x33], 0x6c
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x3c]
push ecx
call dword [0x1000804c]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x4a0a1f
lea edx, [ebp - 0x3c]
push edx
call dword [0x1000803c]
mov dword [ebp - 0x30], 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 - 0x30]
push ecx
call dword [0x10008034]
mov dword [ebp - 0x50], eax
lea edx, [ebp - 4]
push edx
push 1
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
push 0
call dword [ebp - 0x50]
test eax, eax
jne 0x4a0ad7
xor al, al
jmp 0x4a0ae3
mov edx, dword [ebp - 8]
push edx
call dword [0x10008164]
mov al, 1
mov esp, ebp
pop ebp
ret
Function at 0x4a0b60
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9c
push 0x289fbd13
call fcn.004a1de0
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]
push eax
lea ecx, [ebp - 0x80]
push ecx
call dword [0x10008064]
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x80]
push eax
call dword [0x10008028]
push 0
lea ecx, [ebp - 0x80]
push ecx
call dword [ebp - 0x84]
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x80]
push eax
call dword [0x10008064]
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x80]
push edx
call dword [0x10008028]
push 0
lea eax, [ebp - 0x80]
push eax
call dword [ebp - 0x84]
mov esp, ebp
pop ebp
ret
Function at 0x4a1c60
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 0x4a1cd8
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
cmp eax, 0x41
jl 0x4a1cb1
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
cmp edx, 0x5a
jg 0x4a1cb1
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 0x4a1cc3
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 0x4a1c7b
mov eax, dword [ebp - 0xc]
and eax, 0x7fffffff
mov esp, ebp
pop ebp
ret

Function at 0x4a1cf0
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 0x4a1d26
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 0x4a1d84
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.004a1c60
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp + 0xc]
jne 0x4a1d82
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 0x4a1d86
jmp 0x4a1d1d
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x4a1d90
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 [0x1000804c]
mov esp, ebp
pop ebp
ret
Function at 0x4aea70
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 0x4aeae8
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
cmp eax, 0x41
jl 0x4aeac1
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
cmp edx, 0x5a
jg 0x4aeac1
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 0x4aead3
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 0x4aea8b
mov eax, dword [ebp - 0xc]
and eax, 0x7fffffff
mov esp, ebp
pop ebp
ret

Function at 0x4aeb00
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 0x4aeb36
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 0x4aeb94
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.004aea70
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp + 0xc]
jne 0x4aeb92
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 0x4aeb96
jmp 0x4aeb2d
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x4aeba0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get number of processors

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
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
push ebx
push ecx
mov ebx, dword fs:[0x30]
mov ecx, dword [ebx + 0xc]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x14], eax
pop ecx
pop ebx
push 0x3777cccb
mov eax, dword [ebp - 0x14]
push eax
call fcn.004aeb00
add esp, 8
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x10]
push ecx
call dword [ebp - 0x18]
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4af5a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x154
push 0x74e3bb2e
call fcn.004aec20
add esp, 4
mov dword [ebp - 0x14c], eax
push 0x3749ca10
call fcn.004aec20
add esp, 4
mov dword [ebp - 4], eax
push 0x49f43cb7
call fcn.004aec20
add esp, 4
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x18], 0x23ec5044
mov dword [ebp - 0x14], 0x33af2093
push 0
push 2
call dword [ebp - 0x14c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x148], 0x128
lea eax, [ebp - 0x148]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [ebp - 4]
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x140]
push eax
call fcn.004af470
add esp, 8
test eax, eax
je 0x4af694
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x140]
push edx
call fcn.004af470
add esp, 8
test eax, eax
je 0x4af694
lea eax, [ebp - 0x124]
push eax
push 0x100040bc
call dword [0x1000401c]
test eax, eax
je 0x4af694
mov dword [0x10006110], 0
mov ecx, dword [ebp - 0x140]
mov dword [ebp - 0x154], ecx
lea edx, [ebp - 0x154]
push edx
push 0x10001b60
call dword [0x10004088]
cmp dword [0x10006110], 0xa
jbe 0x4af690
mov eax, 1
jmp 0x4af6f6
xor eax, eax
jmp 0x4af6f6
lea eax, [ebp - 0x148]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [ebp - 0x150]
test eax, eax
jne 0x4af612
mov byte [ebp - 0x10], 0x4d
mov byte [ebp - 0xf], 0x69
mov byte [ebp - 0xe], 0x6e
mov byte [ebp - 0xd], 0x69
mov byte [ebp - 0xc], 0x53
mov byte [ebp - 0xb], 0x6e
mov byte [ebp - 0xa], 0x69
mov byte [ebp - 9], 0x66
mov byte [ebp - 8], 0x66
mov byte [ebp - 7], 0x65
mov byte [ebp - 6], 0x72
mov byte [ebp - 5], 0
lea edx, [ebp - 0x10]
push edx
push 0
call dword [0x10004080]
test eax, eax
je 0x4af6f4
mov eax, 1
jmp 0x4af6f6
xor eax, eax
mov esp, ebp
pop ebp
ret
Function at 0x4b07e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x698
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x110]
push ecx
call dword [0x10004060]
push 0x1000409c
lea edx, [ebp - 0x110]
push edx
call dword [0x10004014]
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x110]
push ecx
call dword [0x1000403c]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x4b082e
jmp 0x4b0a7e
cmp dword [ebp - 0x250], 0x10
jne 0x4b0899
movsx edx, byte [ebp - 0x224]
cmp edx, 0x2e
je 0x4b0899
mov byte [ebp - 0x254], 0x5c
mov byte [ebp - 0x253], 0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x360]
push ecx
call dword [0x10004060]
lea edx, [ebp - 0x254]
push edx
lea eax, [ebp - 0x360]
push eax
call dword [0x10004014]
lea ecx, [ebp - 0x224]
push ecx
lea edx, [ebp - 0x360]
push edx
call dword [0x10004014]
lea eax, [ebp - 0x360]
push eax
call fcn.004b07e0
add esp, 4
push 0x100040a4
lea ecx, [ebp - 0x224]
push ecx
call fcn.004aff70
add esp, 8
test eax, eax
je 0x4b091f
lea edx, [ebp - 0x224]
push edx
call dword [0x10004004]
movsx eax, byte [ebp + eax - 0x225]
cmp eax, 0x74
jne 0x4b091f
mov byte [ebp - 0x46c], 0x5c
mov byte [ebp - 0x46b], 0
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x468]
push edx
call dword [0x10004060]
lea eax, [ebp - 0x46c]
push eax
lea ecx, [ebp - 0x468]
push ecx
call dword [0x10004014]
lea edx, [ebp - 0x224]
push edx
lea eax, [ebp - 0x468]
push eax
call dword [0x10004014]
lea ecx, [ebp - 0x468]
push ecx
call dword [0x10004074]
push 0x100040ac
lea edx, [ebp - 0x224]
push edx
call fcn.004aff70
add esp, 8
test eax, eax
je 0x4b0a5b
lea eax, [ebp - 0x224]
push eax
call dword [0x10004004]
movsx ecx, byte [ebp + eax - 0x225]
cmp ecx, 0x65
jne 0x4b0a5b
mov byte [ebp - 0x57c], 0x5c
mov byte [ebp - 0x57b], 0
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x578]
push eax
call dword [0x10004060]
lea ecx, [ebp - 0x57c]
push ecx
lea edx, [ebp - 0x578]
push edx
call dword [0x10004014]
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x578]
push ecx
call dword [0x10004014]
push 0
lea edx, [ebp - 0x578]
push edx
call fcn.004affd0
add esp, 8
movzx eax, al
test eax, eax
je 0x4b0a5b
push 0x104
lea ecx, [ebp - 0x698]
push ecx
call dword [0x10004010]
mov byte [ebp - 0x58c], 0x5c
mov byte [ebp - 0x58b], 0x5c
mov byte [ebp - 0x58a], 0x73
mov byte [ebp - 0x589], 0x79
mov byte [ebp - 0x588], 0x73
mov byte [ebp - 0x587], 0x74
mov byte [ebp - 0x586], 0x65
mov byte [ebp - 0x585], 0x6d
mov byte [ebp - 0x584], 0x2e
mov byte [ebp - 0x583], 0x65
mov byte [ebp - 0x582], 0x78
mov byte [ebp - 0x581], 0x65
mov byte [ebp - 0x580], 0
lea edx, [ebp - 0x58c]
push edx
lea eax, [ebp - 0x698]
push eax
call dword [0x10004014]
lea ecx, [ebp - 0x698]
push ecx
lea edx, [ebp - 0x578]
push edx
call fcn.004affd0
add esp, 8
push 0x64
call dword [0x10004034]
lea eax, [ebp - 0x250]
push eax
mov ecx, dword [ebp - 4]
push ecx
call dword [0x10004054]
test eax, eax
jne 0x4b082e
mov edx, dword [ebp - 4]
push edx
call dword [0x1000404c]
mov esp, ebp
pop ebp
ret
Function at 0x402a80
Capabilities:
Accept command line arguments

Disassembly:
push ebx
push esi
push edi
add esp, 0xfffffef8
mov ebx, edx
mov esi, eax
mov eax, ebx
call fcn.004046cc
test esi, esi
jne 0x402ab6
push 0x105
lea eax, [esp + 4]
push eax
push 0
call sub.kernel32.dll_GetModuleFileNameA
mov ecx, eax
mov edx, esp
mov eax, ebx
call fcn.004047bc
jmp 0x402ad4
call sub.kernel32.dll_GetCommandLineA
mov edi, eax
mov edx, ebx
mov eax, edi
call fcn.00402934
mov edi, eax
test esi, esi
je 0x402ad4
cmp dword [ebx], 0
je 0x402ad4
dec esi
jmp 0x402abd
add esp, 0x108
pop edi
pop esi
pop ebx
ret

Function at 0x4037d8
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
movzx eax, word [0x47f00c]
mov dword [ebp - 8], eax
lea eax, [ebp - 4]
push eax
push 1
push 0
push 0x403870
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA
test eax, eax
jne 0x403850
xor eax, eax
push ebp
push 0x403849
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0xc], 4
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0
push 0x40388c
mov eax, dword [ebp - 4]
push eax
call sub.advapi32.dll_RegQueryValueExA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x403850
mov eax, dword [ebp - 4]
push eax
call sub.advapi32.dll_RegCloseKey
ret
mov ax, word [0x47f00c]
and ax, 0xffc0
mov dx, word [ebp - 8]
and dx, 0x3f
or ax, dx
mov word [0x47f00c], ax
mov esp, ebp
pop ebp
ret

Function at 0x404550
Capabilities:
Write file on windows

Disassembly:
push ecx
cmp byte [0x48104c], 0
je 0x4045b1
cmp word [0x481220], 0xd7b2
jne 0x404579
cmp dword [0x481228], 0
jbe 0x404579
mov eax, 0x48121c
call dword [0x481238]
push 0
lea eax, [esp + 4]
push eax
push 0x1e
push 0x47f054
push 0xfffffffffffffff5
call sub.kernel32.dll_GetStdHandle
push eax
call sub.kernel32.dll_WriteFile
push 0
lea eax, [esp + 4]
push eax
push 2
push 0x4045d8
push 0xfffffffffffffff5
call sub.kernel32.dll_GetStdHandle
push eax
call sub.kernel32.dll_WriteFile
pop edx
ret
cmp byte [0x47f01c], 0
jne 0x4045cd
push 0
push 0x47f074
push 0x47f054
push 0
call sub.user32.dll_MessageBoxA
pop edx
ret
Function at 0x406088
Capabilities:
Get geographical location
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffee0
push ebx
push esi
mov dword [ebp - 4], eax
push 0x105
lea eax, [ebp - 0x11d]
push eax
push 0
call sub.kernel32.dll_GetModuleFileNameA
mov byte [ebp - 0x12], 0
lea eax, [ebp - 8]
push eax
push 0xf0019
push 0
push 0x4062b8
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA
test eax, eax
je 0x40610b
lea eax, [ebp - 8]
push eax
push 0xf0019
push 0
push 0x4062b8
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA
test eax, eax
je 0x40610b
lea eax, [ebp - 8]
push eax
push 0xf0019
push 0
push 0x4062d4
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA
test eax, eax
jne 0x406194
xor eax, eax
push ebp
push 0x40618d
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x18], 5
lea eax, [ebp - 0x11d]
mov edx, 0x105
call fcn.00405ed0
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x12]
push eax
push 0
push 0
lea eax, [ebp - 0x11d]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.advapi32.dll_RegQueryValueExA
test eax, eax
je 0x406172
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x12]
push eax
push 0
push 0
push 0x4062f4
mov eax, dword [ebp - 8]
push eax
call sub.advapi32.dll_RegQueryValueExA
test eax, eax
je 0x406172
mov byte [ebp - 0x12], 0
mov byte [ebp - 0xe], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x406194
mov eax, dword [ebp - 8]
push eax
call sub.advapi32.dll_RegCloseKey
ret
push 0x105
mov eax, dword [ebp - 4]
push eax
lea eax, [ebp - 0x11d]
push eax
call sub.kernel32.dll_lstrcpynA
push 5
lea eax, [ebp - 0xd]
push eax
push 3
call sub.kernel32.dll_GetThreadLocale
push eax
call sub.kernel32.dll_GetLocaleInfoA
xor esi, esi
cmp byte [ebp - 0x11d], 0
je 0x4062ae
cmp byte [ebp - 0xd], 0
jne 0x4061db
cmp byte [ebp - 0x12], 0
je 0x4062ae
lea eax, [ebp - 0x11d]
push eax
call sub.kernel32.dll_lstrlenA
mov ebx, eax
lea eax, [ebp - 0x11d]
add ebx, eax
jmp 0x4061f4
dec ebx
cmp byte [ebx], 0x2e
je 0x406203
lea eax, [ebp - 0x11d]
cmp ebx, eax
jne 0x4061f3
lea eax, [ebp - 0x11d]
cmp ebx, eax
je 0x4062ae
inc ebx
cmp byte [ebp - 0x12], 0
je 0x406240
mov edx, ebx
sub edx, eax
mov eax, 0x105
sub eax, edx
push eax
lea eax, [ebp - 0x12]
push eax
push ebx
call sub.kernel32.dll_lstrcpynA
push 2
push 0
lea eax, [ebp - 0x11d]
push eax
call sub.kernel32.dll_LoadLibraryExA
mov esi, eax
test esi, esi
jne 0x4062ae
cmp byte [ebp - 0xd], 0
je 0x4062ae
lea eax, [ebp - 0x11d]
mov edx, ebx
sub edx, eax
mov eax, 0x105
sub eax, edx
push eax
lea eax, [ebp - 0xd]
push eax
push ebx
call sub.kernel32.dll_lstrcpynA
push 2
push 0
lea eax, [ebp - 0x11d]
push eax
call sub.kernel32.dll_LoadLibraryExA
mov esi, eax
test esi, esi
jne 0x4062ae
mov byte [ebp - 0xb], 0
lea eax, [ebp - 0x11d]
mov edx, ebx
sub edx, eax
mov eax, 0x105
sub eax, edx
push eax
lea eax, [ebp - 0xd]
push eax
push ebx
call sub.kernel32.dll_lstrcpynA
push 2
push 0
lea eax, [ebp - 0x11d]
push eax
call sub.kernel32.dll_LoadLibraryExA
mov esi, eax
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret