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

Disassembly:
mov ecx, dword [0xe11d80]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x30]
cmp eax, dword [ecx + 8]
jbe 0x643765
sub esp, 0xb0
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 0x34]
mov edx, dword [eax + 0x38]
mov ebx, dword [eax + 0x3c]
mov byte [esp], 7
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00643f40
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
test eax, eax
jne 0x64372e
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x10]
mov dword [esp + 0x38], eax
mov edi, dword [esp + 0x14]
mov dword [esp + 0x48], edi
lea edi, [esp + 0x58]
xor eax, eax
call fcn.0046992b
mov ecx, dword [esp + 0x48]
test ecx, ecx
xchg edi, ebx
sete bl
xchg edi, ebx
mov ebx, dword [esp + 0x38]
test ebx, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
and edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x643513
xor ecx, ecx
jmp 0x643608
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], ebp
mov esi, dword [0xdc3508]
mov edi, dword [esi + 4]
mov dword [esp + 0x44], edi
sar edi, 0x1f
cmp ecx, edi
xchg edi, ebx
sete bl
xchg edi, ebx
setb al
mov ebp, dword [esp + 0x44]
cmp ebp, ebx
setae dl
and edx, edi
or eax, edx
test al, al
je 0x643583
add ebx, 0xffffffff
adc ecx, 0xffffffff
test ecx, ecx
jne 0x643759
cmp ebx, ebp
jae 0x643750
lea ecx, [ebx + ebx*4]
mov edx, dword [esi]
lea esi, [edx + ecx*4]
lea edi, [esp + 0x58]
call fcn.00469e0e
xor eax, eax
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov ecx, 1
jmp 0x643608
mov esi, dword [esp + 0xb4]
mov edx, dword [esi + 4]
add edx, ebp
mov ebp, edx
sar edx, 0x1f
cmp ecx, edx
seta cl
sete dl
cmp ebx, ebp
seta bl
and edx, ebx
or edx, ecx
test dl, dl
je 0x6435b7
xor eax, eax
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
xor ecx, ecx
jmp 0x643608
lea edi, [esp + 0x94]
call fcn.00469dfa
mov ecx, dword [0xdc3508]
mov edx, dword [esp + 0x30]
sub edx, dword [ecx + 4]
mov eax, dword [esp + 0x98]
mov ecx, eax
sub eax, edx
cmp ecx, eax
jbe 0x64374b
lea ecx, [eax + eax*4]
mov edx, dword [esp + 0x94]
lea esi, [edx + ecx*4]
lea edi, [esp + 0x58]
call fcn.00469e0e
xor eax, eax
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov ecx, 1
mov byte [esp + 0x2f], cl
lea edi, [esp + 0x6c]
lea esi, [esp + 0x58]
call fcn.00469e0e
movzx ecx, byte [esp + 0x2f]
test cl, cl
je 0x6436cb
mov ecx, dword [esp + 0xb4]
mov dword [ecx + 0x38], edx
mov dword [ecx + 0x3c], ebp
mov edx, dword [0xe12160]
test edx, edx
jne 0x643643
mov edx, dword [esp + 0x4c]
jmp 0x643654
call fcn.00469690
mov edx, dword [esp + 0x4c]
mov dword [edi], edx
mov ebx, dword [ecx + 0x34]
mov dword [edi + 4], ebx
mov dword [ecx + 0x34], edx
lea edi, [esp + 0x80]
call fcn.0046992b
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], edx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], edx
mov ecx, dword [esp + 0xb4]
mov dword [esp], ecx
lea edi, [esp + 4]
lea esi, [esp + 0x80]
call fcn.00469e0e
call fcn.00643cf0
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], edx
add esp, 0xb0
ret
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00409a60
mov eax, dword [esp + 4]
lea ecx, [0xa2e5e0]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
lea eax, [0x905d40]
mov dword [esp], eax
lea eax, [esp + 0x50]
mov dword [esp + 4], eax
call fcn.00409930
mov eax, dword [esp + 8]
lea ecx, [0xa2dfa0]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], eax
add esp, 0xb0
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0xb0
ret
call fcn.004696f0
mov eax, ebx
mov ecx, ebp
call fcn.00469700
mov esi, ecx
mov eax, ebx
mov ecx, ebp
call fcn.004697f0
nop
call fcn.00468280
jmp fcn.00643460