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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xac
mov eax, dword [0x41e140]
xor eax, esp
mov dword [esp + 0xa8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x10]
xor ebx, ebx
push edi
mov dword [esp + 0x24], eax
cmp esi, ebx
je 0x4014ae
xor ecx, ecx
cmp cx, word [esi]
je 0x4014ae
xor eax, eax
mov edi, 7
mov word [esp + 0x48], ax
xor edx, edx
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x98], edi
mov dword [esp + 0x94], ebx
mov word [esp + 0x84], dx
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], ebx
mov word [esp + 0x68], cx
mov dword [esp + 0xb4], edi
mov dword [esp + 0xb0], ebx
mov word [esp + 0xa0], dx
call fcn.00401760
xor ecx, ecx
mov eax, esi
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], cx
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4011f0
sub eax, edx
sar eax, 1
push eax
mov eax, esi
lea esi, [esp + 0x2c]
call fcn.00401b40
lea edx, [esp + 0xc]
push edx
mov eax, esi
push eax
call entry0
mov esi, 8
add esp, 8
cmp dword [esp + 0x40], esi
jb 0x401233
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.00406756
add esp, 4
mov ecx, dword [esp + 0x1c]
sub ecx, dword [esp + 0x18]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
jae 0x4012fc
lea esi, [esp + 0xc]
call fcn.004017c0
mov esi, 8
cmp dword [esp + 0xb0], esi
jb 0x40127e
mov edx, dword [esp + 0x9c]
push edx
call fcn.00406756
add esp, 4
xor eax, eax
mov dword [esp + 0xb0], edi
mov dword [esp + 0xac], ebx
mov word [esp + 0x9c], ax
cmp dword [esp + 0x78], esi
jb 0x4012a9
mov ecx, dword [esp + 0x64]
push ecx
call fcn.00406756
add esp, 4
xor edx, edx
mov dword [esp + 0x78], edi
mov dword [esp + 0x74], ebx
mov word [esp + 0x64], dx
cmp dword [esp + 0x5c], esi
jb 0x4012cb
mov eax, dword [esp + 0x48]
push eax
call fcn.00406756
add esp, 4
xor ecx, ecx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], ebx
mov word [esp + 0x48], cx
cmp dword [esp + 0x94], esi
jb 0x4014ae
mov edx, dword [esp + 0x80]
push edx
call fcn.00406756
add esp, 4
jmp 0x4014ae
cmp eax, ebx
ja 0x401305
call fcn.00406bd7
mov eax, dword [esp + 0x18]
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x84]
call fcn.00401a90
mov ecx, dword [esp + 0x1c]
sub ecx, dword [esp + 0x18]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x40133d
call fcn.00406bd7
mov eax, dword [esp + 0x18]
push 0xffffffffffffffff
push ebx
add eax, 0x1c
lea ecx, [esp + 0x68]
call fcn.00401a90
mov ecx, dword [esp + 0x1c]
sub ecx, dword [esp + 0x18]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 2
ja 0x401375
call fcn.00406bd7
mov eax, dword [esp + 0x18]
push 0xffffffffffffffff
push ebx
add eax, 0x38
lea ecx, [esp + 0x4c]
call fcn.00401a90
mov ecx, dword [esp + 0x1c]
sub ecx, dword [esp + 0x18]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x4013ad
call fcn.00406bd7
mov eax, dword [esp + 0x18]
push 0xffffffffffffffff
push ebx
add eax, 0x54
lea ecx, [esp + 0xa0]
call fcn.00401a90
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x94], esi
jae 0x4013da
lea eax, [esp + 0x80]
mov ecx, 0x41b568
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401406
cmp dx, bx
je 0x401402
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401406
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x4013e0
xor eax, eax
jmp 0x40140b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x40147e
mov edi, dword [esp + 0x24]
mov esi, dword [0x41913c]
push 0x64
push 0x420260
push 0x67
push edi
call esi
push 0x64
push 0x420198
push 0x6d
push edi
call esi
mov eax, edi
call fcn.004014d0
mov eax, edi
call fcn.00401560
test eax, eax
je 0x40147e
push 0x6d
push edi
call dword [0x419140]
mov eax, dword [esp + 0x64]
mov esi, 8
cmp dword [esp + 0x78], esi
jae 0x40145f
lea eax, [esp + 0x64]
push eax
call fcn.00406a6f
mov ecx, dword [esp + 0x4c]
add esp, 4
cmp dword [esp + 0x5c], esi
jae 0x401476
lea ecx, [esp + 0x48]
push ecx
mov ebx, eax
call fcn.00402f90
lea esi, [esp + 0xc]
call fcn.004017c0
lea esi, [esp + 0x98]
call fcn.00401700
lea esi, [esp + 0x60]
call fcn.00401700
lea esi, [esp + 0x44]
call fcn.00401700
lea esi, [esp + 0x7c]
call fcn.00401700
mov ecx, dword [esp + 0xb4]
pop edi
pop esi
pop ebx
xor ecx, esp
xor eax, eax
call fcn.00406761
mov esp, ebp
pop ebp
ret 0x10