joyce8/EMBER2024-capa huggingface dataset:
Function at 0x5a48c0
Capabilities:
Get session user name

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0xc], 0
cmp dword [ebp + 0xc], 0
je 0x5a48fa
cmp dword [ebp + 8], 0
jne 0x5a48fa
jmp 0x5a49a0
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
cmp dword [ebp - 8], 0
je 0x5a49a0
mov edx, dword [ebp - 8]
shl edx, 1
push edx
call fcn.0053568a
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x5a49a0
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x5a49a0
lea edx, [ebp - 8]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.005a3950
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x5a49a0
cmp dword [ebp + 0xc], 0
je 0x5a499a
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp + 0xc]
jle 0x5a4970
mov edx, dword [ebp + 0xc]
sub edx, 1
mov dword [ebp - 8], edx
push 0
mov eax, dword [ebp + 0xc]
push eax
push 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.005290a0
add esp, 0x10
push 0
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00528d90
add esp, 0x10
mov edx, dword [ebp - 8]
mov dword [ebp - 0x10], edx
cmp dword [ebp - 4], 0
je 0x5a49b9
mov eax, dword [ebp - 4]
push eax
call fcn.005844f0
add esp, 4
mov dword [ebp - 4], 0
cmp dword [ebp - 0xc], 0
je 0x5a49d2
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.005844f0
add esp, 4
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
Function at 0x5a4af0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.005a35a0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x5a4bee
push 0
push 0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x5a4bee
cmp dword [ebp + 0x10], 0
je 0x5a4bee
mov eax, dword [ebp - 0xc]
push eax
call fcn.0053568a
add esp, 4
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x5a4bee
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x5a4bee
lea ecx, [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.005a3ab0
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x5a4bd3
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp + 0x10]
jle 0x5a4bb2
mov ecx, dword [ebp + 0x10]
sub ecx, 1
mov dword [ebp - 0xc], ecx
push 0
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00528450
add esp, 0x10
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 0xc]
mov byte [edx], 0
jmp 0x5a4bee
mov dword [ebp - 0xc], 0
push 0
mov eax, dword [ebp + 0x10]
push eax
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.005290a0
add esp, 0x10
cmp dword [ebp - 8], 0
je 0x5a4c07
mov edx, dword [ebp - 8]
push edx
call fcn.005844f0
add esp, 4
mov dword [ebp - 8], 0
cmp dword [ebp - 4], 0
je 0x5a4c20
mov eax, dword [ebp - 4]
push eax
call fcn.005844f0
add esp, 4
mov dword [ebp - 4], 0
cmp dword [ebp - 0x10], 0
je 0x5a4c39
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.005844f0
add esp, 4
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
Function at 0x5a4c40
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0xc], 0
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.005a38a0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x5a4d40
push 0
push 0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x5a4d40
cmp dword [ebp + 0x10], 0
je 0x5a4d40
mov eax, dword [ebp - 8]
shl eax, 1
push eax
call fcn.0053568a
add esp, 4
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x5a4d40
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x5a4d40
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp - 0x10]
push edx
call fcn.005a3950
add esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x5a4d25
mov eax, dword [ebp - 8]
cmp eax, dword [ebp + 0x10]
jle 0x5a4d04
mov ecx, dword [ebp + 0x10]
sub ecx, 1
mov dword [ebp - 8], ecx
push 0
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00528450
add esp, 0x10
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 8]
mov byte [edx], 0
jmp 0x5a4d40
mov dword [ebp - 8], 0
push 0
mov eax, dword [ebp + 0x10]
push eax
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.005290a0
add esp, 0x10
cmp dword [ebp - 0x10], 0
je 0x5a4d59
mov edx, dword [ebp - 0x10]
push edx
call fcn.005844f0
add esp, 4
mov dword [ebp - 0x10], 0
cmp dword [ebp - 4], 0
je 0x5a4d72
mov eax, dword [ebp - 4]
push eax
call fcn.005844f0
add esp, 4
mov dword [ebp - 4], 0
cmp dword [ebp - 0xc], 0
je 0x5a4d8b
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.005844f0
add esp, 4
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret
Function at 0x5bcd60
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x444
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 8], eax
mov byte [ebp - 0x410], 0
push 0x400
push 0
lea eax, [ebp - 0x40f]
push eax
call fcn.00532e90
add esp, 0xc
mov dword [ebp - 0x414], 0
mov dword [ebp - 0x420], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x418], 0
cmp dword [ebp + 8], 0
je 0x5bcdd7
push 0
push 0x400
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x410]
push edx
call fcn.00528450
add esp, 0x10
jmp 0x5bcdfc
cmp dword [ebp + 8], 0
jne 0x5bcdfc
push 0x400
lea eax, [ebp - 0x410]
push eax
call fcn.005a49e0
add esp, 8
test eax, eax
je 0x5bcdfc
xor eax, eax
jmp 0x5bcfb8
push 1
call fcn.005be420
add esp, 4
test eax, eax
jne 0x5bce11
xor eax, eax
jmp 0x5bcfb8
push 0x400
lea ecx, [ebp - 0x410]
push ecx
call fcn.00596150
add esp, 8
lea edx, [ebp - 4]
push edx
lea eax, [ebp - 0x410]
push eax
call fcn.005a35a0
add esp, 8
mov dword [ebp - 0x414], eax
push 0
push 0x20
push 0
lea ecx, [ebp - 0x440]
push ecx
call fcn.005290a0
add esp, 0x10
mov dword [ebp - 0x440], 2
mov dword [ebp - 0x438], 1
mov dword [ebp - 0x43c], 2
cmp dword [ebp - 0x414], 0
je 0x5bce88
mov edx, dword [ebp - 0x414]
mov dword [ebp - 0x444], edx
jmp 0x5bce94
lea eax, [ebp - 0x410]
mov dword [ebp - 0x444], eax
lea ecx, [ebp - 0x420]
push ecx
lea edx, [ebp - 0x440]
push edx
push 0
mov eax, dword [ebp - 0x444]
push eax
call dword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x5bcebe
cmp dword [ebp - 0x420], 0
jne 0x5bcedd
cmp dword [ebp - 0x414], 0
je 0x5bced6
mov ecx, dword [ebp - 0x414]
push ecx
call fcn.005844f0
add esp, 4
xor eax, eax
jmp 0x5bcfb8
mov edx, dword [ebp - 0x420]
mov dword [ebp - 0x41c], edx
jmp 0x5bcefa
mov eax, dword [ebp - 0x41c]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x41c], ecx
cmp dword [ebp - 0x41c], 0
je 0x5bcf8d
push 0
mov edx, dword [ebp + 0x10]
push edx
push 0
mov eax, dword [ebp + 0xc]
push eax
call fcn.005290a0
add esp, 0x10
push 2
push 0
push 0
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x41c]
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp - 0x41c]
mov eax, dword [edx + 0x18]
push eax
call dword [sym.imp.WS2_32.dll_getnameinfo]
test eax, eax
je 0x5bcf49
jmp 0x5bceeb
push 0
push str.127.0.0.1
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.005286c0
add esp, 0xc
test eax, eax
je 0x5bcf77
push 0
push str.0.0.0.0
mov edx, dword [ebp + 0xc]
push edx
call fcn.005286c0
add esp, 0xc
test eax, eax
jne 0x5bcf7c
jmp 0x5bceeb
mov dword [ebp - 0x418], 1
jmp 0x5bcf8d
mov eax, dword [ebp - 0x420]
push eax
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
cmp dword [ebp - 0x414], 0
je 0x5bcfb2
mov ecx, dword [ebp - 0x414]
push ecx
call fcn.005844f0
add esp, 4
mov eax, dword [ebp - 0x418]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret
Function at 0x5c92c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp + 0x10]
and ecx, 0xff
mov byte [ebp - 8], cl
mov edx, dword [ebp + 0x10]
sar edx, 8
and edx, 0xff
mov byte [ebp - 7], dl
mov eax, dword [ebp + 0x10]
sar eax, 0x10
and eax, 0xff
mov byte [ebp - 6], al
mov ecx, dword [ebp + 0x10]
sar ecx, 0x18
and ecx, 0xff
mov byte [ebp - 5], cl
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
sub eax, 1
mov dword [ebp + 0xc], eax
test edx, edx
je 0x5c9351
mov ecx, dword [ebp - 4]
movsx edx, byte [ebp + ecx - 8]
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
xor ecx, edx
mov edx, dword [ebp + 8]
mov byte [edx], cl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 3
jle 0x5c9346
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 8]
add ecx, 1
mov dword [ebp + 8], ecx
jmp 0x5c930b
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret

Function at 0x5d9d20
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp dword [ebp + 0x10], 0
je 0x5d9d34
mov eax, dword [ebp + 0x10]
mov dword [0x6b224c], eax
jmp 0x5d9d3e
mov dword [0x6b224c], 0xffffffff
mov ecx, dword [ebp + 0x14]
mov dword [0x6b2244], ecx
cmp dword [0x6b045c], 0
je 0x5d9d5f
mov edx, dword [0x6b2240]
push edx
call dword [sym.imp.KERNEL32.dll_SetEvent]
jmp 0x5d9dd0
push 0
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [0x6b2240], eax
cmp dword [0x6b2240], 0
jne 0x5d9d7f
xor eax, eax
jmp 0x5d9dd5
push 4
push 1
call fcn.005384fe
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x5d9d98
xor eax, eax
jmp 0x5d9dd5
mov eax, dword [ebp - 4]
mov ecx, dword [0x6b2240]
mov dword [eax], ecx
mov edx, dword [ebp - 4]
push edx
push 0
push 0x5d9c90
call fcn.0053a025
add esp, 0xc
mov dword [0x6b045c], eax
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x6b045c], 0
jne 0x5d9dd0
xor eax, eax
jmp 0x5d9dd5
mov eax, dword [0x6b045c]
mov esp, ebp
pop ebp
ret

Function at 0x5d9e10
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.0053a7bc
add esp, 4
mov dword [0x6b0050], eax
cmp dword [0x6b0050], 0
je 0x5d9e37
mov eax, dword [0x6b0050]
jmp 0x5d9eb2
lea ecx, [ebp - 4]
push ecx
push 1
push 0
push str.SOFTWAREFLEXlm_License_Manager
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x5d9eb0
mov dword [ebp - 0xc], 0x400
lea edx, [ebp - 0xc]
push edx
push 0x6b0058
lea eax, [ebp - 0x10]
push eax
push 0
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x5d9ea2
mov dword [0x6b0050], 0x6b0058
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [0x6b0050]
jmp 0x5d9eb2
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x5d9eb2
xor eax, eax
mov esp, ebp
pop ebp
ret
Function at 0x5e13f0
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push ecx
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [eax + 8], 0
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0xc], 0
je 0x5e142f
push 1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
push eax
call fcn.005e1360
add esp, 8
cmp eax, 0xffffffff
jne 0x5e142f
call fcn.005e1130
mov ecx, dword [ebp + 8]
mov dword [ecx + 8], eax
call fcn.005e1460
test eax, eax
je 0x5e144f
push 4
lea edx, [ebp - 4]
push edx
push 0x1b
push 0x29
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.WSOCK32.dll_setsockopt]
mov esp, ebp
pop ebp
ret

Function at 0x5e1460
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 0xc], 0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0xffff
movzx ecx, ax
and ecx, 0xff
movzx edx, cl
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
and eax, 0xffff
movzx ecx, ax
shr ecx, 8
and ecx, 0xff
movzx edx, cl
mov dword [ebp - 8], edx
cmp dword [ebp - 0x10], 6
jb 0x5e14b4
mov dword [ebp - 0xc], 1
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
Function at 0x605c10
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 8], eax
mov byte [ebp - 0x40], 0xc
mov byte [ebp - 0x3f], 0x52
mov byte [ebp - 0x3e], 0xe3
mov byte [ebp - 0x3d], 0xa8
mov byte [ebp - 0x3c], 0xf6
mov byte [ebp - 0x3b], 0xd4
mov byte [ebp - 0x3a], 0xc7
mov byte [ebp - 0x39], 0x68
mov byte [ebp - 0x38], 0xf2
mov byte [ebp - 0x37], 0x36
mov byte [ebp - 0x36], 0x1c
mov byte [ebp - 0x35], 0x88
mov byte [ebp - 0x34], 0x15
mov byte [ebp - 0x33], 0x36
mov byte [ebp - 0x32], 0x97
mov byte [ebp - 0x31], 0xde
mov byte [ebp - 0x30], 0x55
mov byte [ebp - 0x2f], 0x9a
mov byte [ebp - 0x2e], 0x9e
mov byte [ebp - 0x2d], 0xdf
mov byte [ebp - 0x2c], 5
mov byte [ebp - 0x2b], 0xd5
mov byte [ebp - 0x2a], 0xf3
mov byte [ebp - 0x29], 0x52
mov byte [ebp - 0x28], 0xe1
mov byte [ebp - 0x27], 0xe1
mov byte [ebp - 0x26], 0xcb
mov byte [ebp - 0x25], 0xfb
mov byte [ebp - 0x24], 0xb4
mov byte [ebp - 0x23], 0x74
mov byte [ebp - 0x22], 0x74
mov byte [ebp - 0x21], 0xca
mov byte [ebp - 0x20], 0x29
mov byte [ebp - 0x1f], 0xed
mov byte [ebp - 0x1e], 0x72
mov byte [ebp - 0x1d], 0x62
mov byte [ebp - 0x1c], 0x6a
mov byte [ebp - 0x1b], 0xba
mov byte [ebp - 0x1a], 0x33
mov byte [ebp - 0x19], 0xa1
mov byte [ebp - 0x18], 0xb0
mov byte [ebp - 0x17], 0x2b
mov byte [ebp - 0x16], 0x27
mov byte [ebp - 0x15], 0x60
mov byte [ebp - 0x14], 0x87
mov byte [ebp - 0x13], 0x81
mov byte [ebp - 0x12], 0xd1
mov byte [ebp - 0x11], 0xa4
mov byte [ebp - 0x10], 0x10
mov byte [ebp - 0xf], 0xf7
mov byte [ebp - 0xe], 0xd2
mov byte [ebp - 0xd], 0x6b
mov byte [ebp - 0xc], 0xce
mov byte [ebp - 0xb], 0xb5
mov byte [ebp - 0xa], 0x12
mov byte [ebp - 9], 0xc5
mov dword [ebp - 0x44], 0x38
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0x10]
add eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 0x44]
ja 0x605d33
push 0
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 0x10]
lea eax, [ebp + edx - 0x40]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00528d90
add esp, 0x10
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret

Function at 0x6062b0
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 0x14], eax
push 0
push 0x6a1688
lea eax, [ebp - 0x28]
push eax
call fcn.00528300
add esp, 0xc
mov dword [ebp - 0x10], 0
jmp 0x6062e5
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 3
jge 0x606306
lea edx, [ebp - 0x28]
push edx
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
cmp eax, 3
jne 0x6062fc
jmp 0x606306
mov al, byte [ebp - 0x28]
sub al, 1
mov byte [ebp - 0x28], al
jmp 0x6062dc
push 0
push 0
lea ecx, [ebp - 0xc]
push ecx
lea edx, [ebp - 4]
push edx
lea eax, [ebp - 8]
push eax
push 0
push 0
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret
Function at 0x606c00
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 8], 0x68e878
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00612fe0
add esp, 0xc
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
call fcn.00613200
add esp, 8
push 0x40
push 0x1000
mov edx, dword [ebp - 0xc]
add edx, 0xa
push edx
push 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x606c54
xor eax, eax
jmp 0x606c8d
push 0
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00528d90
add esp, 0x10
push 0
mov eax, dword [ebp - 0xc]
push eax
push 0
mov ecx, dword [ebp - 8]
push ecx
call fcn.005290a0
add esp, 0x10
mov edx, dword [ebp - 8]
push edx
call fcn.005844f0
add esp, 4
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
Function at 0x611780
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc50
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x41c], 0
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
push 0
push 0x401
push 0
lea ecx, [ebp - 0x828]
push ecx
call fcn.005290a0
add esp, 0x10
push 0
push 0x20
push 0
lea edx, [ebp - 0x848]
push edx
call fcn.005290a0
add esp, 0x10
push 0
push 0x401
push 0
lea eax, [ebp - 0x418]
push eax
call fcn.005290a0
add esp, 0x10
push 0
push 0x401
push 0
lea ecx, [ebp - 0xc50]
push ecx
call fcn.005290a0
add esp, 0x10
push 0xa
push 0x20
lea edx, [ebp - 0x848]
push edx
push 0x401
lea eax, [ebp - 0x828]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.WS2_32.dll_getnameinfo]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x611850
mov eax, dword [ebp - 4]
push eax
call fcn.005be710
add esp, 4
mov eax, dword [ebp - 0x41c]
jmp 0x611885
lea ecx, [ebp - 0x848]
push ecx
call fcn.0053748b
add esp, 4
mov dword [ebp - 8], eax
lea edx, [ebp - 0x828]
push edx
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call fcn.006118a0
add esp, 0x10
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x41c]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret
Function at 0x611ce0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 4], eax
mov byte [ebp - 0x3c], 0x6c
mov byte [ebp - 0x3b], 0xb0
mov byte [ebp - 0x3a], 0x4b
mov byte [ebp - 0x39], 0xa0
mov byte [ebp - 0x38], 0xad
mov byte [ebp - 0x37], 0xef
mov byte [ebp - 0x36], 0x73
mov byte [ebp - 0x35], 0x4e
mov byte [ebp - 0x34], 0xa3
mov byte [ebp - 0x33], 0x2f
mov byte [ebp - 0x32], 0x90
mov byte [ebp - 0x31], 0xd2
mov byte [ebp - 0x30], 0xb0
mov byte [ebp - 0x2f], 0x45
mov byte [ebp - 0x2e], 0xa2
mov byte [ebp - 0x2d], 0x75
mov byte [ebp - 0x2c], 0x85
mov byte [ebp - 0x2b], 0xe8
mov byte [ebp - 0x2a], 0xa3
mov byte [ebp - 0x29], 0xfb
mov byte [ebp - 0x28], 0x7b
mov byte [ebp - 0x27], 0xd4
mov byte [ebp - 0x26], 0x81
mov byte [ebp - 0x25], 0x38
mov byte [ebp - 0x24], 0xd6
mov byte [ebp - 0x23], 0xf5
mov byte [ebp - 0x22], 0xdc
mov byte [ebp - 0x21], 0xa4
mov byte [ebp - 0x20], 0xba
mov byte [ebp - 0x1f], 0x4c
mov byte [ebp - 0x1e], 0xf8
mov byte [ebp - 0x1d], 0xb9
mov byte [ebp - 0x1c], 0xe9
mov byte [ebp - 0x1b], 0x83
mov byte [ebp - 0x1a], 0x8a
mov byte [ebp - 0x19], 0x7f
mov byte [ebp - 0x18], 0xa6
mov byte [ebp - 0x17], 0x18
mov byte [ebp - 0x16], 0xac
mov byte [ebp - 0x15], 0x17
mov byte [ebp - 0x14], 0xb9
mov byte [ebp - 0x13], 0x88
mov byte [ebp - 0x12], 0x11
mov byte [ebp - 0x11], 0xaa
mov byte [ebp - 0x10], 0x7a
mov byte [ebp - 0xf], 0x47
mov byte [ebp - 0xe], 0xf3
mov byte [ebp - 0xd], 0x76
mov byte [ebp - 0xc], 0x37
mov byte [ebp - 0xb], 0x74
mov byte [ebp - 0xa], 2
mov byte [ebp - 9], 0xa
mov byte [ebp - 8], 0x1d
mov byte [ebp - 7], 0x3a
mov byte [ebp - 6], 0x9c
mov byte [ebp - 5], 0x69
mov dword [ebp - 0x44], 0x38
mov dword [ebp - 0x40], 0
mov eax, dword [ebp + 0x10]
add eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 0x44]
ja 0x611e03
push 0
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 0x10]
lea eax, [ebp + edx - 0x3c]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00528d90
add esp, 0x10
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret
Function at 0x611e20
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x130
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12c], 0
lea eax, [ebp - 0x10]
push eax
push 0x20019
push 0
push str.SoftwareMicrosoftWindows_NTCurrentVersionNetworkCards
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x611f86
mov dword [ebp - 0x18], 0x104
mov dword [ebp - 0xc], 0
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x130], ecx
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x130]
push ecx
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
test eax, eax
jne 0x611f7a
lea edx, [ebp - 0x14]
push edx
push 0x20019
push 0
lea eax, [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x611f64
mov dword [ebp - 0x18], 0
lea edx, [ebp - 0x18]
push edx
push 0
lea eax, [ebp - 4]
push eax
push 0
push 0x6a444c
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x18]
add edx, 1
push edx
call fcn.0053568a
add esp, 4
mov dword [ebp - 0x12c], eax
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x12c]
push ecx
lea edx, [ebp - 4]
push edx
push 0
push str.ServiceName
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [ebp - 8], eax
cmp dword [ebp - 0x12c], 0
je 0x611f55
push 0
mov ecx, dword [ebp - 0x12c]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00528300
add esp, 0xc
mov eax, dword [ebp - 0x12c]
push eax
call fcn.005844f0
add esp, 4
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x18], 0x104
jmp 0x611e73
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x611f8d
mov eax, 0xffffff01
jmp 0x611f8f
xor eax, eax
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret
Function at 0x6124b0
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x6a5f90]
xor eax, ebp
mov dword [ebp - 4], eax
mov byte [ebp - 0x110], 0
push 0x103
push 0
lea eax, [ebp - 0x10f]
push eax
call fcn.00532e90
add esp, 0xc
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
cmp dword [0x6b0dd8], 0
jne 0x6125d1
call sub.KERNEL32.dll_GetCurrentProcessId
push eax
push str.IPHelperMutex
push str._s__d
lea ecx, [ebp - 0x110]
push ecx
call fcn.00536483
add esp, 0x10
lea edx, [ebp - 0x110]
push edx
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0
jne 0x61254c
xor eax, eax
jmp 0x6125d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x612568
push 0xffffffffffffffff
mov eax, dword [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp dword [0x6b0dd8], 0
jne 0x6125b7
push str.iphlpapi.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x6b0ddc], eax
cmp dword [0x6b0ddc], 0
jne 0x612596
mov dword [ebp - 0x114], 0xfffffffe
jmp 0x6125ad
push str.GetAdaptersAddresses
mov ecx, dword [0x6b0ddc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6b0dd4], eax
mov dword [0x6b0dd8], 1
mov edx, dword [ebp - 0x118]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, dword [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005327db
mov esp, ebp
pop ebp
ret