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

Disassembly:
mov ecx, dword [0xe11d80]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x645329
sub esp, 0x70
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 4]
mov eax, dword [esp + 0x78]
cmp eax, ebx
jg 0x645274
xor ecx, ecx
jmp 0x644fdd
mov ebx, dword [esp + 0x20]
lea ecx, [ebx + 1]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
cmp eax, ecx
jle 0x64514f
mov ebx, dword [edx + 4]
cmp ecx, ebx
jae 0x64526b
mov dword [esp + 0x20], ecx
mov eax, dword [edx]
lea ebx, [ecx + ecx*4]
lea esi, [eax + ebx*4]
lea edi, [esp + 0x5c]
call fcn.00469e0e
mov eax, dword [edx + 0xc]
mov dword [esp + 0x34], eax
mov ecx, dword [edx + 0x10]
mov dword [esp + 0x30], ecx
mov ebx, dword [esp + 0x20]
sar ebx, 0x1f
mov dword [esp + 0x2c], ebx
mov esi, dword [edx + 0x14]
mov edi, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
lea ecx, [0x8e01c0]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.00410a40
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x34]
add edx, ecx
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x30]
adc ebx, ebp
add edx, 1
mov dword [esp + 0x24], edx
adc ebx, 0
mov dword [esp + 0x2c], ebx
cmp dword [eax], edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp dword [eax + 4], ebx
sete al
and eax, ebp
test al, al
je 0x6450a7
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x60]
lea ebp, [0x8e01c0]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00411460
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x18]
lea edx, [0x8e0ec0]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 8], ecx
call fcn.0040d160
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x24]
cmp dword [eax], ecx
sete cl
mov edx, dword [esp + 0x2c]
cmp dword [eax + 4], edx
sete al
and eax, ecx
test al, al
je 0x644fce
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x18]
lea edx, [0x8e0ec0]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 8], ecx
call fcn.0040db80
jmp 0x644fce
mov ecx, dword [edx + 4]
cmp eax, ecx
ja 0x645266
mov ebx, dword [edx]
mov ebp, dword [edx + 8]
lea esi, [0x92c7e0]
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
sub ecx, eax
sub ebp, eax
lea esi, [eax + eax*4]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl esi, 2
sar ebp, 0x1f
and esi, ebp
add ebx, esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00411c70
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x78]
sub ecx, edx
jmp 0x6451b3
mov ebx, eax
xor eax, eax
call fcn.0046992b
mov ecx, dword [esp + 0x1c]
inc ecx
mov eax, ebx
mov ebx, dword [eax + 4]
cmp ecx, ebx
jge 0x6451fe
jae 0x64525d
mov dword [esp + 0x1c], ecx
lea ebx, [ecx + ecx*4]
mov ebp, dword [0xe12160]
mov esi, dword [eax]
lea edi, [esi + ebx*4]
test ebp, ebp
je 0x6451a3
mov dword [esp + 0x38], edi
lea eax, [0x92c7e0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00411ba0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0x38]
jmp 0x6451a3
sub ebx, edx
mov ebp, dword [eax + 8]
cmp ebp, ebx
jb 0x645254
mov dword [eax + 4], ebx
mov ecx, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
mov ebp, edx
sar edx, 0x1f
add ebp, ecx
adc edx, ebx
cmp ebx, edx
seta bl
xchg esi, ebx
sete bl
xchg esi, ebx
cmp ebp, ecx
setb cl
and ecx, esi
or ebx, ecx
test bl, bl
jne 0x64523c
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], edx
add esp, 0x70
ret
lea eax, [0x8d9c60]
mov dword [esp], eax
lea eax, [0xa2d1b0]
mov dword [esp + 4], eax
call fcn.00438c00
mov ecx, ebx
mov edx, ebp
call fcn.00469730
mov eax, ecx
mov ecx, ebx
call fcn.004696f0
call fcn.00469750
mov eax, ecx
mov ecx, ebx
call fcn.004696f0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp], eax
call fcn.00409a60
mov eax, dword [esp + 4]
lea ecx, [0x8d9de0]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00409a60
mov eax, dword [esp + 4]
lea ecx, [0x8d9de0]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
lea eax, [0x98065c]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.00537e00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409b70
mov eax, dword [esp + 8]
lea ecx, [0x8d9c60]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438c00
nop
call fcn.00468280
jmp fcn.00644fa0