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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x650e8a
sub esp, 0x50
mov eax, 0
mov dword [esp + 0x4c], eax
mov byte [esp + 0x13], 0
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x78]
test ecx, ecx
jg 0x650b76
add esp, 0x50
ret
lea ecx, [eax + 0x38]
mov dword [esp + 0x24], ecx
mov dword [esp], ecx
call fcn.0046b610
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
lea eax, [0x650ef0]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x4c], eax
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x40]
lea edx, [0x688ae0]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
call fcn.0040cbb0
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x650e68
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x44]
lea edx, [0x688b20]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
call fcn.0040cbb0
mov esi, dword [esp + 0xc]
lea edi, [esp + 0x30]
call fcn.00464b0a
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x3c]
add eax, dword [esp + 0x44]
test eax, eax
jg 0x650c8e
mov eax, dword [esp + 0x18]
cmp eax, 1
jne 0x650c51
mov eax, dword [esp + 0x54]
mov eax, dword [eax + 0x40]
lea ecx, [0x688ae0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [esp + 0x58]
mov dword [esp + 8], eax
call fcn.0040d5e0
jmp 0x650c7d
mov eax, dword [esp + 0x54]
mov eax, dword [eax + 0x40]
lea ecx, [0x688ae0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [esp + 0x58]
mov dword [esp + 8], eax
call fcn.0040d100
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
dec ecx
mov dword [eax], ecx
mov byte [esp + 0x13], 0
mov edx, dword [esp + 0x4c]
mov eax, dword [edx]
call eax
add esp, 0x50
ret
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov eax, edx
sub edx, esi
mov ecx, ebx
mov ebx, dword [esp + 0x44]
add edx, ebx
mov dword [esp + 0x14], edx
mov edi, ebp
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x1c], ebp
mov ebp, dword [esp + 0x40]
test edx, edx
jle 0x650db1
cmp eax, esi
jg 0x650cf8
test ebx, ebx
jne 0x650cd0
xor ecx, ecx
jmp 0x650d30
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x30], ebp
mov dword [esp + 0x3c], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], edi
mov dword [esp + 0x40], ecx
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x3c]
cmp ecx, eax
jbe 0x650e63
mov ecx, dword [ebx + eax*4]
lea edi, [ebx + eax*4]
mov ebp, dword [0x8d9190]
test ebp, ebp
jne 0x650d25
mov dword [ebx + eax*4], 0
jmp 0x650d2c
xor eax, eax
call fcn.004643a0
inc dword [esp + 0x3c]
mov dword [esp + 0x20], ecx
nop
mov eax, dword [ecx + 0x3c]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.00405ff0
movzx eax, byte [esp + 8]
test al, al
jne 0x650c8e
lea eax, [0x6961c0]
mov dword [esp], eax
call fcn.0040bd00
mov eax, dword [esp + 4]
lea ecx, [0x650ea0]
mov dword [eax], ecx
mov ecx, dword [0x8d9190]
test ecx, ecx
jne 0x650d89
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x20]
mov dword [eax + 8], edx
jmp 0x650da5
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x54]
call fcn.004643a0
lea edi, [ecx + 8]
mov eax, dword [esp + 0x20]
call fcn.004643a0
mov eax, ecx
mov dword [esp], eax
call fcn.00441ac0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x3c]
add eax, dword [esp + 0x44]
test eax, eax
jne 0x650dea
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x44]
lea edx, [0x688b20]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
call fcn.0040d5e0
mov eax, dword [esp + 0x14]
test eax, eax
jmp 0x650e4c
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x44]
lea edx, [0x688b20]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
call fcn.0040d100
mov edi, dword [esp + 0xc]
test byte [edi], al
mov eax, dword [0x8d9190]
test eax, eax
jne 0x650e2c
lea esi, [esp + 0x30]
call fcn.00464b0a
mov eax, dword [esp + 0x14]
test eax, eax
jmp 0x650e4c
lea eax, [0x69f0e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x30]
mov dword [esp + 8], eax
call fcn.00411360
mov eax, dword [esp + 0x14]
test eax, eax
jle 0x650c25
mov byte [esp + 0x13], 0
mov edx, dword [esp + 0x4c]
mov eax, dword [edx]
call eax
add esp, 0x50
ret
call fcn.00464420
lea eax, [0x6871e0]
mov dword [esp], eax
lea eax, [0x726bf8]
mov dword [esp + 4], eax
call fcn.00436170
nop
call fcn.00435720
add esp, 0x50
ret
call fcn.00462f90
jmp fcn.00650b40