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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x8c
mov dword [esp + 0x18], 0x5a667673
mov dword [esp + 0x1c], 0x4e4c506c
lea ebx, [esp + 0x20]
mov byte [esp + 0x20], 0xa4
mov word [esp + 0x21], 0
mov byte [esp + 0x23], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xb
ja 0x40f476
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411790
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xc
jb 0x40f450
lea esi, [esp + 0x83]
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 + 0x8b]
xor ecx, ecx
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
movzx eax, byte [esp + 0x20]
mov byte [esp + 0x8b], al
mov dword [esp + 0x18], 0x77e50947
mov dword [esp + 0x1c], 0x73ee75e6
mov dword [esp + 0x20], 0x7fec71dd
mov dword [esp + 0x24], 0x7b2f7de0
mov dword [esp + 0x28], 0x67ff79c4
mov dword [esp + 0x2c], 0x63cf65f4
mov dword [esp + 0x30], 0x6f0e6126
mov dword [esp + 0x34], 0x6bfa6dcd
mov dword [esp + 0x38], 0x57c269f8
mov dword [esp + 0x3c], 0x53fd55fd
mov dword [esp + 0x40], 0x5fc251f1
mov dword [esp + 0x44], 0x5bc95df5
mov dword [esp + 0x48], 0x471559ca
mov dword [esp + 0x4c], 0x431745dc
mov dword [esp + 0x50], 0x4fd541db
mov dword [esp + 0x54], 0x4b1f4dd7
mov dword [esp + 0x58], 0xb72549e2
mov dword [esp + 0x5c], 0xb327b52a
mov dword [esp + 0x60], 0xbf23b1e5
mov dword [esp + 0x64], 0xbb2ebd22
mov dword [esp + 0x68], 0xa734b915
mov dword [esp + 0x6c], 0xa331a50b
mov dword [esp + 0x70], 0xaf03a10c
mov dword [esp + 0x74], 0xabdfad00
mov dword [esp + 0x78], 0x9796a9de
mov dword [esp + 0x7c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x67
ja 0x40f5b6
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411880
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x68
jb 0x40f590
mov edi, dword [esp + 0xa0]
mov dword [esp], 0xcfafc99b
mov dword [esp + 4], 0xc35bcd5c
mov word [esp + 8], 0xc1c0
mov dword [esp + 0xa], 0
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x10]
cmp eax, 0xd
ja 0x40f619
nop
nop
nop
nop
mov eax, dword [esp + 0x10]
movzx eax, byte [esp + eax]
push dword [esp + 0x10]
push eax
call fcn.00411800
add esp, 8
mov ecx, dword [esp + 0x10]
mov byte [esp + ecx], al
inc dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp eax, 0xe
jb 0x40f5f0
lea eax, [esp + 0x10]
mov ecx, esp
push 0
push eax
push 8
push esi
push ebp
push ecx
push edi
call fcn.004102f0
add esp, 0x1c
test al, al
je 0x40f734
mov word [esp + 0x18], 0x9295
mov byte [esp + 0x1a], 0x26
mov word [esp + 0x1b], 0
mov byte [esp + 0x1d], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 5
ja 0x40f686
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.004118f0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 6
jb 0x40f660
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 0x40f6a1
inc eax
cmp dl, dh
je 0x40f690
mov al, 1
mov dword [esp + 0x14], eax
cmp dl, dh
je 0x40f902
mov dword [esp + 0x18], 0x65777061
mov dword [esp + 0x1c], 0xa554566f
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x40f6f6
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.00411960
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x40f6d0
mov eax, dword [esp + 0x10]
movzx ebx, byte [esp + 0x18]
test bl, bl
je 0x40f73b
mov edx, ebp
mov ecx, eax
jmp 0x40f717
movzx ebx, byte [edx]
test bl, bl
je 0x40f73d
mov bh, byte [eax]
test bh, bh
je 0x40f8fa
inc eax
inc edx
lea esi, [ecx + 1]
cmp bh, bl
je 0x40f72e
mov ecx, esi
mov eax, esi
je 0x40f710
mov edx, ebp
jmp 0x40f710
xor eax, eax
jmp 0x40f912
mov ecx, eax
test ecx, ecx
je 0x40f8fa
mov dword [esp + 0x18], 0x2a33283a
mov dword [esp + 0x1c], 0x3723ebc1
mov dword [esp + 0x20], 0xe7e03e33
mov dword [esp + 0x24], 0x2e26240e
mov dword [esp + 0x28], 0x9ff8d43d
mov word [esp + 0x2c], 0
mov byte [esp + 0x2e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x16
ja 0x40f7b6
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.004119d0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x17
jb 0x40f790
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x18]
test cl, cl
je 0x40f7f4
lea edi, [esp + 0x18]
mov edx, edi
mov esi, eax
jmp 0x40f7d7
movzx ecx, byte [edx]
test cl, cl
je 0x40f7f6
mov ch, byte [eax]
test ch, ch
je 0x40f8fa
inc eax
inc edx
lea ebx, [esi + 1]
cmp ch, cl
je 0x40f7ee
mov esi, ebx
mov eax, ebx
je 0x40f7d0
mov edx, edi
jmp 0x40f7d0
mov esi, eax
test esi, esi
je 0x40f8fa
mov word [esp + 0x18], 0x7f62
mov byte [esp + 0x1a], 0x82
mov dword [esp + 0x1b], 0
mov byte [esp + 0x1f], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x40f856
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.00411a70
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x40f830
movzx eax, byte [esp + 0x18]
test al, al
je 0x40f890
add esi, 0x13
lea ebp, [esp + 0x18]
mov ecx, ebp
mov edx, esi
mov edi, esi
jmp 0x40f877
movzx eax, byte [ecx]
test al, al
je 0x40f8a1
mov ah, byte [edx]
test ah, ah
je 0x40f8fa
inc edx
inc ecx
lea ebx, [edi + 1]
cmp ah, al
je 0x40f88a
mov edi, ebx
mov edx, ebx
je 0x40f870
mov ecx, ebp
jmp 0x40f870
mov byte [0x452994], 1
mov eax, 0x452996
jmp 0x40f923
test edi, edi
je 0x40f8fa
mov byte [0x452994], 1
mov dword [esp + 0x18], 0
mov eax, 0x452996
cmp esi, edi
jae 0x40f923
xor ebx, ebx
lea ebp, [esp + 0x18]
cmp byte [esi], 0
je 0x40f91d
push ebp
push edi
push esi
call fcn.00411390
add esp, 0xc
movzx edx, word [esp + 0x18]
lea ecx, [ebx + 2]
mov word [ebx + 0x452996], dx
cmp ebx, 0x1fb
ja 0x40f8f2
add esi, eax
mov ebx, ecx
cmp esi, edi
jb 0x40f8c3
lea eax, [ecx + 0x452996]
jmp 0x40f923
mov dword [esp + 0x14], 0
push dword [esp + 0x10]
call fcn.00441cd0
add esp, 4
mov eax, dword [esp + 0x14]
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [ebx + 0x452996]
mov word [eax], 0
jmp 0x40f902