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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x88
mov dword [esp + 0x18], 0xea9e8e83
mov dword [esp + 0x1c], 0x86848084
lea ebx, [esp + 0x20]
mov byte [esp + 0x20], 0x2c
mov dword [esp + 0x21], 0
mov byte [esp + 0x25], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xd
ja 0x40f1a6
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411660
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xe
jb 0x40f180
lea esi, [esp + 0x7f]
lea ebp, [esp + 0x18]
mov eax, ebp
mov ecx, 2
mov edi, esi
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0x87]
xor ecx, ecx
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
movzx eax, byte [esp + 0x20]
mov byte [esp + 0x87], al
mov dword [esp + 0x18], 0x118f1fd9
mov dword [esp + 0x1c], 0x1586138e
mov dword [esp + 0x20], 0x98817f3
mov dword [esp + 0x24], 0xdd50b9c
mov dword [esp + 0x28], 0x1850ff8
mov dword [esp + 0x2c], 0x5e50390
mov dword [esp + 0x30], 0x392607ce
mov dword [esp + 0x34], 0x3daa3bdb
mov dword [esp + 0x38], 0x31a23fac
mov dword [esp + 0x3c], 0x35d733ab
mov dword [esp + 0x40], 0x29a237d7
mov dword [esp + 0x44], 0x2dbb2bb3
mov dword [esp + 0x48], 0x21ff2fb2
mov dword [esp + 0x4c], 0x25fd23a8
mov dword [esp + 0x50], 0xd9af27ad
mov dword [esp + 0x54], 0xdd05db51
mov dword [esp + 0x58], 0xd14fdf3a
mov dword [esp + 0x5c], 0xd54dd342
mov dword [esp + 0x60], 0xc941d70b
mov dword [esp + 0x64], 0xcd56cb5a
mov dword [esp + 0x68], 0xc150cf2b
mov dword [esp + 0x6c], 0xc553c325
mov dword [esp + 0x70], 0xf921c720
mov dword [esp + 0x74], 0xfdc5fb1c
mov dword [esp + 0x78], 0xf1feffc6
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x63
ja 0x40f2d6
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411750
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x64
jb 0x40f2b0
mov edi, dword [esp + 0x9c]
mov dword [esp], 0x73d37187
mov dword [esp + 4], 0x7fd77dcc
mov word [esp + 8], 0x7978
mov dword [esp + 0xa], 0
mov byte [esp + 0xe], 0
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x10]
cmp eax, 0xe
ja 0x40f349
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x10]
movzx eax, byte [esp + eax]
push dword [esp + 0x10]
push eax
call fcn.004116e0
add esp, 8
mov ecx, dword [esp + 0x10]
mov byte [esp + ecx], al
inc dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp eax, 0xf
jb 0x40f320
lea eax, [esp + 0x10]
mov ecx, esp
push 0
push eax
push 8
push esi
push ebp
push ecx
push edi
call fcn.0040fd80
add esp, 0x1c
test al, al
je 0x40f474
mov word [esp + 0x18], 0xeae7
mov byte [esp + 0x1a], 0x92
mov word [esp + 0x1b], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 4
ja 0x40f3b6
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.004117c0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 5
jb 0x40f390
xor eax, eax
mov ecx, dword [esp + 0x10]
nop
nop
nop
nop
movzx edx, byte [ecx + eax]
mov dh, byte [esp + eax + 0x18]
test dl, dl
je 0x40f3d1
inc eax
cmp dl, dh
je 0x40f3c0
mov al, 1
mov dword [esp + 0x14], eax
cmp dl, dh
je 0x40f642
mov dword [esp + 0x18], 0x37212433
mov dword [esp + 0x1c], 0x87282a2d
mov dword [esp + 0x20], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xb
ja 0x40f436
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411840
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xc
jb 0x40f410
mov eax, dword [esp + 0x10]
movzx ebx, byte [esp + 0x18]
test bl, bl
je 0x40f47b
mov edx, ebp
mov ecx, eax
jmp 0x40f457
movzx ebx, byte [edx]
test bl, bl
je 0x40f47d
mov bh, byte [eax]
test bh, bh
je 0x40f63a
inc eax
inc edx
lea esi, [ecx + 1]
cmp bh, bl
je 0x40f46e
mov ecx, esi
mov eax, esi
je 0x40f450
mov edx, ebp
jmp 0x40f450
xor eax, eax
jmp 0x40f652
mov ecx, eax
test ecx, ecx
je 0x40f63a
mov dword [esp + 0x18], 0xaea790a6
mov dword [esp + 0x1c], 0xa38f4f69
mov dword [esp + 0x20], 0x4b48b2bf
mov dword [esp + 0x24], 0xaab284aa
mov dword [esp + 0x28], 0x234064bd
mov byte [esp + 0x2c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x14
ja 0x40f4f6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.004118d0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x15
jb 0x40f4d0
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x18]
test cl, cl
je 0x40f534
lea edi, [esp + 0x18]
mov edx, edi
mov esi, eax
jmp 0x40f517
movzx ecx, byte [edx]
test cl, cl
je 0x40f536
mov ch, byte [eax]
test ch, ch
je 0x40f63a
inc eax
inc edx
lea ebx, [esi + 1]
cmp ch, cl
je 0x40f52e
mov esi, ebx
mov eax, ebx
je 0x40f510
mov edx, edi
jmp 0x40f510
mov esi, eax
test esi, esi
je 0x40f63a
mov word [esp + 0x18], 0xf11e
mov byte [esp + 0x1a], 0x3e
mov dword [esp + 0x1b], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 6
ja 0x40f596
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411970
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 7
jb 0x40f570
movzx eax, byte [esp + 0x18]
test al, al
je 0x40f5d0
add esi, 0x13
lea ebp, [esp + 0x18]
mov ecx, ebp
mov edx, esi
mov edi, esi
jmp 0x40f5b7
movzx eax, byte [ecx]
test al, al
je 0x40f5e1
mov ah, byte [edx]
test ah, ah
je 0x40f63a
inc edx
inc ecx
lea ebx, [edi + 1]
cmp ah, al
je 0x40f5ca
mov edi, ebx
mov edx, ebx
je 0x40f5b0
mov ecx, ebp
jmp 0x40f5b0
mov byte [0x455f94], 1
mov eax, 0x455f96
jmp 0x40f663
test edi, edi
je 0x40f63a
mov byte [0x455f94], 1
mov dword [esp + 0x18], 0
mov eax, 0x455f96
cmp esi, edi
jae 0x40f663
xor ebx, ebx
lea ebp, [esp + 0x18]
cmp byte [esi], 0
je 0x40f65d
push ebp
push edi
push esi
call fcn.00410f10
add esp, 0xc
movzx ecx, word [esp + 0x18]
mov word [ebx + 0x455f96], cx
lea ecx, [ebx + 2]
cmp ebx, 0x1fb
ja 0x40f632
add esi, eax
mov ebx, ecx
cmp esi, edi
jb 0x40f603
lea eax, [ecx + 0x455f96]
jmp 0x40f663
mov dword [esp + 0x14], 0
push dword [esp + 0x10]
call fcn.00443e70
add esp, 4
mov eax, dword [esp + 0x14]
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [ebx + 0x455f96]
mov word [eax], 0
jmp 0x40f642