joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4146b0
Capabilities:
Check for peb beingdebugged flag

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword fs:[0x30]
push ebx
mov al, byte [eax + 2]
test al, al
setne bl
call dword [0x50b120]
test eax, eax
movzx ecx, bl
mov edx, 1
cmovne ecx, edx
pushfd
pop eax
mov dword [ebp - 4], eax
test dword [ebp - 4], 0x100
movzx eax, cl
cmovne eax, edx
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x4146f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
push 0x100
lea eax, [ebp - 0x118]
mov dword [ebp - 0x10], 0x100
push 0
push eax
mov dword [ebp - 0x14], 0x100
call fcn.004ddfe0
add esp, 0xc
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x118]
push eax
call dword [0x50b020]
push 0x100
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.004ddfe0
add esp, 0xc
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x218]
push eax
call dword [0x50b128]
mov dword [ebp - 9], 0x7c797f45
xor ecx, ecx
mov dword [ebp - 5], 0x707b57
mov byte [ebp - 1], 1
nop dword [eax]
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 9], al
inc ecx
cmp ecx, 7
jb 0x414770
lea eax, [ebp - 9]
mov byte [ebp - 1], 0
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.004dd650
add esp, 8
test eax, eax
jne 0x4147d6
mov dword [ebp - 8], 0x2b5d5147
xor ecx, ecx
mov dword [ebp - 4], 0x1005c47
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 8], al
inc ecx
cmp ecx, 6
jb 0x4147a8
lea eax, [ebp - 8]
mov byte [ebp - 1], 0
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.004dd650
add esp, 8
test eax, eax
jne 0x4147d6
xor al, al
mov esp, ebp
pop ebp
ret
push 0
call dword [0x50b1e0]
push eax
call dword [0x50b1d4]
mov al, 1
mov esp, ebp
pop ebp
ret

Function at 0x414830
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov eax, 1
lea edi, [ebp - 0x10]
xor ecx, ecx
xorps xmm0, xmm0
push ebx
cpuid
mov esi, ebx
movups xmmword [ebp - 0x10], xmm0
pop ebx
mov dword [edi], eax
mov dword [edi + 4], esi
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov ebx, dword [ebp - 8]
shr ebx, 0x1f
and bl, 1
mov dword [ebp - 0xe], 0x7c637564
mov dword [ebp - 0xa], 0x24267876
xor eax, eax
mov dword [ebp - 6], 0x76757c39
mov word [ebp - 2], 0x100
lea ecx, [eax + 0xf]
xor byte [ebp + eax - 0xe], cl
inc eax
cmp eax, 0xc
jb 0x414881
lea eax, [ebp - 0xe]
mov byte [ebp - 1], 0
push eax
call dword [0x50b060]
test eax, eax
movzx ecx, bl
mov eax, 1
pop edi
cmove ecx, eax
pop esi
mov al, cl
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4148c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
push esi
push edi
xor bl, bl
call dword [0x50b120]
test eax, eax
jne 0x4148e1
push 0x15
call dword [0x50b0e0]
test eax, eax
je 0x4148e3
mov bl, 1
movaps xmm0, xmmword [0x525160]
xor ecx, ecx
movups xmmword [ebp - 0x4d], xmm0
mov dword [ebp - 0x2d], 0x5f476c5c
movaps xmm0, xmmword [0x524770]
movups xmmword [ebp - 0x3d], xmm0
mov dword [ebp - 0x29], 0x4553535b
mov word [ebp - 0x25], 0x100
nop
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0x4d], al
inc ecx
cmp ecx, 0x28
jb 0x414910
mov esi, dword [0x50b004]
lea eax, [ebp - 4]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x4d]
mov byte [ebp - 0x24], 0
push eax
push 0x80000002
call esi
test eax, eax
je 0x41499d
movaps xmm0, xmmword [0x525160]
xor ecx, ecx
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x30], 0x70676c5c
movaps xmm0, xmmword [0x524770]
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0x43724c5c
mov dword [ebp - 0x28], 0x4d4b52
mov byte [ebp - 0x24], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0x50], al
inc ecx
cmp ecx, 0x2b
jb 0x414972
lea eax, [ebp - 4]
mov byte [ebp - 0x24], 0
push eax
push 0x20019
push 0
lea eax, [ebp - 0x50]
push eax
push 0x80000002
call esi
test eax, eax
jne 0x4149a8
push dword [ebp - 4]
mov bl, 1
call dword [0x50b00c]
lea eax, [ebp - 8]
mov dword [ebp - 8], 0x10
push eax
lea eax, [ebp - 0x20]
push eax
call dword [0x50b128]
test eax, eax
je 0x414ad2
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x28], 0
movups xmmword [ebp - 0x3c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4149e0
sub ecx, edx
lea eax, [ebp - 0x20]
push ecx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402810
mov dword [ebp - 0xe], 0x4a5e5259
xor ecx, ecx
mov word [ebp - 0xa], 0x100
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0xe], al
inc ecx
cmp ecx, 4
jb 0x414a05
lea edx, [ebp - 0xe]
mov byte [ebp - 9], 0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x414a20
mov edi, dword [ebp - 0x3c]
lea eax, [ebp - 0xe]
sub edx, ecx
cmp dword [ebp - 0x28], 0x10
push edx
mov edx, dword [ebp - 0x2c]
lea ecx, [ebp - 0x3c]
push eax
cmovae ecx, edi
push 0
call fcn.0046a520
add esp, 0xc
cmp eax, 0xffffffff
jne 0x414aa1
mov dword [ebp - 0x10], 0x53465d59
xor ecx, ecx
mov dword [ebp - 0xc], 0x1005141
nop dword [eax]
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0x10], al
inc ecx
cmp ecx, 6
jb 0x414a60
lea esi, [ebp - 0x10]
mov byte [ebp - 9], 0
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x414a77
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0x10]
sub esi, ecx
cmp dword [ebp - 0x28], 0x10
push esi
push eax
lea ecx, [ebp - 0x3c]
cmovae ecx, edi
push 0
call fcn.0046a520
add esp, 0xc
cmp eax, 0xffffffff
je 0x414aa3
mov bl, 1
mov eax, dword [ebp - 0x28]
cmp eax, 0x10
jb 0x414ad2
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x414ac8
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414adb
push ecx
push edi
call fcn.004dc002
add esp, 8
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004e12a0
int3
Function at 0x414af0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x29], 0
je 0x414b12
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x28
jb 0x414b00
mov byte [esi + 0x29], 0
mov eax, esi
pop esi
ret

Function at 0x414b20
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x22c
push ebx
xor bl, bl
call dword [0x50b120]
test eax, eax
jne 0x414b42
push 0x15
call dword [0x50b0e0]
test eax, eax
je 0x414b44
mov bl, 1
mov dword [ebp - 5], 0x4d2a4c
xor ecx, ecx
mov byte [ebp - 1], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 5], al
inc ecx
cmp ecx, 3
jb 0x414b51
push 0x105
lea eax, [ebp - 0x120]
mov byte [ebp - 1], 0
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x105
lea eax, [ebp - 0x228]
push eax
lea eax, [ebp - 5]
push eax
call dword [0x50b050]
test eax, eax
je 0x414cc0
mov dword [ebp - 9], 0x6a7e5259
xor ecx, ecx
mov dword [ebp - 5], 0x636657
mov byte [ebp - 1], 1
nop dword [eax]
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 9], al
inc ecx
cmp ecx, 7
jb 0x414bb0
mov byte [ebp - 1], 0
lea ecx, [ebp - 9]
lea eax, [ebp - 0x120]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x414bf0
test dl, dl
je 0x414bec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x414bf0
add eax, 2
add ecx, 2
test dl, dl
jne 0x414bd0
xor eax, eax
jmp 0x414bf5
sbb eax, eax
or eax, 1
test eax, eax
je 0x414cb9
mov dword [ebp - 8], 0x6a7e5259
xor ecx, ecx
mov dword [ebp - 4], 0x1005240
nop dword [eax]
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 8], al
inc ecx
cmp ecx, 6
jb 0x414c10
mov byte [ebp - 1], 0
lea ecx, [ebp - 8]
lea eax, [ebp - 0x120]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x414c50
test dl, dl
je 0x414c4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x414c50
add eax, 2
add ecx, 2
test dl, dl
jne 0x414c30
xor eax, eax
jmp 0x414c55
sbb eax, eax
or eax, 1
test eax, eax
je 0x414cb9
mov dword [ebp - 0xb], 0x6a7e5259
xor ecx, ecx
mov dword [ebp - 7], 0x65706154
mov word [ebp - 3], 0x63
mov byte [ebp - 1], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0xb], al
inc ecx
cmp ecx, 9
jb 0x414c73
mov byte [ebp - 1], 0
lea ecx, [ebp - 0xb]
lea eax, [ebp - 0x120]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x414cb0
test dl, dl
je 0x414cac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x414cb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x414c90
xor eax, eax
jmp 0x414cb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x414cc0
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x415ad0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x2b], 0
je 0x415af2
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x2a
jb 0x415ae0
mov byte [esi + 0x2b], 0
mov eax, esi
pop esi
ret

Function at 0x415b00
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x1a], 0
je 0x415b22
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x19
jb 0x415b10
mov byte [esi + 0x1a], 0
mov eax, esi
pop esi
ret
Function at 0x415f50
Capabilities:
Contain obfuscated stackstrings
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.004ddfe0
add esp, 0xc
lea eax, [ebp - 0x230]
push 0x200
push eax
push 0
call dword [0x50b248]
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 0x415fa4
sub ecx, edx
lea eax, [ebp - 0x230]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00402810
mov dword [ebp - 0xd], 0x73767543
xor ecx, ecx
mov dword [ebp - 9], 0x7a705c7f
mov dword [ebp - 5], 0x6b7d67
mov byte [ebp - 1], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0xd], al
inc ecx
cmp ecx, 0xb
jb 0x415fd8
lea edx, [ebp - 0xd]
mov byte [ebp - 1], 0
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x415ff0
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.0046a520
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4160ed
mov dword [ebp - 0xe], 0x60746040
xor ecx, ecx
mov dword [ebp - 0xa], 0x787a5772
mov dword [ebp - 6], 0x6e7a7d79
mov word [ebp - 2], 0x100
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0xe], al
inc ecx
cmp ecx, 0xc
jb 0x416042
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 0x416060
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.0046a520
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4160ed
mov dword [ebp - 0xb], 0x62445546
xor ecx, ecx
mov dword [ebp - 7], 0x73617577
mov word [ebp - 3], 0x65
mov byte [ebp - 1], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0xb], al
inc ecx
cmp ecx, 9
jb 0x4160a2
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 0x4160c0
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.0046a520
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4160ed
xor bl, bl
jmp 0x4160ef
mov bl, 1
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x41611c
inc ecx
mov eax, edi
cmp ecx, 0x1000
jb 0x416112
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x416125
push ecx
push edi
call fcn.004dc002
add esp, 8
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004e12a0
int3
Function at 0x41d4b0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x17], 0
je 0x41d4d2
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x16
jb 0x41d4c0
mov byte [esi + 0x17], 0
mov eax, esi
pop esi
ret

Function at 0x41d4e0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x23], 0
je 0x41d502
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x22
jb 0x41d4f0
mov byte [esi + 0x23], 0
mov eax, esi
pop esi
ret
Function at 0x41e720
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 0x5038e8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x24
push esi
push 0x535070
mov dword [ebp - 4], 0
call fcn.004db303
add esp, 4
test eax, eax
jne 0x41e8c5
mov dword [ebp - 0x1c], 0x6e415142
xor ecx, ecx
mov word [ebp - 0x18], 0x4f
mov byte [ebp - 0x16], 1
nop
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 5
jb 0x41e780
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x16], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e797
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebx + 0x18]
sub eax, edx
cmp eax, ecx
jb 0x41e8cb
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.0046c8f0
mov byte [ebp - 4], 1
mov eax, dword [0x535168]
cmp eax, dword [0x53516c]
je 0x41e804
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 [0x535168], 0x18
jmp 0x41e816
lea ecx, [ebp - 0x34]
push ecx
push eax
mov ecx, 0x535164
call fcn.00471aa0
mov ecx, dword [ebp - 0x20]
mov byte [ebp - 4], 0
cmp ecx, 0x10
jb 0x41e84b
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e841
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e8d0
push ecx
push edx
call fcn.004dc002
add esp, 8
push 0x535070
call fcn.004db314
mov esi, dword [0x532aac]
lea eax, [ebx + 8]
sub esp, 0x14
mov ecx, esp
push eax
call fcn.00465030
mov edx, 0x2714
mov ecx, esi
call fcn.0041d6d0
mov ecx, dword [ebx + 0x1c]
add esp, 0x18
test eax, eax
setg al
mov byte [ebp - 0x11], al
cmp ecx, 0x10
jb 0x41e8b3
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e8a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e8d0
push ecx
push edx
call fcn.004dc002
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.004dafab
call fcn.00402040
call fcn.004e12a0
int3
Function at 0x43e6c0
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 0x50611d
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.004eaa1c
push 0xff
mov edi, eax
push 0
push edi
call fcn.004ddfe0
push 0xff
call fcn.004eaa1c
push 0xff
push 0
push eax
mov dword [ebp - 0x18], eax
call fcn.004ddfe0
movaps xmm0, xmmword [0x524fa0]
add esp, 0x20
movups xmmword [ebp - 0x64], xmm0
xor ecx, ecx
mov dword [ebp - 0x44], 0x6e5f555f
movaps xmm0, xmmword [0x524390]
movups xmmword [ebp - 0x54], xmm0
mov dword [ebp - 0x40], 0x5b585b50
mov dword [ebp - 0x3c], 0x5d5656
mov byte [ebp - 0x38], 1
lea eax, [ecx + 0xf]
xor byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 0x2b
jb 0x43e758
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 [0x50b004]
test eax, eax
jne 0x43e8c0
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 [0x50b014]
push dword [ebp - 0x14]
mov esi, eax
call dword [0x50b00c]
test esi, esi
jne 0x43e8c0
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 0x43e7c8
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x34]
call fcn.00402810
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 0x43e8d5
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.00402810
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.004dda60
mov eax, dword [ebp - 0x3c]
add esp, 0xc
cmp eax, 0x10
jb 0x43e871
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x43e867
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e8da
push ecx
push esi
call fcn.004dc002
add esp, 8
push edi
call fcn.004ea2c6
mov ecx, dword [ebp - 0x20]
add esp, 4
cmp ecx, 0x10
jb 0x43e8aa
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e8a0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e8df
push ecx
push edx
call fcn.004dc002
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.004685f0
call fcn.004e12a0
call fcn.004e12a0
int3
Function at 0x45e460
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
lea eax, [ebp - 0x18]
push ebx
mov ebx, dword [0x50b30c]
push esi
push edi
push eax
call ebx
lea eax, [ebp - 0x10]
push eax
call ebx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x18]
je 0x45e548
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x14]
je 0x45e548
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop
mov esi, dword [eax + 0x18]
mov dword [ebp - 8], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 4], ecx
cmp ecx, esi
je 0x45e504
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45e504
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
sub ebx, 4
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45e4fd
nop word [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45e4e0
cmp esi, 0x2fa62ca8
je 0x45e508
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45e4c5
mov eax, dword [eax]
jmp 0x45e4a0
mov esi, dword [ebp - 4]
mov edx, dword [ebp - 8]
push 0x3e8
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
lea eax, [ebp - 0x20]
push eax
call dword [0x50b30c]
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x20]
je 0x45e548
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x1c]
jne 0x45e5e7
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x18]
mov dword [ebp - 4], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 8], ecx
cmp ecx, edx
je 0x45e5b9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45e5b9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, edx
nop dword [eax]
mov ecx, dword [ebx - 4]
lea ebx, [ebx - 4]
add ecx, edx
dec edi
mov esi, 0x811c9dc5
mov dl, byte [ecx]
inc ecx
test dl, dl
je 0x45e5b2
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x45e595
cmp esi, 0x2fa62ca8
je 0x45e5bd
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x45e580
mov eax, dword [eax]
jmp 0x45e554
mov esi, dword [ebp - 8]
mov edx, dword [ebp - 4]
push 1
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov ebx, dword [0x50b30c]
jmp 0x45e475
push 0
push 0x14d92
call fcn.00407d20
add esp, 8
or eax, edx
je 0x45e5fe
mov bl, 1
jmp 0x45e600
xor bl, bl
push 0
push 0x14e27
call fcn.00407d20
add esp, 8
mov byte [eax + 0x534eb0], bl
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4623a0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 3], 0
je 0x4623c2
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 2
jb 0x4623b0
mov byte [esi + 3], 0
pop esi
ret

Function at 0x4623e0
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 0x2f], 0
je 0x462402
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 0x2e
jb 0x4623f0
mov byte [esi + 0x2f], 0
pop esi
ret

Function at 0x462410
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 6], 0
je 0x462432
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 5
jb 0x462420
mov byte [esi + 6], 0
pop esi
ret

Function at 0x462440
Capabilities:
Encode data using xor

Disassembly:
push esi
mov esi, ecx
cmp byte [esi + 4], 0
je 0x462462
xor eax, eax
nop dword [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0xf]
inc eax
xor byte [edx], cl
cmp eax, 3
jb 0x462450
mov byte [esi + 4], 0
pop esi
ret

Function at 0x4670f0
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x502140
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
mov eax, ecx
push esi
push edi
push 8
mov dword [ebp - 0x10], eax
mov dword [eax], 0x50bce8
call fcn.004dbd81
mov esi, eax
push 1
mov dword [ebp - 4], 0
call fcn.004dab8e
mov dword [esi + 4], eax
add esp, 8
mov eax, dword [ebp - 0x10]
lea edi, [eax + 0x14]
lea ecx, [eax + 0x18]
lea edx, [eax + 0x24]
mov dword [eax + 0x34], esi
lea ebx, [eax + 4]
mov dword [eax + 0xc], ebx
lea esi, [eax + 8]
mov dword [eax + 0x10], esi
mov dword [eax + 0x1c], edi
mov dword [eax + 0x20], ecx
mov dword [eax + 0x2c], edx
add eax, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov dword [ebx + 0x30], eax
mov ebx, dword [ebp - 0x14]
mov dword [esi], 0
mov dword [ecx], 0
mov dword [eax], 0
mov eax, dword [ebp - 0x10]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x10]
mov dword [edi], 0
mov dword [edx], 0
mov dword [eax + 0x10], esi
mov dword [ebx], 0x50bd28
mov byte [ebx + 0x48], 0
mov byte [ebx + 0x3d], 0
mov ebx, dword [ebp - 0x14]
mov dword [eax + 0xc], ebx
mov ebx, dword [ebp - 0x10]
mov dword [eax + 0x1c], edi
mov dword [eax + 0x20], ecx
mov dword [eax + 0x2c], edx
mov eax, dword [ebp - 0x18]
mov dword [ebx + 0x30], eax
mov ebx, dword [ebp - 0x14]
mov dword [esi], 0
mov dword [ecx], 0
mov dword [eax], 0
mov dword [ebx], 0
mov dword [edi], 0
mov dword [edx], 0
mov edx, dword [ebp - 0x10]
pop edi
pop esi
pop ebx
mov dword [edx + 0x4c], 0
mov eax, dword [0x5355c0]
mov ecx, dword [0x5355c4]
mov dword [edx + 0x44], ecx
mov ecx, dword [ebp - 0xc]
mov dword [edx + 0x40], eax
mov eax, edx
mov dword [edx + 0x38], 0
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret