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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x44]
cmp eax, dword [ecx + 8]
jbe 0x670766
sub esp, 0xc4
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
call fcn.00672ae0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
test ecx, ecx
jne 0x6702f3
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xc8]
mov dword [edx], ecx
mov ebx, dword [0x9b1930]
test ebx, ebx
jne 0x66ff46
mov ebx, dword [esp + 0xd0]
mov dword [edx + 4], ebx
jmp 0x66ff60
lea edi, [edx + 4]
mov ebx, eax
mov eax, dword [esp + 0xd0]
call fcn.00463350
mov eax, ebx
mov ebx, dword [esp + 0xd0]
mov dword [esp + 0x58], eax
mov dword [edx + 0x24], ebp
mov dword [edx + 0x20], esi
mov ebp, dword [eax + 0x18]
mov esi, dword [esp + 0xd4]
cmp esi, ebp
mov edi, ebx
seta bl
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0xd8]
cmp edx, ecx
sete cl
seta dl
and ecx, ebx
or ecx, edx
test cl, cl
je 0x6700c7
sub esi, ebp
mov edx, dword [esp + 0xd8]
mov ebx, dword [esp + 0x44]
sbb edx, ebx
mov dword [esp + 0x40], edx
mov eax, 0x88888889
mul edx
shr edx, 4
mov dword [esp + 0x44], edx
imul ebp, edx, 0x1e
mov ecx, dword [esp + 0x40]
sub ecx, ebp
mov eax, ecx
mov ebp, 0x8888888
mul ebp
mov dword [esp + 0x3c], edx
mov ebp, eax
mov eax, 0x88888889
mul esi
shr edx, 4
mov eax, edx
add edx, 0
mov dword [esp + 0x38], edx
add edx, ebp
imul ebx, eax, 0x1e
sub esi, ebx
shl ecx, 4
add ecx, esi
mov ebx, eax
mov eax, ecx
mov esi, 0x88888889
mov ecx, edx
mul esi
shr edx, 4
mov esi, edx
add edx, ecx
add ebx, 0
mov ebx, dword [esp + 0x44]
adc ebx, 0
mov eax, edx
mov edx, dword [esp + 0x38]
add edx, ebp
mov edx, dword [esp + 0x3c]
adc edx, ebx
add esi, ecx
adc edx, 0
mov ecx, dword [esp + 0x58]
mov ebx, dword [ecx + 0x14]
cmp ebx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [ecx + 0x10]
cmp eax, esi
mov eax, esi
xchg esi, ebx
setae bl
xchg esi, ebx
cmp ebx, edx
setb dl
and esi, ebp
or esi, edx
xchg esi, eax
test al, al
xchg esi, eax
jne 0x67005e
mov eax, ecx
mov esi, dword [esp + 0xd4]
jmp 0x6700c7
lea ecx, [0x706940]
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
call fcn.0044b9b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x58]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0xc8]
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x6700af
mov dword [ebx + 8], eax
jmp 0x6700b7
lea edi, [ebx + 8]
call fcn.00463350
mov eax, ecx
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0xd0]
mov ecx, 0xffffffff
sub ecx, esi
mov ecx, dword [eax + 0x2c]
mov edx, dword [eax + 0x30]
mov ebx, dword [esp + 0xc8]
mov dword [ebx + 0x18], edx
mov edx, 0x7fffffff
mov ebp, dword [esp + 0xd8]
sbb edx, ebp
test edx, edx
sete dl
xchg ebp, ebx
setg bl
xchg ebp, ebx
mov esi, dword [0x9b1930]
and edx, 1
or edx, ebp
test esi, esi
jne 0x67010c
mov dword [ebx + 0x14], ecx
jmp 0x670120
lea ebp, [ebx + 0x14]
mov esi, edi
mov edi, ebp
mov eax, ecx
call fcn.00463350
mov eax, dword [esp + 0x58]
mov edi, esi
nop
test dl, dl
je 0x670135
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xd4]
jmp 0x67013f
mov ecx, 0x7fffffff
mov edx, 0xffffffff
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], ecx
lea eax, [0x6f0ee0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xcc]
mov dword [eax], ecx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x670178
mov edx, dword [esp + 0xd0]
mov dword [eax + 4], edx
jmp 0x670192
lea edi, [eax + 4]
mov edx, eax
mov eax, dword [esp + 0xd0]
call fcn.00463350
mov eax, edx
mov edx, dword [esp + 0xd0]
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov ebx, dword [esp + 0x24]
mov dword [eax + 0x18], ebx
mov ebx, dword [esp + 0x28]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0xc8]
mov ebp, dword [ebx + 0x20]
mov esi, dword [esp + 0x58]
mov edi, dword [esi + 0x20]
add edi, ebp
mov ebp, dword [ebx + 0x24]
mov esi, dword [esi + 0x24]
adc esi, ebp
test esi, esi
jge 0x6701e9
mov ebp, dword [0x989cf8]
mov esi, dword [0x989cfc]
jmp 0x6701f3
mov dword [eax + 0x10], edi
mov dword [eax + 0x14], esi
xor ebp, ebp
xor esi, esi
test ebp, ebp
jne 0x6702de
mov dword [esp + 0x48], eax
nop
lea eax, [0x6fd8a0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov dword [esp + 0x5c], eax
lea ecx, [0x6cd7a0]
mov dword [esp], ecx
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.0044b8f0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x68], eax
lea edi, [esp + 0x98]
xor eax, eax
call fcn.00463615
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], 0x1000
mov dword [esp + 0xa0], 0x1000
lea ecx, [0x79d63c]
mov dword [esp + 0xa4], ecx
mov edx, dword [esp + 0x48]
mov dword [esp + 0xa8], edx
mov dword [esp + 0xbc], 0xffffffff
mov dword [esp + 0xc0], 0xffffffff
mov ebx, dword [0x9b1930]
test ebx, ebx
jne 0x6702b5
mov edi, dword [esp + 0x5c]
lea esi, [esp + 0x98]
call fcn.00463ac2
jmp 0x670308
lea eax, [0x6fd8a0]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
lea ecx, [esp + 0x98]
mov dword [esp + 8], ecx
call fcn.00410b70
xor eax, eax
mov edx, dword [esp + 0x48]
jmp 0x670308
mov dword [esp + 0xdc], ebp
mov dword [esp + 0xe0], esi
add esp, 0xc4
ret
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], ebx
add esp, 0xc4
ret
lea eax, [0x6f4fe0]
mov dword [esp], eax
call fcn.0040b7f0
mov eax, dword [esp + 4]
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670330
mov ecx, dword [esp + 0xc8]
mov dword [eax + 0x60], ecx
jmp 0x67034a
lea edi, [eax + 0x60]
mov ecx, eax
mov eax, dword [esp + 0xc8]
call fcn.00463350
mov eax, ecx
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0xcc]
mov dword [eax + 0x64], edx
mov ebx, dword [0x9b1930]
test ebx, ebx
jne 0x67036a
mov ebx, dword [esp + 0xd0]
mov dword [eax + 0x68], ebx
jmp 0x67037d
lea edi, [eax + 0x68]
mov ebx, eax
mov eax, dword [esp + 0xd0]
call fcn.00463350
mov eax, ebx
mov dword [esp + 0x4c], eax
mov dword [esp], eax
lea ecx, [0x79d344]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
call fcn.00671140
mov eax, dword [esp + 0xc]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov edx, dword [0x98967c]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x34], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x60], ebp
mov esi, dword [esp + 0x10]
mov dword [esp + 0x54], esi
cmp dword [0x989678], eax
je 0x6703d5
xor edx, edx
jmp 0x670400
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00403790
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x54]
mov edx, eax
mov eax, dword [esp + 0x64]
test dl, dl
je 0x6705aa
mov edx, dword [esp + 0xc8]
mov edi, ebp
mov ebp, dword [edx + 0x24]
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov ecx, dword [edx + 0x20]
test ecx, ecx
setne cl
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6705b3
mov ecx, dword [edx + 0xc]
test ecx, ecx
jne 0x6705b3
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0
mov ecx, dword [esp + 0x58]
mov ebx, dword [ecx + 0x20]
mov ebp, dword [esp + 0x48]
mov eax, edx
mov edx, dword [ebp + 8]
add ebx, edx
mov dword [esp + 0x2c], ebx
mov esi, ecx
mov ecx, dword [ecx + 0x24]
mov edi, ebp
mov ebp, dword [ebp + 0xc]
adc ecx, ebp
mov dword [esp + 0x30], ecx
cmp ebp, ecx
setg cl
cmp ebx, edx
setb dl
mov ebx, dword [esp + 0x30]
cmp ebp, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, edx
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x67049f
mov ecx, dword [0x989cf8]
mov edx, dword [0x989cfc]
jmp 0x6704ad
mov ebp, dword [esp + 0x2c]
mov dword [edi + 0x10], ebp
mov dword [edi + 0x14], ebx
xor ecx, ecx
xor edx, edx
test ecx, ecx
jne 0x6706fb
nop
mov ecx, dword [esp + 0x5c]
mov edx, dword [ecx]
test edx, edx
jne 0x670518
lea eax, [0x6cd7a0]
mov dword [esp], eax
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.0044b8f0
mov eax, dword [esp + 0xc]
mov edi, dword [esp + 0x5c]
mov dword [edi + 4], 0x1000
mov dword [edi + 8], 0x1000
mov ecx, dword [0x9b1930]
test ecx, ecx
jne 0x670502
mov dword [edi], eax
jmp 0x670507
call fcn.00463350
mov eax, dword [esp + 0xc8]
mov ecx, edi
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x48]
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx + 8]
lea edi, [esp + 0x6c]
xor eax, eax
call fcn.00463615
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebp
lea ecx, [0x79d63c]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x90], 0xffffffff
mov dword [esp + 0x94], 0xffffffff
mov ebx, dword [0x9b1930]
test ebx, ebx
jne 0x67057d
mov edi, dword [esp + 0x5c]
mov ebx, esi
lea esi, [esp + 0x6c]
call fcn.00463ac2
jmp 0x670308
lea eax, [0x6fd8a0]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
lea ecx, [esp + 0x6c]
mov dword [esp + 8], ecx
call fcn.00410b70
xor eax, eax
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x58]
jmp 0x670308
mov edx, dword [esp + 0xc8]
mov edi, ebp
mov ecx, dword [0x98967c]
cmp dword [0x989678], eax
je 0x6705c5
xor ecx, ecx
jmp 0x6705f7
mov dword [esp], eax
mov edx, dword [esp + 0x50]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00403790
movzx eax, byte [esp + 0xc]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x60]
mov ecx, eax
mov eax, dword [esp + 0x64]
test cl, cl
je 0x670602
mov eax, 1
jmp 0x670640
mov ecx, dword [0x989cec]
cmp dword [0x989ce8], eax
je 0x670614
xor eax, eax
jmp 0x670640
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00403790
movzx eax, byte [esp + 0xc]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x60]
test al, al
jne 0x670725
test ebx, ebx
jne 0x670710
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x6c]
mov ebx, dword [edx + 0x20]
add ecx, ebx
mov ebx, dword [eax + 0x70]
mov ebp, dword [edx + 0x24]
mov dword [eax + 0x6c], ecx
adc ebp, ebx
mov dword [eax + 0x70], ebp
mov ecx, dword [edx + 0xc]
lea ebx, [ecx + 1]
mov ebp, dword [edx + 8]
mov esi, dword [edx + 0x10]
cmp esi, ebx
jae 0x6706cd
lea eax, [0x706940]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc8]
mov dword [ebx + 0x10], edx
mov edx, dword [0x9b1930]
test edx, edx
jne 0x6706bd
mov dword [ebx + 8], eax
jmp 0x6706c5
lea edi, [ebx + 8]
call fcn.00463350
mov edx, ebx
mov ebp, eax
mov eax, dword [esp + 0x4c]
lea ebx, [ecx + 1]
mov dword [edx + 0xc], ebx
mov ebx, dword [0x9b1930]
lea edi, [ebp + ecx*4]
test ebx, ebx
jne 0x6706e7
mov dword [ebp + ecx*4], eax
jmp 0x6706ec
call fcn.00463350
xor eax, eax
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x58]
jmp 0x670308
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], edx
add esp, 0xc4
ret
mov dword [esp + 0xdc], edi
mov dword [esp + 0xe0], esi
add esp, 0xc4
ret
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx + 0x10]
cmp ax, cx
je 0x670749
mov dword [esp + 0xdc], edi
mov dword [esp + 0xe0], esi
add esp, 0xc4
ret
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
add esp, 0xc4
ret
call fcn.00461f40
jmp fcn.0066feb0