Function at 0x416734
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc8
mov esi, esp
mov eax, dword [ebp + 0xc]
push eax
sub esp, 0x24
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 4], ecx
mov esp, ecx
push eax
mov dword [esi + 0x14], esp
push eax
mov dword [esi + 0x34], esp
push eax
mov dword [esi + 0x60], esp
push eax
mov dword [esi + 0x84], esp
sub esp, 0x28
mov dword [esi + 0x80], esp
sub esp, 0x30
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 8], ecx
mov esp, ecx
push eax
sub esp, 0x18
mov ebx, esp
sub esp, 0x28
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x10], ecx
mov esp, ecx
push eax
mov dword [esi + 0xc], esp
push eax
mov dword [esi + 0x68], esp
push eax
mov dword [esi + 0x64], esp
push eax
mov dword [esi + 0x50], esp
push eax
mov dword [esi + 0x3c], esp
push eax
mov dword [esi + 0x8c], esp
sub esp, 0x20
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x90], ecx
mov esp, ecx
push eax
mov dword [esi + 0x4c], esp
sub esp, 8
mov dword [esi + 0x7c], esp
sub esp, 8
mov dword [esi + 0x58], esp
sub esp, 0x10
mov dword [esi + 0x74], esp
sub esp, 0x18
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x5c], ecx
mov esp, ecx
push eax
mov dword [esi + 0x78], esp
push eax
mov dword [esi + 0x88], esp
push eax
mov dword [esi + 0x44], esp
sub esp, 0x20
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x9c], ecx
mov esp, ecx
push eax
mov dword [esi + 0x40], esp
push eax
mov dword [esi + 0x54], esp
push eax
mov dword [esi + 0x48], esp
push eax
mov dword [esi + 0x94], esp
push eax
mov dword [esi + 0x70], esp
sub esp, 0xc
mov dword [esi + 0xa0], esp
sub esp, 0xc
mov dword [esi + 0x98], esp
sub esp, 0x18
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x6c], ecx
mov esp, ecx
mov edi, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax + edi + 2], 0
lea edi, [edi + 2]
jne 0x416830
sar edi, 1
lea ecx, [esi + 0x38]
push ecx
push 0
push 0
push edi
push eax
push 0
call dword [0x449684]
mov eax, dword [esi + 0x38]
test eax, eax
mov dword [esi + 0x18], eax
jns 0x416860
mov eax, 0xffffffff
jmp 0x416862
add eax, eax
push eax
call fcn.00408f80
add esp, 4
lea ecx, [esi + 0x38]
push ecx
push dword [esi + 0x18]
mov dword [esi + 0x18], eax
push eax
push edi
push dword [ebp + 0xc]
push 0
call dword [0x449684]
mov edi, dword [esi + 4]
mov dword [edi], 0xeb08d53a
mov dword [edi + 4], 0xef1de90d
mov dword [edi + 8], 0xe3cced1a
mov dword [edi + 0xc], 0xe71be108
mov dword [edi + 0x10], 0xfb11e510
mov dword [edi + 0x14], 0xff09f905
mov dword [edi + 0x18], 0xf3fcfd0c
lea eax, [edi + 0x1c]
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x23], 0
mov dword [esi + 0x20], 0
mov ecx, dword [esi + 0x20]
cmp ecx, 0x26
ja 0x416927
nop
nop
nop
nop
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0x20]
movzx edx, byte [edi + edx]
lea edi, [ecx + 0x1d]
and edi, edx
add ecx, edx
add edi, edi
sub ecx, edi
mov edi, dword [esi + 4]
add ecx, 0x42ff061d
mov dword [esi + 0xa4], ecx
mov ecx, dword [esi + 0xa4]
mov edx, ecx
or edx, 0x34
and ecx, 0x34
add ecx, edx
inc cl
mov edx, dword [esi + 0x20]
mov byte [edi + edx], cl
inc dword [esi + 0x20]
mov ecx, dword [esi + 0x20]
cmp ecx, 0x27
jb 0x4168e0
mov edx, edi
lea edi, [esi + 0xa4]
mov ecx, 7
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esi + 0xc0]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x38]
mov ecx, eax
and ecx, 0xe
mov edx, eax
xor edx, 0xe
lea ecx, [edx + ecx*2]
or eax, 0xfffffffe
and ecx, 0xfffffffe
lea edx, [eax + ecx]
inc edx
test edx, edx
jns 0x41696c
mov eax, 0xffffffff
jmp 0x416973
add eax, ecx
add eax, eax
add eax, 2
push eax
call fcn.00408f80
add esp, 4
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov ecx, dword [esi + 0x18]
movzx edx, word [ecx]
mov ecx, eax
test dx, dx
je 0x4169b1
mov ecx, dword [esi + 0x18]
lea edi, [ecx + 2]
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x4169a0
mov word [ecx], 0
movzx edx, word [esi + 0xa4]
test dx, dx
je 0x4169e1
lea edi, [esi + 0xa6]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x4169d0
mov word [ecx], 0
push 0x60
push 3
push 0x120089
mov edi, dword [esi + 0x34]
push edi
push eax
call fcn.0043b270
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442ca4]