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

Disassembly:
enter 0x16e, 0
pop edx
push esi
xor esi, 0x7643
inc ebx
jbe 0x40b053
add byte [esi + 0xf], bl
mov bh, 0x4d
invalid
test ecx, ecx
jne 0x40b072
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x40b0cc
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40af9a
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40af9a
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40b0b6
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x40b0c0
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x40b115
push ecx
xor ecx, 0x264f
pop ecx
push eax
push ecx
add esp, 4
xor eax, 0x15d3
add eax, 0xeb4f
pop eax
push edx
jmp 0x40b0f9
xor edx, 0x1310c
jmp 0x40b106
pop edx
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x40b17d
push edi
push ebx
add esp, 4
or edi, 0xe485
pop edi
push ecx
or ecx, 0x8ce6
pop ecx
push ebx
push ebx
add esp, 4
les eax, [ecx + eax*4]
sub dword [eax + 1], 0xcecb8100
or byte [ecx], al
add byte [ecx + 0x40cce3], al
add bl, ch
invalid
pop ebx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax]
mov dword [ebp - 0x518], ecx
mov edx, dword [ebp - 0x518]
cmp edx, dword [ebp - 0xcd0]
je 0x40b173
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x40af3e
mov dword [ebp - 0x774], 0
push eax
push eax
add esp, 4
jmp 0x40b18a
add eax, 0xef16
and eax, 0x12a37
pop eax
push esi
push edi
add esp, 4
call 0x40b1ab
add byte [edi + ecx*2], bh
cmp eax, dword [esp + esi + 0x4a]
inc eax
cmp al, 0x3f
add esp, 4
pop esi
cmp dword [ebp - 0x774], 0
jne 0x40b1f9
push edx
xor edx, 0x7750
sub edx, 0x8795
pop edx
push ecx
xor ecx, 0x157c6
pop ecx
push ecx
jmp 0x40b1d5
pop ecx
push edx
sub edx, 0x1781f
add edx, 0xee8f
and edx, 0x69bb
pop edx
mov dword [ebp - 0xab4], 0
jmp 0x40bd21
push edi
sub edi, 0x517b
sub edi, 0xa165
pop edi
push ebx
or ebx, 0x14eab
and ebx, 0xe767
pop ebx
push edx
push esi
add esp, 4
call 0x40b227
add byte [ebx + 0x3d], cl
push eax
cmp byte ss:[edi + 0x48], cl
add esp, 4
pop edx
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jne 0x40b26a
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40b55b
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
cmp al, 0x89
test dword [eax + 0x75ffffe9], edx
invalid
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
invalid
jmp 0x40b55b
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
nop
jmp 0x54ccb2a1
add dword [eax - 0x77], edi
xchg ebp, eax
mov cl, ch
invalid
inc dword [ebx - 0x167743]
mov cl, ch
invalid
inc dword [eax]
jne 0x40b2c4
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x40b55b
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x40b2e9
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x40b55b
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19a4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19a8], eax
mov ecx, dword [ebp - 0x778]
dec dword [ebx - 0x3a36b]
inc dword [ebx]
push ecx
sbb al, 0x89
xchg ebp, eax
push esp
out 0xff, al
inc edi
test dword [eax + edi*8 + 0xffff], eax
add byte [eax], al
jmp 0x40b343
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x40b54f
invalid
add dword [eax], eax
invalid
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19a4]
mov edx, dword [ebp - 0x3a4]
invalid
inc dword [ebx]
adc al, 0x81
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
dec dword [ebx - 0x19a773]
dec dword [edi]
mov bh, 0x14
inc ecx
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x40b636
push ecx
or ecx, 0x11fc4
pop ecx
push ebx
push ecx
add esp, 4
call 0x40b582
add byte [eax], bh
dec ebp
xor dh, byte [edx]
inc esp
dec esi
add esp, 4
sub ebx, 0x12dee
pop ebx
push edi
sub edi, 0x14fd6
add edi, 0x17157
pop edi
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x19b4], ecx
push edx
push edi
add esp, 4
add edx, 0x607a
add edx, 0x67e2
pop edx
push ebx
push ecx
add esp, 4
call 0x40b5cc
add byte [edx + esi], dh
inc ecx
xor eax, dword [ebx + esi + 0x44]
dec edi
xor eax, 0xeb04c483
push es
inc eax
cmp dword [eax + 0x32], ecx
cmp al, 0x5b
mov edx, dword [ebp - 0x19b4]
mov dword [ebp - 0x19b8], edx
lea eax, [ebp - 0x1738]
push eax
call dword [ebp - 0x19b8]
test eax, eax
jne 0x40b636
push ecx
push edi
add esp, 4
sub ecx, 0xee95
push ecx
push esi
add esp, 4
jmp 0x40b642
jmp 0x40b649
pop ecx
push edi
push edi
add esp, 4
or edi, 0xd9eb
xor edi, 0xe893
xor edi, 0x4f32
add byte [ecx + 0xaad8ef], al
add byte [edi + 0x64], bl
mov ecx, dword [0x18]
mov dword [ebp - 0x19bc], ecx
mov edx, dword [ebp - 0x19bc]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19c0], eax
mov ecx, dword [ebp - 0x19c0]
mov dword [ebp - 0x167c], ecx
push edi
call 0x40b6a0
add byte [esi], bh