joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1c85f98
Capabilities:
Check os version
Create pipe

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x30
mov esi, dword [ebp + 8]
mov al, byte [ebp + 0xc]
mov ecx, dword [0x1cea148]
xor ecx, ebp
mov dword [ebp - 0x10], ecx
xor ecx, ecx
dec ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], ecx
xor edi, edi
mov ebx, 3
test al, al
je 0x1c85ffd
call dword [sym.imp.kernel32.dll_GetVersion]
and eax, 0xfe
mov ebx, 0x80003
cmp eax, 6
jb 0x1c85ffd
lea edi, [ebp - 0x1c]
mov dword [edi], 0xc
mov dword [esp], 0
call fcn.01c86043
mov dword [edi + 4], eax
mov dword [edi + 8], 1
cmp byte [esi + 0xb], 0
jns 0x1c86005
mov esi, dword [esi]
mov dword [esp + 0x1c], edi
movaps xmm0, xmmword [0x1cc1f70]
movups xmmword [esp + 8], xmm0
mov dword [esp + 4], ebx
mov dword [esp], esi
mov dword [esp + 0x18], 0
call dword [sym.imp.kernel32.dll_CreateNamedPipeW]
sub esp, 0x20
mov esi, eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.01c8b52d
mov eax, esi
add esp, 0x30
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x1c86258
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xb0
mov esi, dword [ebp + 8]
mov eax, dword [0x1cea148]
xor eax, ebp
mov dword [ebp - 0x10], eax
call dword [sym.imp.kernel32.dll_GetVersion]
mov ecx, eax
and ecx, 0xfe
cmp ecx, 6
jb 0x1c86319
and eax, 0xfeff
cmp eax, 6
je 0x1c86319
mov eax, dword [0x1ced988]
mov ecx, dword [0x1ced9a0]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 8]
jg 0x1c86339
push 0x10000000
push 0
push esi
call dword [0x1ced984]
mov esi, eax
test eax, eax
jne 0x1c86312
push 2
call fcn.01c4d1b0
add esp, 4
test al, al
je 0x1c86312
call fcn.01c4dab0
lea edi, [ebp - 0xbc]
mov ecx, edi
push eax
push 2
push 0x21
push str..._.._third_party_crashpad_crashpad_util_win_critical_section_with_debug_info.cc
call fcn.01c4dc50
lea eax, [ebp - 0xb4]
push 0x1b
push 0x1cc21ad
push eax
call fcn.01c23744
add esp, 0xc
mov ecx, edi
call fcn.01c4dd00
test esi, esi
setne bl
jmp 0x1c86322
push esi
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
mov bl, 1
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.01c8b52d
mov eax, ebx
add esp, 0xb0
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x1ced988
call fcn.01c93ccf
add esp, 4
cmp dword [0x1ced988], 0xffffffff
jne 0x1c862b7
push 1
push str.::InitializeCriticalSectionEx
push 0x1cb52f0
call fcn.01c865bc
add esp, 0xc
mov dword [0x1ced984], eax
push 0x1ced988
call fcn.01c93ccf
add esp, 4
jmp 0x1c862b7

Function at 0x1c86380
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax + 0xc]
mov ecx, dword fs:[0x18]
cmp eax, dword [ecx + 0x24]
sete al
pop ebp
ret
Function at 0x1c89f74
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x40
mov eax, dword [0x1cea148]
xor eax, ebp
mov dword [esp + 0x38], eax
cmp dword [0x1ced99c], 0
jne 0x1c8a145
push 0x64
call fcn.01c93ccf
add esp, 4
mov esi, eax
mov ecx, eax
call fcn.01c88592
mov dword [0x1ced99c], esi
mov ecx, esi
call fcn.01c88692
test al, al
je 0x1c8a145
xor eax, eax
dec eax
lea ebx, [esp + 0x2c]
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
lea esi, [esp + 0x20]
mov ecx, esi
push str.type
call fcn.01c3af3a
call dword [sym.imp.kernel32.dll_GetCommandLineW]
lea edi, [esp + 0x10]
mov ecx, edi
push eax
call fcn.01c3af3a
push esi
push edi
push ebx
call fcn.01c42b46
add esp, 0xc
cmp byte [edi + 0xb], 0
jns 0x1c8a00e
push dword [esp + 0x10]
call fcn.01c8b528
add esp, 4
cmp byte [esp + 0x2b], 0
jns 0x1c8a021
push dword [esp + 0x20]
call fcn.01c8b528
add esp, 4
push 0x1cba058
call fcn.01c93ccf
add esp, 4
movzx ecx, byte [esp + 0x37]
test cl, cl
jns 0x1c8a03b
mov ecx, dword [esp + 0x30]
cmp eax, ecx
jne 0x1c8a05a
lea ecx, [esp + 0x2c]
push eax
push 0x1cba058
push 0xffffffffffffffff
push 0
call fcn.01c3f25a
test eax, eax
je 0x1c8a132
push dword [0x1ced99c]
call fcn.01c263f0
add esp, 4
mov ecx, dword [0x1ced99c]
movzx eax, byte [ecx + 0x63]
test al, al
jns 0x1c8a079
mov eax, dword [ecx + 0x5c]
test eax, eax
je 0x1c8a0be
push ebx
push esi
call fcn.01c42d2f
add esp, 8
movzx eax, byte [esp + 0x37]
test al, al
jns 0x1c8a094
mov eax, dword [esp + 0x30]
xor ecx, ecx
test eax, eax
sete cl
push esi
push ecx
call fcn.01c7c054
add esp, 8
cmp byte [esp + 0x2b], 0
jns 0x1c8a132
push dword [esp + 0x20]
call fcn.01c8b528
add esp, 4
jmp 0x1c8a132
mov ecx, esi
call fcn.01c53240
xor eax, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], eax
lea eax, [esp + 4]
push ebx
mov ebx, eax
push eax
call fcn.01c42d2f
add esp, 8
movzx eax, byte [esp + 0x37]
test al, al
jns 0x1c8a0f0
mov eax, dword [esp + 0x30]
xor ecx, ecx
test eax, eax
sete cl
push esi
push edi
push ebx
push ecx
call fcn.01c7c2a2
add esp, 0x10
cmp byte [esp + 0xf], 0
jns 0x1c8a116
push dword [esp + 4]
call fcn.01c8b528
add esp, 4
cmp byte [esp + 0x1b], 0
jns 0x1c8a129
push dword [esp + 0x10]
call fcn.01c8b528
add esp, 4
lea ecx, [esp + 0x20]
call fcn.01c53360
cmp byte [esp + 0x37], 0
jns 0x1c8a145
push dword [esp + 0x2c]
call fcn.01c8b528
add esp, 4
mov ecx, dword [esp + 0x38]
xor ecx, ebp
call fcn.01c8b52d
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x1c93ccf
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
pushal
call 0x1c93cde
pop dword [ebp - 0x1c]
mov eax, 0xed5057a
add eax, 0xf2f43764
sub dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0x2138d4da
add dword [ebp - 0x2c], 0x2d197071
mov dword [ebp - 0x28], 0xea785e5d
sub dword [ebp - 0x28], 0xb8451218
mov dword [ebp - 0x24], 0xb20cb2f5
sub dword [ebp - 0x24], 0x65c06ec7
mov dword [ebp - 0x20], 0xa4bc29e2
sub dword [ebp - 0x20], 0xa4bc29e2
lea eax, [ebp - 0x2c]
push eax
mov eax, 0x6888c12
sub eax, 0x4bd4bbe
add eax, dword [ebp - 0x1c]
call dword [eax]
mov dword [ebp - 0x2c], 0x8da3c891
add dword [ebp - 0x2c], 0xe6cea0c5
mov dword [ebp - 0x28], 0x3d434b9b
add dword [ebp - 0x28], 0x42915da
mov dword [ebp - 0x24], 0x760b07a8
add dword [ebp - 0x24], 0xed6464c4
mov dword [ebp - 0x20], 0x535c2648
add dword [ebp - 0x20], 0xaca3d9b8
lea ebx, [ebp - 0x2c]
push ebx
push eax
mov eax, 0xaee23b1
add eax, 0xf6dd1c5b
add eax, dword [ebp - 0x1c]
call dword [eax]
push 0x40
push 0x1000
push 0x3fe69
push 0
call eax
mov ecx, 0x4081
mov edi, eax
mov esi, 0xab33d53a
add esi, 0x569bb4c6
add esi, dword [ebp - 0x1c]
mov ebx, 0x71de6fcd
sub ebx, 0x4ae1e27f
mov dword [ebp - 0x18], 0x8b72c0d7
mov edx, dword [esi]
sub dword [ebp - 0x10], edi
add edx, ebx
xor dword [ebp - 8], edx
mov dword [edi], edx
add dword [ebp - 4], 0xd858b099
add edi, 0xe6b10c3d
sub edi, 0xe6b10c39
add esi, 0xafe96779
add esi, 0x5016988b
loop 0x1c93dfa
add eax, 0xae44a0a5
add eax, 0x51bc5432
mov ebx, eax
add eax, 0x366ab746
sub eax, 0x366ab741
mov ecx, 0xa1358e8e
add ecx, 0x608c7172
add ecx, dword [ebp - 0x1c]
call ebx
leave
ret

Function at 0x402658
Capabilities:
Terminate process

Disassembly:
xor edi, edi
xor esi, esi
mov edx, eax
mov eax, 5
add eax, 5
inc eax
test eax, 0xb
jne 0x40267a
push 0
call dword [sym.imp.kernel32.dll_ExitProcess]
mov edx, eax
mov dword [0x401036], eax
ret

Function at 0x431004
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
mov eax, section..text
nop
nop
mov ebx, 0x40915c
nop
mov ecx, 0x2db71e70
nop
nop
nop
test eax, eax
nop
nop
nop
je 0x43104e
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
cmp eax, ebx
nop
nop
nop
nop
nop
nop
nop
jne 0x431024
nop
mov eax, section..data
nop
nop
mov ebx, 0x42f3f8
mov ecx, 0x4fbc419a
nop
nop
test eax, eax
nop
nop
nop
nop
nop
nop
je 0x431084
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
add eax, 4
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
jne 0x43106c
nop
nop
popal
nop
nop
nop
nop
nop
jmp 0x401219
Function at 0x4cfc60
Capabilities:
Packed with generic packer

Disassembly:
pushal
mov esi, section.UPX1
lea edi, [esi - 0x91000]
mov dword [edi + 0x907b8], 0
push edi
or ebp, 0xffffffff
jmp 0x4cfc8a
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x4cfc91
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4cfc80
mov eax, 1
add ebx, ebx
jne 0x4cfca3
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x4cfcb4
jne 0x4cfcd3
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4cfcd3
dec eax
add ebx, ebx
jne 0x4cfcc0
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x4cfc98
add ebx, ebx
jne 0x4cfccf
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x4cfd25
xor ecx, ecx
sub eax, 3
jb 0x4cfceb
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x4cfd5a
sar eax, 1
mov ebp, eax
jmp 0x4cfcf6
add ebx, ebx
jne 0x4cfcf6
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4cfcc4
inc ecx
add ebx, ebx
jne 0x4cfd04
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4cfcc4
add ebx, ebx
jne 0x4cfd11
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x4cfd06
jne 0x4cfd22
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x4cfd06
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x4cfd44
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x4cfd36
jmp 0x4cfc86
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x4cfd44
add edi, ecx
jmp 0x4cfc86
pop esi
mov edi, esi
mov ecx, 0x4d97
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x4cfd62
cmp byte [edi], 0x1f
jne 0x4cfd62
mov eax, dword [edi]
mov bl, byte [edi + 4]
shr ax, 8
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x4cfd67
lea edi, [esi + 0xcb000]
mov eax, dword [edi]
or eax, eax
je 0x4cfdd6
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0xe80d4]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0xe828c]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x4cfd94
mov ecx, edi
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0xe8290]
or eax, eax
je 0x4cfdd0
mov dword [ebx], eax
add ebx, 4
jmp 0x4cfdb1
call dword [esi + 0xe82a0]
mov ebp, dword [esi + 0xe8294]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x21f]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x4cfe0a
sub esp, 0xffffff80
jmp 0x48f888
Function at 0x561760
Capabilities:
Packed with generic packer

Disassembly:
pushal
mov esi, section.UPX1
lea edi, [esi - 0xeb000]
push edi
or ebp, 0xffffffff
jmp 0x561782
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x561789
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x561778
mov eax, 1
add ebx, ebx
jne 0x56179b
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x5617ac
jne 0x5617cb
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x5617cb
dec eax
add ebx, ebx
jne 0x5617b8
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x561790
add ebx, ebx
jne 0x5617c7
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x56181d
xor ecx, ecx
sub eax, 3
jb 0x5617e3
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x561852
sar eax, 1
mov ebp, eax
jmp 0x5617ee
add ebx, ebx
jne 0x5617ee
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x5617bc
inc ecx
add ebx, ebx
jne 0x5617fc
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x5617bc
add ebx, ebx
jne 0x561809
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x5617fe
jne 0x56181a
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x5617fe
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x56183c
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x56182e
jmp 0x56177e
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x56183c
add edi, ecx
jmp 0x56177e
pop esi
mov edi, esi
mov ecx, 0x37e4
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x56185a
cmp byte [edi], 0x13
jne 0x56185a
mov eax, dword [edi]
mov bl, byte [edi + 4]
shr ax, 8
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x56185f
lea edi, [esi + 0x15e000]
mov eax, dword [edi]
or eax, eax
je 0x5618d7
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0x169364]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0x169428]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x56188c
mov ecx, edi
jns 0x5618bb
movzx eax, word [edi]
inc edi
push eax
inc edi
mov ecx, 0xaef24857
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0x169430]
or eax, eax
je 0x5618d1
mov dword [ebx], eax
add ebx, 4
jmp 0x5618a9
call dword [esi + 0x16942c]
mov ebp, dword [esi + 0x169434]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x217]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x56190b
sub esp, 0xffffff80
jmp 0x46f1ee
Function at 0x430004
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
mov eax, section..text
push 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop edi
cmp eax, 0
nop
nop
nop
nop
je 0x430072
nop
nop
nop
nop
mov ebx, 0x408ecc
mov ecx, ebx
nop
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
push eax
nop
nop
nop
nop
mov eax, ecx
nop
nop
nop
div edi
nop
nop
nop
nop
xchg ecx, eax
nop
nop
nop
nop
nop
pop eax
nop
nop
nop
mov esi, 0x3cd53df8
nop
nop
xor dword [eax], esi
nop
nop
nop
nop
nop
nop
nop
add eax, edi
nop
nop
nop
loop 0x430060
nop
nop
mov eax, section..data
nop
cmp eax, 0
nop
nop
nop
je 0x4300d2
nop
nop
nop
mov ebx, 0x42e1d0
nop
mov ecx, ebx
nop
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
nop
nop
xor edx, edx
nop
nop
push eax
nop
nop
nop
nop
nop
mov eax, ecx
nop
nop
nop
nop
nop
nop
nop
div edi
nop
nop
nop
nop
nop
xchg ecx, eax
nop
pop eax
nop
nop
nop
nop
mov esi, 0x29960103
nop
nop
nop
nop
nop
xor dword [eax], esi
add eax, edi
nop
nop
nop
nop
nop
nop
loop 0x4300c0
nop
nop
nop
popal
nop
nop
nop
nop
jmp 0x401219
Function at 0x40adc0
Capabilities:
Clear file content

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1014
call fcn.00404730
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], 0
mov eax, dword [0x4170bc]
cmp ebx, eax
jae 0x40adfb
push ebx
pop eax
and eax, 0x1f
push ebx
pop edx
sar edx, 5
mov edx, dword [edx*4 + 0x4170c0]
test byte [edx + eax*8 + 4], 1
jne 0x40ae0d
mov dword [0x415c84], 9
or eax, 0xffffffff
jmp 0x40af32
push 1
push 0
push ebx
call fcn.00409fd0
add esp, 0xc
mov dword [ebp - 0xc], eax
cmp eax, 0xffffffff
je 0x40ae37
push 2
push 0
push ebx
call fcn.00409fd0
add esp, 0xc
mov dword [ebp - 8], eax
cmp eax, 0xffffffff
jne 0x40ae3f
or eax, 0xffffffff
jmp 0x40af32
mov eax, dword [ebp + 0xc]
mov esi, eax
sub esi, dword [ebp - 8]
test esi, esi
jle 0x40aee4
lea edx, [ebp - 0x1010]
mov ecx, 0x1000
sub eax, eax
push edi
mov edi, edx
rep stosb byte es:[edi], al
pop edi
push edx
pop eax
push 0x8000
push ebx
call fcn.0040b330
add esp, 8
mov dword [ebp - 0x10], eax
mov eax, esi
cmp eax, 0x1000
jb 0x40ae8a
mov dword [ebp - 0x1014], 0x1000
jmp 0x40ae92
mov eax, esi
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1014]
push eax
lea eax, [ebp - 0x1010]
push eax
push ebx
call fcn.004086d0
add esp, 0xc
push eax
pop edi
cmp eax, 0xffffffff
jne 0x40aecb
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x40aec5
mov dword [0x415c84], 0xd
or dword [ebp - 4], 0xffffffff
jmp 0x40aed5
push esi
pop eax
sub eax, edi
mov esi, eax
or eax, eax
jg 0x40ae75
mov eax, dword [ebp - 0x10]
push eax
push ebx
call fcn.0040b330
add esp, 8
jmp 0x40af20
test esi, esi
jge 0x40af20
push 0
mov eax, dword [ebp + 0xc]
push eax
push ebx
call fcn.00409fd0
add esp, 0xc
push ebx
call fcn.00408b00
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
or eax, eax
setne al
and eax, 1
dec eax
mov dword [ebp - 4], eax
cmp eax, 0xffffffff
jne 0x40af20
mov dword [0x415c84], 0xd
push 0
mov eax, dword [ebp - 0xc]
push eax
push ebx
call fcn.00409fd0
add esp, 0xc
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x430002
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
mov eax, section..text
nop
mov ebx, 0x408ecc
nop
mov ecx, 0x33793f0e
nop
nop
nop
nop
test eax, eax
nop
nop
nop
je 0x43004e
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
inc eax
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
jne 0x430024
nop
nop
mov eax, section..rsrc
mov ebx, 0x42e1d0
nop
nop
mov ecx, 0x414e5732
nop
nop
nop
test eax, eax
nop
nop
nop
nop
nop
je 0x430084
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
add eax, 4
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
nop
nop
jne 0x43006c
nop
nop
popal
nop
nop
nop
jmp 0x401219
Function at 0x40a15c
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [ebp + 0xc]
mov word [ebp + 0xc], ax
mov ebx, 0x19826993
mov eax, ebx
mul ebx
mov dword [ebp - 0x10], eax
mov ebx, eax
xor esi, esi
mov eax, ebx
mul ebx
mov dword [ebp - 0x14], eax
mov ebx, eax
mov word [ebp - 0xc], 0
jmp 0x40a272
mov eax, ebx
xor eax, ebx
mov ebx, eax
mov eax, dword [ebp + 8]
add eax, esi
push eax
call fcn.00405066
pop ecx
mov edx, eax
mov byte [ebp - 1], dl
cmp byte [ebp - 1], 0
jne 0x40a1b3
mov byte [ebp - 2], 0
jmp 0x40a1dd
call fcn.0040ddd8
mov dword [ebp - 0x18], eax
mov eax, 0x7fff
mov edi, 7
movzx edx, byte [ebp - 1]
mov ecx, edi
sub ecx, edx
cdq
idiv ecx
mov ecx, eax
mov eax, dword [ebp - 0x18]
cdq
idiv ecx
mov edx, eax
mov byte [ebp - 2], dl
mov eax, dword [ebp + 8]
mov al, byte [esi + eax]
cmp al, 0x70
jb 0x40a1fc
cmp al, 0x7f
ja 0x40a1fc
mov eax, dword [ebp + 8]
add eax, esi
inc eax
movzx edx, byte [eax]
movzx ecx, byte [ebp - 2]
sub edx, ecx
mov byte [eax], dl
mov eax, dword [ebp + 8]
movzx eax, byte [esi + eax]
cmp eax, 0xe2
jne 0x40a21b
mov eax, dword [ebp + 8]
add eax, esi
inc eax
movzx edx, byte [eax]
movzx ecx, byte [ebp - 2]
sub edx, ecx
mov byte [eax], dl
mov eax, ebx
sub eax, ebx
mov ebx, eax
push 8
push 0x90
lea eax, [ebp - 0xa]
push eax
call fcn.0040ddc0
movzx eax, byte [ebp - 1]
push eax
mov eax, dword [ebp + 8]
add eax, esi
push eax
lea eax, [ebp - 0xa]
movzx edx, byte [ebp - 2]
add eax, edx
push eax
call fcn.0040ddb4
mov eax, ebx
sub eax, ebx
mov ebx, eax
push 6
lea eax, [ebp - 0xa]
push eax
mov eax, dword [ebp + 8]
add eax, esi
push eax
call fcn.0040ddb4
add esp, 0x24
mov eax, ebx
add eax, ebx
mov ebx, eax
add esi, 6
inc word [ebp - 0xc]
movzx eax, word [ebp + 0xc]
dec eax
cmp esi, eax
jb 0x40a190
pop edi
pop esi
pop ebx
leave
ret

Function at 0x42e004
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
call 0x42e00c
nop
nop
nop
nop
nop
pop eax
nop
add eax, 0x403ac5
nop
sub eax, 0x403a6b
nop
nop
nop
mov ebx, dword [eax]
nop
nop
nop
mov ecx, dword [eax + 4]
nop
nop
mov edx, dword [eax + 8]
nop
nop
xor dword [ebx], edx
nop
nop
nop
nop
add ebx, 4
nop
nop
nop
nop
nop
cmp ebx, ecx
nop
nop
nop
nop
nop
jl 0x42e030
nop
nop
nop
nop
add eax, 0xc
nop
nop
cmp dword [eax], 0
nop
nop
nop
nop
jne 0x42e01e
nop
nop
nop
nop
nop
nop
popal
jmp fcn.00401219
Function at 0x430005
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
mov eax, section..text
nop
push 4
nop
nop
nop
nop
pop edi
nop
nop
nop
nop
nop
nop
nop
cmp eax, 0
nop
nop
nop
nop
je 0x430072
nop
mov ebx, 0x408f6c
nop
nop
nop
mov ecx, ebx
nop
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
xor edx, edx
nop
nop
nop
push eax
nop
nop
nop
mov eax, ecx
nop
nop
nop
nop
nop
nop
nop
nop
div edi
nop
xchg ecx, eax
nop
nop
nop
nop
nop
pop eax
nop
nop
nop
nop
nop
mov esi, 0x33416675
nop
nop
xor dword [eax], esi
nop
nop
nop
add eax, edi
nop
nop
nop
nop
nop
nop
loop 0x430060
nop
nop
mov eax, section..data
nop
nop
nop
cmp eax, 0
nop
nop
nop
je 0x4300d2
nop
nop
mov ebx, 0x42e3d0
nop
nop
nop
mov ecx, ebx
nop
nop
nop
sub ecx, eax
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
nop
push eax
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
div edi
nop
nop
nop
nop
nop
xchg ecx, eax
nop
nop
nop
nop
nop
nop
nop
pop eax
nop
nop
mov esi, 0x4a4c60a5
nop
xor dword [eax], esi
nop
nop
nop
nop
nop
add eax, edi
nop
nop
nop
loop 0x4300c0
nop
nop
nop
nop
nop
nop
nop
nop
nop
popal
jmp 0x401219
Function at 0x430005
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
mov eax, section..text
mov ebx, 0x408ecc
nop
mov ecx, 0x5223652b
nop
nop
nop
test eax, eax
nop
nop
nop
nop
je 0x43004e
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
cmp eax, ebx
jne 0x430024
nop
nop
nop
nop
nop
mov eax, str.y_n
nop
mov ebx, 0x42e1d0
nop
mov ecx, 0x24393dde
test eax, eax
nop
nop
nop
nop
je 0x430084
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
add eax, 4
nop
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
jne 0x43006c
nop
nop
nop
nop
nop
popal
nop
nop
nop
jmp 0x401219
Function at 0x40ed40
Capabilities:
Allocate or change rwx memory
Get system information on windows

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffffb4
mov dword [esp], eax
lea esi, [esp + 0x30]
lea eax, [esp + 0xc]
push eax
call sub.kernel32.dll_GetSystemInfo_1
mov edi, dword [esp]
push 0x1c
push esi
push edi
call sub.kernel32.dll_VirtualQuery_1
test eax, eax
je 0x40ee0b
jmp 0x40edff
cmp dword [esi + 0x10], 0x1000
jne 0x40edeb
test byte [esi + 0x15], 1
jne 0x40edeb
mov byte [esp + 4], 0
mov ebp, dword [esi + 0x14]
cmp ebp, 1
je 0x40ed9c
cmp ebp, 2
je 0x40ed9c
cmp ebp, 0x10
je 0x40ed9c
cmp ebp, 0x20
jne 0x40edb8
lea eax, [esp + 8]
push eax
push 0x40
mov eax, dword [esi + 0xc]
push eax
mov eax, dword [esi]
push eax
call sub.kernel32.dll_VirtualProtect
test eax, eax
je 0x40edb8
mov byte [esp + 4], 1
xor ebx, ebx
jmp 0x40edc9
mov eax, dword [esi]
add eax, ebx
call fcn.0040ed38
add ebx, dword [esp + 0x10]
cmp ebx, dword [esi + 0xc]
jb 0x40edbc
cmp byte [esp + 4], 0
je 0x40edeb
lea eax, [esp + 8]
push eax
mov eax, dword [esp + 0xc]
push eax
mov eax, dword [esi + 0xc]
push eax
mov eax, dword [esi]
push eax
call sub.kernel32.dll_VirtualProtect
mov eax, dword [esi]
add eax, dword [esi + 0xc]
mov edi, eax
push 0x1c
push esi
push edi
call sub.kernel32.dll_VirtualQuery_1
test eax, eax
je 0x40ee0b
mov eax, dword [esi + 4]
cmp eax, dword [esp]
je 0x40ed71
add esp, 0x4c
pop ebp
pop edi
pop esi
pop ebx
ret

Function at 0x433000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
call 0x43300c
nop
nop
nop
nop
pop eax
nop
add eax, 0x40a063
nop
nop
sub eax, 0x40a009
mov ebx, dword [eax]
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [eax + 4]
nop
mov edx, dword [eax + 8]
nop
nop
xor dword [ebx], edx
nop
nop
nop
nop
nop
nop
add ebx, 4
nop
nop
cmp ebx, ecx
nop
nop
nop
nop
nop
nop
nop
jl 0x433030
add eax, 0xc
nop
nop
nop
nop
nop
nop
cmp dword [eax], 0
nop
jne 0x43301e
nop
nop
nop
nop
nop
nop
popal
nop
nop
jmp 0x431219
Function at 0x42e000
Capabilities:
Encode data using xor

Disassembly:
pushal
nop
nop
nop
nop
nop
nop
mov eax, section..rsrc
mov ebx, 0x407ef8
nop
nop
mov ecx, 0x718f0b63
nop
nop
nop
test eax, eax
nop
je 0x42e04e
nop
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
cmp eax, ebx
nop
nop
nop
nop
jne 0x42e024
nop
nop
nop
nop
mov eax, section..text
nop
mov ebx, 0x42cd70
nop
nop
mov ecx, 0x3da72304
nop
nop
test eax, eax
nop
nop
nop
nop
je 0x42e084
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
nop
add eax, 4
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
jne 0x42e06c
nop
nop
nop
nop
nop
nop
popal
nop
jmp 0x401219