Function at 0x408e6b
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov edx, dword [ebp - 0xcb4]
mov dword [ebp - 0x504], edx
push ecx
push ebx
add esp, 4
xor ecx, 0xe200
and ecx, 0x170c0
or ecx, 0x18d
jmp 0x408bdf
pop ecx
push ebx
push ecx
add esp, 4
add ebx, 0x169bd
sub ebx, 0x3fc3
pop ebx
lea eax, [ebp - 0x1758]
mov dword [ebp - 0xcb0], eax
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcac], edx
xor eax, eax
mov word [ebp - 0x230], ax
xor ecx, ecx
mov word [ebp - 0x44], cx
push ecx
push esi
add esp, 4
or ecx, 0x181a6
pop ecx
push eax
or eax, 0x48bb
add eax, 0x16fbc
pop eax
push ecx
push edi
add esp, 4
and ecx, 0x8ffc
and ecx, 0x11bf1
and ecx, 0x119ac
pop ecx
mov edx, dword [ebp - 0xcac]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcac]
add ecx, 2
mov dword [ebp - 0xcac], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x230], dx
mov eax, dword [ebp - 0xcb0]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcb0]
inc dword [ebx - 0x6a76fd3e]
push eax
invalid
invalid
jmp dword [esi - 0x75]
test dword [eax + 0x66ffffef], edi
mov dword [ebp - 0x44], eax
push ebx
call 0x408cb5
add byte [edi], bh
dec ebp
dec edi
inc ebp
push eax
inc ebp
xor edi, dword [edi]
add esp, 4
add ebx, 0xfba
add ebx, 0x86bd
or ebx, 0xcde2
pop ebx
push esi
push eax
add esp, 4
add esi, 0x1693c
pop esi
movzx ecx, word [ebp - 0x44]
test ecx, ecx
jne 0x408cf4
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
sub edx, eax
mov dword [ebp - 0x15e8], edx
jmp 0x408d4e
movzx ecx, word [ebp - 0x230]
movzx edx, word [ebp - 0x44]
cmp ecx, edx
je 0x408c1c
movzx eax, word [ebp - 0x230]
xor eax, 0x20
movzx ecx, word [ebp - 0x44]
cmp eax, ecx
je 0x408c1c
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
cmp edx, eax
jge 0x408d38
mov dword [ebp - 0x15e4], 0xffffffff
jmp 0x408d42
mov dword [ebp - 0x15e4], 1
mov ecx, dword [ebp - 0x15e4]
mov dword [ebp - 0x15e8], ecx
cmp dword [ebp - 0x15e8], 0
jne 0x408d97
push esi
and esi, 0x10d56
or esi, 0x15052
or esi, 0x6828
pop esi
push eax
push ebx
add esp, 4
add eax, 0xe0fd
or eax, 0x37ff
xor eax, 0x92ca
jmp 0x408d88
pop eax
mov edx, dword [ebp - 0x504]
mov dword [ebp - 0x758], edx
jmp 0x408dff
push edi
jmp 0x408d9e
call 0x408dab
add byte [ecx + edi], bh
xor esi, dword [edx]
inc edi
cmp byte [eax - 0x7d], cl
les eax, [ecx + eax*4]
not dword [esi]
pop edx
add dword [eax], eax
add edi, 0x11fd9
pop edi
push ecx
sub ecx, 0x25fa
sub ecx, 0x14b14
pop ecx
mov eax, dword [ebp - 0x504]
mov ecx, dword [eax]
mov dword [ebp - 0x504], ecx
mov edx, dword [ebp - 0x504]
cmp edx, dword [ebp - 0xcb4]
je 0x408df5
mov eax, dword [ebp - 0x504]
cmp dword [eax + 0x30], 0
jne 0x408bc0
mov dword [ebp - 0x758], 0
cmp dword [ebp - 0x758], 0
jne 0x408e49
push eax
call 0x408e18
add byte [ecx + 0x47], cl
inc ebp
dec edx
cmp dword [edx], edi
inc ecx
inc edx
xor al, 0x83
les eax, [eax + ebx*2]
push ecx
and ecx, 0xab16
jmp 0x408e2c
pop es
jmp 0x408e33
jmp 0x408e39
pop ecx
mov dword [ebp - 0x7a4], 0
jmp 0x409971
push ebx
and ebx, 0x1cdd
pop ebx
push edx
sub edx, 0x129c8
pop edx
push esi
push edx
add esp, 4
call 0x408e6b
add byte [ecx + ecx*2], bh
dec esp
xor al, byte [esi + 0x4d]
cmp dword [ebx - 0x197efb3c], eax
rcr dword [ebp + 1], cl
add byte [ecx + 0xd779f6], al
add byte [esi - 0x75], bl
lea ebp, [eax - 0x74000008]
push ecx
sbb byte [ecx - 0x3a36b], cl
inc edi
test dword [eax + 0xfffff8], ebx
add byte [eax], al
add byte [ebx - 0x3a37b], cl
dec dword [ecx - 0x15eb7b]
inc dword [ebx - 0x15eb43]
inc dword [eax]
jne 0x408eba
mov ecx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], ecx
jmp 0x4091ab
mov edx, dword [ebp - 0x15ec]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x15f0], eax
jne 0x408ee2
mov ecx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], ecx
jmp 0x4091ab
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x15f0]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x15f4], edx
cmp dword [ebp - 0x15f4], 0
jne 0x408f14
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
jmp 0x4091ab
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x15f4]
mov dword [ebp - 0x75c], ecx
jne 0x408f39
mov edx, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], edx
jmp 0x4091ab
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19d8], ecx
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
and al, 0x89
test dword [esi], esp
invalid
dec dword [ebx - 0x75b73]
dec dword [ebx - 0x3a36b]
inc dword [ebx]
push ecx
sbb al, 0x89
xchg ebp, eax
and dh, ah
invalid
inc edi
test dword [eax + 0xfffff8], esp
add byte [eax], al
add bl, ch
invalid
mov eax, dword [ebp - 0x760]
add eax, 1
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x760]
cmp edx, dword [ecx + 0x18]
jae 0x40919f
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x19d8]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x19dc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19e0]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19e4], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x409003
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4090b5
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
test eax, eax
je 0x4090b5
push ebx
add ebx, 0xa2eb
pop ebx
push eax
push ecx
add esp, 4
sub eax, 0x11402
sub eax, 0xf536
pop eax
push edx
and edx, 0x1248e
pop edx
push ebx
jmp 0x40905b
sub ebx, 0xb6a8
pop ebx
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
cmp edx, ecx
je 0x4090a7
mov edx, dword [ebp - 0x764]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x89c]
cmp eax, edx
jne 0x4090ae
jmp 0x408ff4
jmp 0x4090b5
push edi
push edi
add esp, 4
sub edi, 0x18073
or edi, 0x30f8
jmp 0x4090cc
pop edi
push eax
xor eax, 0x8fe4
xor eax, 0x2b8a
add eax, 0xc462
sub eax, 0x2a21
pop eax
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
cmp ecx, eax
jne 0x409114
mov dword [ebp - 0xcb8], 0
jmp 0x409183
push edx
push ebx
add esp, 4
add edx, 0x109da
and edx, 0x120b4
xor edx, 0x11e44
pop edx
push esi
xor esi, 0x3dd
or esi, 0x15d26
or esi, 0xe3a6
xor esi, 0xdda4
pop esi
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
or ecx, 0x20
cmp edx, ecx
jge 0x409179
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x409183
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x40919a
mov edx, dword [ebp - 0x19e4]
mov dword [ebp - 0x3e0], edx
jmp 0x4091ab
jmp 0x408f84
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0
je 0x409286
push edi
push edi
add esp, 4
jmp 0x4091c4
and edi, 0x17e26
and edi, 0x11c94
jmp 0x4091d7
pop edi
push ecx
push ebx
add esp, 4
sub ecx, 0xc912
add ecx, 0xdf9d
pop ecx
mov ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x1d6c], ecx
push ebx
call 0x409204
add byte [edi + 0x47], cl
aaa
xor eax, 0xc4833a3c
add al, 0xeb
add eax, 0x3b3e4f42
dec edi
call 0x40921e
add byte [ebx], bh
push eax
aaa
cmp byte [ebx], bh
dec eax
push eax
cmp al, 0x35
inc eax
add esp, 4
or ebx, 0x8916
pop ebx
mov edx, dword [ebp - 0x1d6c]
mov dword [ebp - 0x19e8], edx
lea eax, [ebp - 0x173c]
push eax
call dword [ebp - 0x19e8]
test eax, eax
jne 0x409286
push esi
sub esi, 0xb6e4
xor esi, 0x17252
pop esi
push ecx
push eax
add esp, 4
add ecx, 0xb00
sub ecx, 0xf862
pop ecx
push eax
push esi
add esp, 4
and eax, 0x16414
sub eax, 0x14a20
pop eax
mov dword [ebp - 0x7a4], 0
jmp 0x409971
push ebx
push esi
add esp, 4
call 0x409298
add byte [edi + 0x3e], al
inc ecx
dec esp
inc esp
inc esi
add esp, 4
add ebx, 0xa6a1
add ebx, 0x2bfc
call 0x4092b4
add byte [eax + 0x48], cl
aaa
dec esi
inc ebx
xor eax, 0x4c48344
pop ebx
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19ec], ecx
mov edx, dword [ebp - 0x19ec]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19f0], eax
mov ecx, dword [ebp - 0x19f0]
mov dword [ebp - 0x15f8], ecx
push edx
push esi
add esp, 4
jmp 0x4092ea
pop edx
push edx
push eax
add esp, 4
and edx, 0x51a2
call 0x409306
add byte [ebx + 0x36], al
dec eax
cmp eax, dword [eax + 0x3b]
dec ebx
xor eax, 0xc4834c4a
add al, 0x5a
push ebx
add ebx, 0x12092
pop ebx
cmp dword [ebp - 0x15f8], 0
jne 0x40932a
mov dword [ebp - 0x2f0], 0
jmp 0x4095d1
mov edx, dword [ebp - 0x15f8]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcc4], ecx
push esi
push ebx
add esp, 4
add esi, 0x93b2
pop esi
push eax
push eax
add esp, 4
xor eax, 0xd140
call 0x409362
add byte [ebx], dh
inc edx
dec esp
cmp al, 0x4e
dec esp
inc edi
inc esp
add esp, 4
pop eax
push eax
or eax, 0x4ead
pop eax
cmp dword [ebp - 0xcc4], 0
jne 0x409386
mov dword [ebp - 0x2f0], 0
jmp 0x4095d1
mov edx, dword [ebp - 0xcc4]
mov dword [ebp - 0x508], edx