Function at 0x42ba40
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x458
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x54], 0xf19a0f99
mov dword [esp + 0x58], 0xf551f357
mov dword [esp + 0x5c], 0xf918f75b
mov dword [esp + 0x60], 0xfd62fb5f
mov dword [esp + 0x64], 0xe1feff5b
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xfd
xor cl, byte [esp + eax + 0x54]
add cl, 0xf
mov byte [esp + eax + 0x54], cl
inc eax
cmp eax, 0x14
jne case.default.0x42bac9
lea eax, [esp + 0x54]
lea ecx, [esp + 0x34]
push eax
call fcn.0043f6f0
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x44dc98]
jmp dword [0x44dca0]
lea ecx, [esp + 0x34]
push 0x410
call fcn.0043f910
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea ecx, [esp + 0x34]
push 0x410
call fcn.0043f910
jmp dword [0x44dcac]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44dcb0]
mov eax, dword [case.0x42bac9.0]
xor ebx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44dd44]
mov dword [esp + 0x54], 0x3a53083d
mov dword [esp + 0x58], 0xa5530
mov dword [esp + 0x5c], 0x340d3351
mov dword [esp + 0x60], 0x3f162e4d
mov dword [esp + 0x64], 0x104b423e
mov dword [esp + 0x68], 0x27444e45
mov dword [esp + 0x6c], 0x2229462a
mov dword [esp + 0x70], 0xdeb7dcc3
mov dword [esp + 0x74], 0xbec0cec2
mov dword [esp + 0x78], 0xd6b3adc1
mov dword [esp + 0x7c], 0x7baab1b1
mov eax, 0xf49569e4
mov ecx, 0xb6a961b
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0xb6a9670]
mov edx, esi
not edx
or edx, eax
add edx, esi
inc edx
mov ebx, edx
and ebx, 2
mov edi, edx
or edx, 2
imul edx, ebx
xor ebx, 2
and edi, 0xfffffffd
imul edi, ebx
add edx, edi
mov edi, ecx
sub edi, esi
add esi, eax
and edi, edx
not edx
and edx, esi
sub edx, edi
mov esi, edx
and esi, 0xb
xor edx, 0x8b
lea edx, [edx + esi*2]
inc dl
mov byte [esp + eax + 0xb6a9670], dl
inc eax
dec ecx
cmp eax, 0xf4956a10
jne 0x42bb90
lea eax, [esp + 0x48]
lea ecx, [esp + 0x34]
push 0
push 0x2b
lea edx, [esp + 0x5c]
push edx
push eax
call fcn.004404d0
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
xor eax, eax
cmp edi, esi
sete al
mov dword [esp + 0x28], esi
jmp dword [eax*4 + 0x44dcc8]
mov eax, esi
sub eax, edi
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.0040cad0
add esp, 4
mov dword [esp + 0x24], 0
xor ecx, ecx
cmp edi, esi
setne cl
mov dword [esp + 0x20], eax
mov dword [esp], eax
jmp dword [ecx*4 + 0x44dcd0]
mov edi, dword [esp + 0x30]
add edi, 8
xor eax, eax
mov esi, dword [esp + 0x28]
cmp edi, esi
setne al
jmp dword [eax*4 + 0x44dcd0]
mov esi, dword [edi]
mov dword [esp + 0x30], edi
mov edi, dword [edi + 4]
push 0x400
push 0
lea ebx, [esp + 0x5c]
push ebx
call fcn.0040cb50
add esp, 0xc
lea eax, [esp + 8]
lea ecx, [esp + 0x34]
push eax
push 0
push 0x400
push ebx
push edi
push esi
call fcn.00440340
cmp eax, 0xc0000000
setae al
mov ecx, dword [esp + 8]
or ecx, dword [esp + 0xc]
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44dce0]
mov eax, 1
jmp dword [eax*4 + 0x44dce8]
xor eax, eax
jmp dword [eax*4 + 0x44dce8]
mov ebx, dword [esp + 0x24]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x44dcd8]
jmp dword [0x44dd28]
xor ebx, ebx
test edi, edi
jne 0x42c0bf
jmp 0x42c0cc
mov eax, dword [esp]
mov byte [eax], 0
mov dword [esp + 0x54], 0xe5eaeb03
mov dword [esp + 0x58], 0xe9f9fae7
mov dword [esp + 0x5c], 0xe4e0e2e3
mov dword [esp + 0x60], 0xeee20221
mov dword [esp + 0x64], 0xfddb18f3
mov dword [esp + 0x68], 0x1f151219
mov dword [esp + 0x6c], 0x2916d119
mov word [esp + 0x70], 0xa714
mov dword [esp + 0x72], 0
mov word [esp + 0x76], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x54]
mov esi, eax
and esi, 0x24
xor esi, 0x58fe6a4
mov edx, eax
and edx, 0x1b
sub edx, esi
add edx, 0x7e1a9293
mov esi, ecx
and esi, edx
add esi, esi
sub edx, esi
add dl, cl
add dl, 0x55
mov byte [esp + eax + 0x54], dl
inc eax
cmp eax, 0x24
jne 0x42c050
mov edx, dword [esp + 0x20]
mov esi, dword [esp]
sub esi, edx
lea eax, [esp + 0x54]
mov ecx, dword [ebp + 8]
push esi
push edx
push eax
call fcn.0040d480
mov ebx, eax
jmp dword [0x44dd28]
cmp edi, esi
je 0x42c0cc
push edi
call fcn.0040cae0
add esp, 4
jmp dword [0x44dd44]