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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x66ba95
sub esp, 0x6c
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
xor eax, eax
xor ecx, ecx
jmp 0x66b61d
mov ebp, dword [esp + 0x30]
add ebp, ecx
mov esi, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edx, esi
mov ebx, ecx
mov ecx, eax
mov eax, ebp
cmp ebx, eax
jle 0x66b930
jb 0x66ba8d
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], ecx
sub ebx, eax
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
add ebx, edx
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.0048d3b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [0x981ffc]
mov ebx, dword [0x981ff8]
cmp edx, eax
jg 0x66b6b4
mov edx, dword [esp + 0x7c]
cmp edx, eax
jle 0x66b67f
mov ebx, dword [esp + 0x78]
lea ebp, [ebx + eax*8]
mov esi, dword [ebp + 4]
mov ebp, dword [ebp]
test esi, esi
je 0x66b683
jmp 0x66b6ca
mov ebx, dword [esp + 0x78]
cmp eax, 0x2028
je 0x66b6a7
cmp eax, 0x2029
je 0x66b69a
mov eax, dword [esp + 0x20]
jmp 0x66b607
mov esi, 6
lea ebp, [0x717d9c]
jmp 0x66b6ca
mov esi, 6
lea ebp, [0x717d96]
jmp 0x66b6ca
jbe 0x66ba86
lea edx, [ebx + eax*8]
mov ebp, dword [edx]
mov esi, dword [edx + 4]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x50], ebp
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x66b7a3
nop
nop
mov edi, dword [esp + 0x5c]
test edi, edi
je 0x66b6fe
lea ebx, [esp + 0x5c]
cmp edi, ebx
jne 0x66ba6e
mov ebx, dword [esp + 0x78]
jmp 0x66b706
lea edi, [esp + 0x5c]
mov dword [esp + 0x5c], edi
mov edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x44], ebx
sub ebx, edi
mov edx, dword [esp + 0x74]
cmp edx, ebx
jle 0x66b79b
mov dword [esp + 0x34], edi
lea eax, [0x6cd7a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x44]
lea ecx, [edx + ecx*2]
mov dword [esp + 0x38], ecx
mov dword [esp + 8], ecx
call fcn.0044b8f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x34]
cmp edx, ebx
jl 0x66b757
mov edx, ebx
cmp ecx, eax
je 0x66b777
mov dword [esp + 0x58], eax
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00463d10
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x64], ebx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x68], edx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x74]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0x30]
cmp eax, edi
ja 0x66ba67
sub edi, eax
mov dword [esp + 0x28], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
mov edi, dword [esp + 0x70]
add eax, edi
nop
mov ebx, dword [esp + 0x5c]
test ebx, ebx
je 0x66b7e5
lea edx, [esp + 0x5c]
cmp ebx, edx
jne 0x66ba4f
mov edx, dword [esp + 0x7c]
lea ebx, [esp + 0x5c]
jmp 0x66b7ed
lea ebx, [esp + 0x5c]
mov dword [esp + 0x5c], ebx
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 0x28]
lea ecx, [edi + edx]
mov dword [esp + 0x44], ecx
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x60]
cmp ebp, ecx
jae 0x66b842
mov dword [esp + 0x40], edx
mov dword [esp + 0x4c], eax
lea eax, [0x6cd7a0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ecx
call fcn.0044baf0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x54], esi
lea ecx, [esi + edx]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.00463d10
mov eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x60], eax
nop
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x66b88b
lea ecx, [esp + 0x5c]
cmp eax, ecx
je 0x66b893
jmp 0x66ba37
lea eax, [esp + 0x5c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x2c]
lea edx, [ecx + eax]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x60]
cmp ebx, edx
jae 0x66b8e0
mov dword [esp + 0x40], eax
lea ecx, [0x6cd7a0]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.0044baf0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x40], ebx
mov dword [esp + 0x54], ebp
add eax, ebp
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00463d10
mov eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x78]
mov eax, edx
mov edx, dword [esp + 0x7c]
jmp 0x66b607
test ecx, ecx
je 0x66ba04
cmp ebx, ecx
jb 0x66ba2e
sub ebx, ecx
mov eax, ebx
neg ebx
sar ebx, 0x1f
and ecx, ebx
add ecx, edx
nop
mov edx, dword [esp + 0x5c]
test edx, edx
je 0x66b963
lea ebx, [esp + 0x5c]
cmp edx, ebx
je 0x66b96b
jmp 0x66ba16
lea edx, [esp + 0x5c]
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0x64]
lea ebx, [eax + edx]
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x60]
cmp ebp, ebx
jae 0x66b9c0
mov dword [esp + 0x40], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x48], ecx
lea eax, [0x6cd7a0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.0044baf0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x54], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00463d10
mov eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x6c
ret
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ebx
add esp, 0x6c
ret
lea eax, [0x6cd520]
mov dword [esp], eax
lea eax, [0x79cbfc]
mov dword [esp + 4], eax
call fcn.00437060
mov eax, ecx
mov ecx, ebx
call fcn.00463430
lea eax, [0x6cd520]
mov dword [esp], eax
lea eax, [0x79cbfc]
mov dword [esp + 4], eax
call fcn.00437060
lea eax, [0x6cd520]
mov dword [esp], eax
lea eax, [0x79cbfc]
mov dword [esp + 4], eax
call fcn.00437060
mov ecx, edi
call fcn.00463430
lea eax, [0x6cd520]
mov dword [esp], eax
lea eax, [0x79cbfc]
mov dword [esp + 4], eax
call fcn.00437060
mov ecx, edx
call fcn.004633d0
mov ecx, ebx
call fcn.00463430
nop
call fcn.00461f40
jmp fcn.0066b5c0