joyce8/EMBER2024-capa huggingface dataset:
Function at 0x40fac0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x438
mov dword [esp + 0x38], 0xd7a5c99d
mov dword [esp + 0x3c], 0xd3bbd552
mov dword [esp + 0x40], 0xdfaad1a4
mov dword [esp + 0x44], 0xdbe9ddbd
mov dword [esp + 0x48], 0xe7d4d9e5
mov dword [esp + 0x4c], 0xe3c2e5d4
mov dword [esp + 0x50], 0xefb5e1c8
mov dword [esp + 0x54], 0xeb98ed85
mov dword [esp + 0x58], 0xf785e984
mov dword [esp + 0x5c], 0xf38df58f
mov dword [esp + 0x60], 0xffacf1d0
mov dword [esp + 0x64], 0xfbdafda0
mov dword [esp + 0x68], 0x736f9c9
mov dword [esp + 0x6c], 0x3320536
mov dword [esp + 0x70], 0xf2e0147
mov dword [esp + 0x74], 0xb630d57
mov dword [esp + 0x78], 0x172c097a
mov dword [esp + 0x7c], 0x13551528
mov dword [esp + 0x80], 0x1f661130
mov dword [esp + 0x84], 0x1b261d26
mov dword [esp + 0x88], 0x27061931
mov dword [esp + 0x8c], 0x23522565
mov dword [esp + 0x90], 0x2f5a2150
mov dword [esp + 0x94], 0x2b712d41
mov dword [esp + 0x98], 0x37582945
mov dword [esp + 0x9c], 0x335b3563
mov dword [esp + 0xa0], 0x3f0d314c
mov dword [esp + 0xa4], 0x3b053d01
mov dword [esp + 0xa8], 0x47743903
mov dword [esp + 0xac], 0x4378457b
mov dword [esp + 0xb0], 0x4f664160
mov dword [esp + 0xb4], 0x4b024d1b
mov dword [esp + 0xb8], 0x57034914
mov dword [esp + 0xbc], 0x53665500
mov dword [esp + 0xc0], 0x5f2a5170
mov dword [esp + 0xc4], 0x5b2d5d35
mov dword [esp + 0xc8], 0x67465935
mov dword [esp + 0xcc], 0x630f652f
mov dword [esp + 0xd0], 0x6f19610f
mov dword [esp + 0xd4], 0x6b436d1f
mov dword [esp + 0xd8], 0x77396948
mov dword [esp + 0xdc], 0x730c751c
mov dword [esp + 0xe0], 0x7f0b7103
mov dword [esp + 0xe4], 0x7b497d11
mov dword [esp + 0xe8], 0x87b77949
mov dword [esp + 0xec], 0x83b085bd
mov dword [esp + 0xf0], 0x8fbc81b0
mov dword [esp + 0xf4], 0x8bb88dbc
mov dword [esp + 0xf8], 0x97b689b8
mov dword [esp + 0xfc], 0x93f395cb
mov dword [esp + 0x100], 0x9fff91fa
mov dword [esp + 0x104], 0x9bf39de2
mov dword [esp + 0x108], 0xa79b99ab
mov dword [esp + 0x10c], 0xa399a59b
mov dword [esp + 0x110], 0xaf91a192
mov dword [esp + 0x114], 0xabaaad96
mov byte [esp + 0x11a], 0
mov word [esp + 0x118], 0
mov eax, dword [0x4498f0]
mov ecx, 0x649dbb4e
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + ecx - 0x649dbb16]
lea edi, [ecx - 0x649dbb00]
and edi, ebx
mov ebp, edi
and ebp, 2
mov esi, edi
or esi, 0xfffffffd
inc esi
mov edx, edi
and edx, 0xfffffffd
imul edx, esi
or edi, 2
imul edi, ebp
add edx, ebx
sub edx, edi
add edx, ecx
lea esi, [edx + edx]
and esi, 0x11d6aef2
xor edx, 0x8eb5779
mov edi, esi
and edi, edx
xor edx, esi
lea edx, [edx + edi*2]
inc dl
mov byte [esp + ecx - 0x649dbb16], dl
inc ecx
cmp ecx, 0x649dbc31
jne 0x40fd20
lea ecx, [esp + 0x38]
push 0
push 0
push 0
push 0
push ecx
call eax
mov edi, eax
xor eax, eax
test edi, edi
setne al
mov eax, dword [eax*4 + 0x444cec]
mov ecx, 0x3f438db0
xor ecx, dword [0x444cf4]
add eax, ecx
inc eax
jmp eax
Function at 0x417700
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x18
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov esi, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + esi + 2], 0
lea esi, [esi + 2]
jne 0x417720
mov edi, dword [eax + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0x417740
sar esi, 1
sar eax, 1
lea ecx, [esi + eax]
add ecx, 2
test ecx, ecx
jns 0x417760
mov eax, 0xffffffff
jmp 0x417769
add eax, esi
lea eax, [eax*2 + 4]
push eax
call fcn.0040c9f0
add esp, 4
mov ebp, eax
movzx ecx, word [edi]
test cx, cx
je 0x4177a1
add edi, 2
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x417790
mov word [eax], 0x5c
add eax, 2
movzx ecx, word [ebx]
test cx, cx
je 0x4177d1
lea edx, [ebx + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4177c0
mov word [eax], 0
lea eax, [esp + 8]
push 0x60
push 3
push 0x120089
push eax
push ebp
call fcn.0043ec60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44535c]
Function at 0x417a60
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x1148
call fcn.0040c950
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
mov esi, 0xfffffffe
nop
nop
cmp word [eax + esi + 2], 0
lea esi, [esi + 2]
jne 0x417a80
sar esi, 1
lea ecx, [esp + 0x30]
push ecx
push 0
push 0
push esi
push eax
push 0
call dword [0x44ac34]
mov ebx, dword [esp + 0x30]
mov edi, 0xffffffff
test ebx, ebx
jns 0x417ab4
mov eax, 0xffffffff
jmp 0x417ab7
lea eax, [ebx + ebx]
push eax
call fcn.0040c9f0
add esp, 4
lea ecx, [esp + 0x30]
push ecx
push ebx
mov dword [esp + 0x30], eax
push eax
push esi
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
push 0
call dword [0x44ac34]
mov eax, dword [esp + 0x30]
mov ecx, eax
add ecx, 0xd
js 0x417aec
lea edi, [eax*2 + 0x1a]
push edi
call fcn.0040c9f0
add esp, 4
mov dword [esp + 4], eax
mov dword [esp + 0x144], 0x31623f50
mov dword [esp + 0x148], 0x35473353
mov dword [esp + 0x14c], 0x49163740
mov dword [esp + 0x150], 0x4d2d4b1e
mov dword [esp + 0x154], 0x413b4f3e
mov dword [esp + 0x158], 0x4533433b
mov dword [esp + 0x15c], 0x5946473a
mov word [esp + 0x160], 0
mov byte [esp + 0x162], 0
xor eax, eax
xor edi, edi
nop
nop
nop
nop
movzx edx, byte [esp + edi + 0x144]
mov esi, eax
and esi, 0x2a
mov ecx, edi
xor ecx, 0xda2eb4b5
add ecx, esi
mov esi, ecx
not esi
lea ebx, [ecx + esi*2]
inc ebx
xor ebx, ecx
and ebx, edx
xor ebx, ecx
add bl, 0x77
mov byte [esp + edi + 0x144], bl
inc edi
add eax, 2
cmp edi, 0x1f
jne 0x417b60
mov eax, dword [esp + 0x28]
movzx ecx, word [eax]
mov edi, dword [esp + 4]
mov eax, edi
test cx, cx
je 0x417bd1
mov eax, dword [esp + 0x28]
lea edx, [eax + 2]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x417bc0
mov word [eax], 0
movzx ecx, word [esp + 0x144]
test cx, cx
je 0x417c01
lea edx, [esp + 0x146]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x417bf0
mov word [eax], 0
lea eax, [esp + 0xb8]
push 0x60
push 3
push 0x120089
push eax
push edi
call fcn.0043ec60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x445714]
Function at 0x420050
Capabilities:
Encode data using xor

Disassembly:
push ebx
push edi
push esi
sub esp, 0x18
mov edi, dword [esp + 0x28]
xor ecx, ecx
nop
nop
nop
nop
cmp word [edi + ecx], 0
lea ecx, [ecx + 2]
jne 0x420060
lea edx, [edi + ecx]
add edx, 0xfffffffe
mov eax, edi
not eax
and eax, edx
add ecx, edi
mov edx, 1
sub edx, ecx
and edx, edi
sub eax, edx
cmp eax, 0xffffffed
jge 0x42008f
mov eax, 0xffffffff
jmp 0x420092
add eax, 0x12
push eax
call fcn.0040c9f0
add esp, 4
mov esi, eax
mov dword [esp], 0xd9a7dba8
mov dword [esp + 4], 0xdd51dfa3
mov dword [esp + 8], 0xd1e0d3e8
mov dword [esp + 0xc], 0xd5b0d7b4
mov word [esp + 0x10], 0xebd4
mov dword [esp + 0x12], 0
mov byte [esp + 0x16], 0
mov eax, 0x4f
mov ecx, 0xb0
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + eax - 0x4f]
mov edx, ecx
xor edx, eax
and edx, ebx
xor edx, eax
add dl, 0x75
mov byte [esp + eax - 0x4f], dl
inc eax
dec ecx
cmp eax, 0x66
jne 0x4200e0
movzx ecx, word [edi]
mov eax, esi
test cx, cx
je 0x420121
add edi, 2
mov eax, esi
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x420110
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x420151
lea edx, [esp + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x420140
mov word [eax], 0
mov eax, esp
push eax
push esi
call fcn.0043ee20
add esp, 8
mov edi, eax
mov ebx, dword [esp]
jmp dword [0x445c08]
Function at 0x4369c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14
mov eax, esp
push 0
push 0
push 0x20219
push eax
push dword [esp + 0x38]
call fcn.0043f490
add esp, 0x14
test eax, eax
js 0x436af6
lea edi, [esp + 0xc]
lea eax, [esp + 0x10]
push edi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x20]
call fcn.0043f930
add esp, 0x24
xor ebx, ebx
mov esi, 0
test eax, eax
js 0x436a5a
mov ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0xc]
mov ecx, eax
inc ecx
jns 0x436a28
mov eax, 0xffffffff
jmp 0x436a2f
lea eax, [eax*2 + 2]
push eax
call fcn.0040c9f0
add esp, 4
mov esi, eax
push edi
push eax
push 0
push ebp
push dword [esp + 0x10]
call fcn.00440030
add esp, 0x14
test eax, eax
jns 0x436a5a
push esi
call fcn.0040ca00
add esp, 4
xor esi, esi
mov eax, dword [esp]
mov dword [esp + 4], 0x94959a9b
mov word [esp + 8], 0
mov byte [esp + 0xa], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebx
add cl, 0xa6
xor cl, byte [esp + ebx + 4]
add cl, 0xc2
mov byte [esp + ebx + 4], cl
inc ebx
cmp ebx, 7
jne 0x436a80
mov ecx, dword [0x44ac38]
test ecx, ecx
je 0x436ada
mov edx, dword [esp + 4]
xor edi, edi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb62b8d10
je 0x436ac0
inc edi
cmp ecx, edi
jne 0x436ab0
jmp 0x436ada
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x436ada
push eax
push 1
push ecx
push dword [0x44ac40]
call fcn.0043b650
add esp, 0x10
test esi, esi
jne 0x436af8
lea eax, [esp + 4]
push eax
call fcn.0043ea40
add esp, 4
test al, al
je 0x436af6
cmp dword [esp + 4], 1
je 0x436af8
xor esi, esi
mov eax, esi
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x4386f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 8
mov eax, dword [esp + 0x1c]
mov dword [esp], 0x13121160
mov word [esp + 4], 0
xor ecx, ecx
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx]
lea edx, [ecx + ecx]
mov edi, edx
and edi, 8
mov ebx, ecx
xor ebx, 0xe948473c
add ebx, edi
xor ebx, esi
mov esi, ebx
and esi, 0xd1
mov ebp, ebx
and ebp, 2
mov edi, ebp
xor edi, 2
imul edi, esi
or esi, 2
imul esi, ebp
mov ebp, ebx
and ebp, 0x53
add ebp, ebp
sub ebx, ebp
add ebx, edi
add ebx, esi
add bl, 0xd4
mov byte [esp + ecx], bl
xor ecx, 0x217edebd
and edx, 0xa
add ecx, edx
add ecx, 0xde812144
cmp ecx, 6
jb 0x438710
mov ecx, dword [esp]
mov ecx, dword fs:[ecx]
push eax
push 0
push dword [ecx + 0x18]
call dword [0x452c5c]
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret

Function at 0x438790
Capabilities:
Encode data using xor

Disassembly:
push ebx
push edi
push esi
sub esp, 8
mov eax, dword [esp + 0x18]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4487c8]
Function at 0x438830
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x10
mov ebp, ecx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0xc], 0
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xa6
xor cl, byte [esp + eax]
add cl, 0xc2
mov byte [esp + eax], cl
inc eax
cmp eax, 7
jne 0x438860
mov edi, dword [esp]
mov eax, dword [0x44ac38]
test eax, eax
je 0x4388c6
xor ecx, ecx
mov edx, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edx + ecx*8], 0x9abdb589
je 0x4388a0
inc ecx
cmp eax, ecx
jne 0x438890
jmp 0x4388c6
mov eax, dword [edx + ecx*8 + 4]
cmp eax, edi
je 0x4388c6
lea ecx, [esp + 0xc]
push ecx
push 0
push 0
push 5
push 4
push eax
push dword [0x44ac40]
call fcn.0043b650
add esp, 0x1c
mov edi, eax
mov dword [esp], 0xa3626164
mov word [esp + 4], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xe8
xor cl, byte [esp + eax]
add cl, 0x78
mov byte [esp + eax], cl
inc eax
cmp eax, 6
jne 0x4388e0
cmp edi, dword [esp]
jne 0x438a05
push dword [esp + 0xc]
call fcn.004386f0
add esp, 4
mov esi, dword [esp + 0xc]
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, edx
add cl, 0xa6
xor cl, byte [esp + edx]
add cl, 0xc2
mov byte [esp + edx], cl
inc edx
cmp edx, 7
jne 0x438930
mov edi, dword [esp]
mov edx, dword [0x44ac38]
test edx, edx
je 0x43899c
mov dword [esp + 8], esi
mov ecx, ebp
xor ebp, ebp
mov esi, dword [0x44ac3c]
nop
cmp dword [esi + ebp*8], 0x9abdb589
je 0x438972
inc ebp
cmp edx, ebp
jne 0x438960
mov ebp, ecx
jmp 0x43899c
mov edx, dword [esi + ebp*8 + 4]
cmp edx, edi
mov ebp, ecx
je 0x43899c
push 0
push dword [esp + 0xc]
push eax
push 5
push 4
push edx
push dword [0x44ac40]
mov esi, eax
call fcn.0043b650
add esp, 0x1c
mov edi, eax
mov eax, esi
test edi, edi
js 0x4389fc
mov dword [esp + 8], ebp
mov esi, dword [eax]
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [ecx + esi + 0x3c]
add ecx, esi
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [edx + edi]
movzx ebp, word [ebx + edi]
test si, si
je 0x4389d5
add edi, 2
cmp si, bp
je 0x4389c0
cmp si, bp
je 0x4389e7
mov esi, dword [ecx]
test esi, esi
jne 0x4389b0
mov edi, 0xc0000225
jmp 0x4389fc
mov edx, dword [ecx + 0x44]
mov esi, dword [esp + 8]
mov dword [esi + 8], edx
mov ecx, dword [ecx + 0xdc]
mov dword [esi + 0xc], ecx
xor edi, edi
push eax
call fcn.00438790
add esp, 4
mov eax, edi
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret 4
Function at 0x438a50
Capabilities:
Encode data using xor

Disassembly:
push ebx
push edi
push esi
sub esp, 0x28
mov esi, dword [ecx + 8]
test esi, esi
je 0x438b00
xor eax, eax
cmp dword [ecx], 0
jne 0x438b5c
mov edx, dword [esp + 0x38]
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], esi
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x24], eax
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor eax, eax
mov ebx, eax
add bl, 0xa6
xor bl, byte [esp + eax]
add bl, 0xc2
mov byte [esp + eax], bl
inc eax
cmp eax, 7
jne 0x438ac0
mov eax, dword [esp]
mov esi, dword [0x44ac38]
test esi, esi
je 0x438b5c
xor edi, edi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xef01f5a1
je 0x438b65
inc edi
cmp esi, edi
jne 0x438af0
jmp 0x438b5c
mov dword [esp + 8], 0x894a4b34
mov word [esp + 0xc], 0
mov byte [esp + 0xe], 0
mov eax, 0x14e7da73
mov ecx, 0xd6304b8c
nop
nop
movzx edx, byte [esp + eax - 0x14e7da6b]
lea esi, [ecx + 0x29cfb500]
and esi, ecx
mov edi, eax
or edi, edx
not edx
or edx, esi
and edx, edi
mov esi, edx
and esi, 1
xor edx, 1
lea edx, [edx + esi*2]
add dl, 0xc0
mov byte [esp + eax - 0x14e7da6b], dl
inc eax
dec ecx
cmp eax, 0x14e7da7a
jne 0x438b20
mov eax, dword [esp + 8]
add esp, 0x28
pop esi
pop edi
pop ebx
ret 4
mov esi, dword [ebx + edi*8 + 4]
cmp esi, eax
je 0x438b5c
lea eax, [esp + 0x20]
lea edi, [esp + 8]
push eax
push edi
push edx
push ecx
push 4
push esi
push dword [0x44ac40]
call fcn.0043b650
add esp, 0x1c
jmp 0x438b5c

Function at 0x438ba0
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [ecx]
test eax, eax
je 0x438c3a
push ebx
push edi
push esi
sub esp, 8
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebx, edx
add bl, 0xa6
xor bl, byte [esp + edx]
add bl, 0xc2
mov byte [esp + edx], bl
inc edx
cmp edx, 7
jne 0x438bd0
mov edx, dword [0x44ac38]
test edx, edx
je 0x438c2e
mov esi, dword [esp]
xor edi, edi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0xb62b8d10
je 0x438c10
inc edi
cmp edx, edi
jne 0x438c00
jmp 0x438c2e
mov edx, dword [ebx + edi*8 + 4]
cmp edx, esi
je 0x438c2e
push eax
push 1
push edx
push dword [0x44ac40]
mov esi, ecx
call fcn.0043b650
mov ecx, esi
add esp, 0x10
mov dword [ecx], 0
add esp, 8
pop esi
pop edi
pop ebx
ret
Function at 0x438eb0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc
mov esi, ecx
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x24]
mov eax, dword [ecx + 4]
test eax, eax
jne 0x438f3a
push 0xbbf966b4
push dword [0x44ac2c]
call fcn.0043e240
add esp, 8
test eax, eax
je 0x438f05
mov ecx, dword [esi]
test ecx, ecx
je 0x438f37
mov dword [esp], 0
mov edx, esp
push edx
push ecx
call eax
test eax, eax
je 0x438f13
cmp dword [esp], 0
je 0x438f13
mov dword [esi + 4], 3
jmp 0x438f37
mov dword [esi + 4], 1
mov ecx, dword [esi]
jmp 0x438fa3
lea eax, [esp + 8]
push eax
call fcn.0043ea40
add esp, 4
test al, al
je 0x438f37
mov eax, dword [esp + 8]
mov ecx, 2
cmp eax, 3
je 0x438f34
mov ecx, eax
mov dword [esi + 4], ecx
mov eax, dword [esi + 4]
mov ecx, dword [esi]
cmp eax, 2
jne 0x438fa3
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0xa6
xor dl, byte [esp + eax]
add dl, 0xc2
mov byte [esp + eax], dl
inc eax
cmp eax, 7
jne 0x438f60
mov eax, dword [esp]
mov edx, dword [0x44ac38]
test edx, edx
je 0x439024
xor esi, esi
mov ebx, dword [0x44ac3c]
nop
nop
nop
cmp dword [ebx + esi*8], 0xc3cdc4a6
je 0x439000
inc esi
cmp edx, esi
jne 0x438f90
jmp 0x439024
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0xa6
xor dl, byte [esp + eax]
add dl, 0xc2
mov byte [esp + eax], dl
inc eax
cmp eax, 7
jne 0x438fc0
mov eax, dword [esp]
mov edx, dword [0x44ac38]
test edx, edx
je 0x439024
xor esi, esi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + esi*8], 0xae6e2b0b
je 0x439000
inc esi
cmp edx, esi
jne 0x438ff0
jmp 0x439024
mov edx, dword [ebx + esi*8 + 4]
cmp edx, eax
je 0x439024
push dword [esp + 0x2c]
push edi
push ebp
push dword [esp + 0x2c]
push ecx
push 5
push edx
push dword [0x44ac40]
call fcn.0043b650
add esp, 0x20
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
Function at 0x439390
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x20
mov esi, ecx
mov edi, dword [ebp + 0x1c]
test edi, edi
jne 0x4393a9
lea edi, [esp + 0x10]
mov eax, dword [esi + 4]
test eax, eax
je 0x4393ba
cmp eax, 2
je 0x439430
jmp 0x43945d
push 0xbbf966b4
push dword [0x44ac2c]
call fcn.0043e240
add esp, 8
test eax, eax
je 0x4393fb
mov ecx, dword [esi]
test ecx, ecx
je 0x439428
mov dword [esp + 4], 0
lea edx, [esp + 4]
push edx
push ecx
call eax
test eax, eax
je 0x439404
cmp dword [esp + 4], 0
je 0x439404
mov dword [esi + 4], 3
jmp 0x439428
mov dword [esi + 4], 1
jmp 0x43945d
lea eax, [esp + 0xc]
push eax
call fcn.0043ea40
add esp, 4
test al, al
je 0x439428
mov eax, dword [esp + 0xc]
mov ecx, 2
cmp eax, 3
je 0x439425
mov ecx, eax
mov dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, 2
jne 0x43945d
mov ebx, dword [ebp + 0x18]
push 0x732f71fd
push dword [0x452c54]
call fcn.0043e240
add esp, 8
push edi
push ebx
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [esi]
call eax
jmp 0x4394e4
mov ecx, dword [esi]
mov dword [esp + 4], 0x94959a9b
mov word [esp + 8], 0
mov byte [esp + 0xa], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0xa6
xor dl, byte [esp + eax + 4]
add dl, 0xc2
mov byte [esp + eax + 4], dl
inc eax
cmp eax, 7
jne 0x439480
mov eax, dword [esp + 4]
mov edx, dword [0x44ac38]
test edx, edx
je 0x4394e4
xor esi, esi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
cmp dword [ebx + esi*8], 0xfd743ac4
je 0x4394c0
inc esi
cmp edx, esi
jne 0x4394b0
jmp 0x4394e4
mov edx, dword [ebx + esi*8 + 4]
cmp edx, eax
je 0x4394e4
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 8]
push ecx
push 5
push edx
push dword [0x44ac40]
call fcn.0043b650
add esp, 0x20
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x18
Function at 0x439f60
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x1c
mov eax, ecx
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov eax, dword [eax + 8]
mov dword [esp + 0x18], eax
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
mov edx, eax
add dl, 0xa6
xor dl, byte [esp + eax]
add dl, 0xc2
mov byte [esp + eax], dl
inc eax
cmp eax, 7
jne 0x439fa0
mov eax, dword [esp]
mov edx, dword [0x44ac38]
test edx, edx
je 0x43a013
xor ebx, ebx
mov ebp, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebp + ebx*8], 0x3e416e49
je 0x439fe1
inc ebx
cmp edx, ebx
jne 0x439fd0
jmp 0x43a013
mov edx, dword [ebp + ebx*8 + 4]
cmp edx, eax
je 0x43a013
lea eax, [esp + 0x18]
lea ebx, [esp + 8]
push 4
push 0x3000
push eax
push 0
push ebx
push 0xffffffffffffffff
push 6
push edx
push dword [0x44ac40]
mov ebx, ecx
call fcn.0043b650
mov ecx, ebx
add esp, 0x24
test eax, eax
js 0x43a07a
push 0
push 0
mov eax, dword [esp + 0x14]
push dword [eax + 8]
push dword [esp + 0x14]
push dword [eax + 4]
push dword [eax]
call fcn.00439390
test eax, eax
jns 0x43a049
mov ecx, eax
xor eax, eax
mov edx, 0
cmp ecx, 0x8000000d
jne 0x43a0ef
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov ebx, dword [eax + 8]
add ebx, ecx
sub ebx, dword [esp + 0x38]
xor eax, eax
mov edx, 0
mov dword [esp + 0x10], ecx
cmp ebx, ecx
jbe 0x43a0ef
mov eax, dword [esp + 0x38]
lea ebp, [eax - 1]
mov ecx, dword [esp + 0x10]
jmp 0x43a091
xor eax, eax
xor edx, edx
jmp 0x43a182
add ecx, eax
inc ecx
xor eax, eax
mov edx, 0
cmp ecx, ebx
jae 0x43a0ef
test edi, edi
je 0x43a09a
cmp byte [edi], 0x3f
je 0x43a0a5
movzx eax, byte [ecx]
mov edx, dword [esp + 0x34]
cmp al, byte [edx]
jne 0x43a085
cmp dword [esp + 0x38], 2
jb 0x43a0d1
xor eax, eax
jmp 0x43a0c4
movzx edx, byte [ecx + eax + 1]
mov esi, dword [esp + 0x34]
cmp dl, byte [esi + eax + 1]
jne 0x43a083
inc eax
cmp ebp, eax
je 0x43a0d1
test edi, edi
je 0x43a0b0
cmp byte [edi + eax + 1], 0x3f
jne 0x43a0b0
jmp 0x43a0bf
test ecx, ecx
je 0x43a0eb
sub ecx, dword [esp + 0x10]
mov edx, ecx
sar edx, 0x1f
mov eax, dword [esp + 0xc]
add ecx, dword [eax]
adc edx, dword [eax + 4]
mov eax, ecx
jmp 0x43a0ef
xor eax, eax
xor edx, edx
mov dword [esp + 0x14], 0
mov dword [esp], 0x94959a9b
mov word [esp + 4], 0
mov byte [esp + 6], 0
xor ecx, ecx
nop
nop
nop
nop
mov ebx, ecx
add bl, 0xa6
xor bl, byte [esp + ecx]
add bl, 0xc2
mov byte [esp + ecx], bl
inc ecx
cmp ecx, 7
jne 0x43a110
mov ecx, dword [0x44ac38]
test ecx, ecx
je 0x43a182
mov esi, dword [esp]
xor edi, edi
mov ebx, dword [0x44ac3c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x16194952
je 0x43a150
inc edi
cmp ecx, edi
jne 0x43a140
jmp 0x43a182
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, esi
je 0x43a182
lea esi, [esp + 0x14]
lea edi, [esp + 8]
push 0x8000
push esi
push edi
push 0xffffffffffffffff
push 4
push ecx
push dword [0x44ac40]
mov esi, eax
mov edi, edx
call fcn.0043b650
mov edx, edi
mov eax, esi
add esp, 0x1c
add esp, 0x1c
pop esi
pop edi
pop ebx
pop ebp
ret 0x10