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

Disassembly:
push eax
add eax, 0x15a58
call 0x40b7aa
add byte [ecx + 0x3b], cl
dec ebp
aaa
cmp eax, 0x34504d46
add esp, 4
pop eax
push edx
push ecx
add esp, 4
xor edx, 0x15f14
pop edx
push ecx
push ebx
add esp, 4
and ecx, 0xe9e6
pop ecx
lea eax, [ebp - 0x1774]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push esi
push eax
add esp, 4
call 0x40b804
add byte [0x3332354d], dh
inc ebx
dec ebx
dec esp
cmp byte [ebx - 0x117efb3c], al
enter 0x87, 0
sub esi, 0x7a16
pop esi
push edi
xor edi, 0x247e
or edi, 0x12b14
pop edi
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push ebx
push ebx
add esp, 4
sub ebx, 0x14f9a
pop ebx
push ebx
add ebx, 0x3037
and ebx, 0xaf02
sub ebx, 0x17328
pop ebx
push esi
push eax
add esp, 4
and esi, 0xd8b2
add esi, 0x16a8b
add dword [eax], eax
pop esi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40b8c8
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x166c], edx
jmp 0x40b922
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40b7f0
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40b7f0
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40b90c
mov dword [ebp - 0x1668], 0xffffffff
jmp 0x40b916
mov dword [ebp - 0x1668], 1
mov ecx, dword [ebp - 0x1668]
mov dword [ebp - 0x166c], ecx
cmp dword [ebp - 0x166c], 0
jne 0x40b96b
push edi
sub edi, 0x5dec
call 0x40b942
add byte [eax + 0x42], al
inc ebx
cmp ecx, dword [edi + 0x38]
cmp cl, byte [ebx + 0x3b]
cmp al, byte [ebx - 0x187efb3c]
sub eax, 0xe8000168
or dword [eax], eax
add byte [eax], al
add byte [esi + 0x38], al
inc ecx
xor eax, 0x39334345
add esp, 4
pop edi
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x40b9d3
push edx
sub edx, 0x6c57
add edx, 0xd6ca
pop edx
push edx
push eax
add esp, 4
sub edx, 0x1430a
sub edx, 0x4252
call 0x40b999
add byte [esi + ecx*2 + 0x43], cl
dec ecx
xor al, 0x4c
aaa
xor al, 0x83
les eax, [edx + ebx*2]
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 0x40b9c9
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x40b794
mov dword [ebp - 0x774], 0
push edi
jmp 0x40b9db
sub edi, 0x694f
and edi, 0x16c92
pop edi
push edx
xor edx, 0x1ccf
or edx, 0x3dd0
call 0x40ba01
add byte [ebp + 0x4e], al
inc edi
xor eax, 0xc4834e49
add al, 0x5a
cmp dword [ebp - 0x774], 0
jne 0x40ba4f
push ebx
push edx
add esp, 4
add ebx, 0x5816
and ebx, 0x1204b
pop ebx
push edx
push edx
add esp, 4
or edx, 0x1182e
pop edx
push edx
jmp 0x40ba33
pop edx
push eax
push ecx
add esp, 4
or eax, 0x31b5
pop eax
mov dword [ebp - 0xabc], 0
jmp 0x40c577
or eax, dword [eax]
invalid
push eax
push edi
add esp, 4
sub eax, 0x981
and eax, 0x154a1
pop eax
push esi
push ecx
add esp, 4
sub esi, 0xe9f6
xor esi, 0x4c5c
or esi, 0x8661
jmp 0x40ba80
pop esi
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 - 0x1670], eax
cmp dword [ebp - 0x1670], 0
jne 0x40bac0
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40bdb1
mov edx, dword [ebp - 0x1670]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1678], eax
jne 0x40bae8
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40bdb1
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1678]
mov edx, dword [ecx + eax + 0x78]
invalid
xchg ebp, eax