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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push edi
push esi
push ebx
sub esp, 0x7c
mov edi, dword [ebp + 8]
mov esi, dword [ebp + 0x18]
movsd xmm4, qword [ebp + 0x24]
movsd xmm5, qword [ebp + 0x2c]
mov eax, dword [ebp + 0x3c]
movsd xmm2, qword [0xb52660]
movsd xmm1, qword [ebp + 0x24]
movsd xmm0, qword [0xb52668]
andps xmm2, xmm4
xorps xmm1, xmm2
movsd xmm7, qword [ebp + 0x24]
movsd xmm3, qword [0xb52670]
cmpltsd xmm1, xmm0
andps xmm1, xmm0
orps xmm1, xmm2
addsd xmm7, xmm1
movsd xmm0, qword [0xb52668]
subsd xmm7, xmm1
movaps xmm6, xmm7
movsd xmm1, qword [ebp + 0x2c]
subsd xmm6, xmm4
cmpnlesd xmm6, xmm2
movsd xmm2, qword [0xb52660]
andps xmm6, xmm3
movsd xmm3, qword [ebp + 0x2c]
subsd xmm7, xmm6
andps xmm2, xmm5
cvtsd2si ebx, xmm7
xorps xmm1, xmm2
cmpltsd xmm1, xmm0
andps xmm1, xmm0
movsd xmm0, qword [0xb52670]
orps xmm1, xmm2
addsd xmm3, xmm1
subsd xmm3, xmm1
movaps xmm1, xmm3
subsd xmm1, xmm5
cmpnlesd xmm1, xmm2
andps xmm1, xmm0
subsd xmm3, xmm1
cvtsd2si edx, xmm3
mov dword [esp + 0x74], edx
mov edx, esi
shl edx, 2
shl esi, 4
test eax, eax
je 0x6fd754
cmp eax, 1
je 0x6fbe21
cmp eax, 2
jne 0x6fbde9
push edx
call fcn.006c7470
movsd xmm4, qword [ebp + 0x24]
mov edx, eax
test edx, edx
jne 0x6fbe4f
mov eax, 0xfffffff7
add esp, 0x7c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x6fbe15
push edx
call fcn.006c7470
movsd xmm5, qword [ebp + 0x2c]
movsd xmm4, qword [ebp + 0x24]
test eax, eax
jne 0x6fc5ba
mov eax, 0xfffffff7
add esp, 0x7c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
xor eax, eax
add esp, 0x7c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
push edx
mov dword [esp + 0x50], edx
call fcn.006c7470
mov edx, dword [esp + 0x4c]
movsd xmm5, qword [ebp + 0x2c]
mov dword [esp + 0x70], eax
test eax, eax
jne 0x6fd0b6
mov eax, 0xfffffff7
add esp, 0x7c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x20]
test ecx, ecx
jg 0x6fbe5e
push edx
call fcn.006339b8
jmp 0x6fbe15
movsd xmm3, qword [0xb52670]
movsd xmm2, qword [0xb52658]
movsd xmm5, qword [0xb52650]
cvtsi2sd xmm0, ebx
movaps xmm1, xmm4
mov dword [esp + 8], esi
mov dword [esp], edi
xor eax, eax
subsd xmm1, xmm0
movsd qword [esp + 0x58], xmm1
lea ecx, [edx + 0x10]
mov edi, ebx
xorps xmm0, xmm0
mov dword [esp + 0x70], ecx
mov dword [esp + 0x14], eax
mov ebx, eax
mov esi, edx
mov ecx, dword [esp + 8]
push ecx
push esi
call fcn.007b5b5c
mov ecx, dword [esp + 0x74]
test ecx, ecx
jg 0x6fc51c
movsd xmm0, qword [esp + 0x58]
movsd qword [esp + 0x60], xmm0
test edi, edi
jle 0x6fbf01
mov eax, connect
imul edi
mov ecx, edi
sar ecx, 0x1f
add edx, edi
sub edx, ecx
jne 0x6fc23f
xor ecx, ecx
mov eax, 1
xorps xmm7, xmm7
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
lea edx, [eax - 1]
cmp edi, edx
ja 0x6fc216
jmp 0x6fbf0f
xor ecx, ecx
xorps xmm7, xmm7
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
movsd xmm3, qword [esp + 0x58]
mov edx, dword [ebp + 0x18]
mov eax, ecx
shl eax, 4
movss xmm0, dword [eax + esi]
cvtps2pd xmm0, xmm0
mov eax, ecx
shl eax, 2
mulsd xmm0, xmm3
cvtsd2ss xmm2, xmm0
movss xmm0, dword [esi + eax*4 + 4]
cvtps2pd xmm0, xmm0
addss xmm2, xmm4
movss xmm4, dword [esi + eax*4 + 0xc]
cvtps2pd xmm4, xmm4
sub edx, ecx
cmp ecx, edx
mulsd xmm0, xmm3
cvtsd2ss xmm1, xmm0
movss xmm0, dword [esi + eax*4 + 8]
mov eax, dword [esp + 0x70]
cvtps2pd xmm0, xmm0
movss dword [esi], xmm2
addss xmm1, xmm5
movss dword [esi + 4], xmm1
mulsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
addss xmm0, xmm6
movss dword [esi + 8], xmm0
mulsd xmm4, xmm3
cvtsd2ss xmm3, xmm4
addss xmm3, xmm7
movss dword [esi + 0xc], xmm3
jge 0x6fc1ef
movsd xmm2, qword [esp + 0x60]
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ebx
mov dword [esp + 4], edi
xorps xmm5, xmm5
movsd xmm3, qword [0xb52670]
movsd xmm4, qword [0xb52658]
movsd xmm1, qword [0xb52658]
movsd xmm0, qword [0xb52660]
subsd xmm3, xmm2
comisd xmm3, xmm4
movsd xmm2, qword [ebp + 0x24]
movsd xmm6, qword [0xb52668]
subsd xmm2, xmm3
addsd xmm1, xmm2
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
cmpltsd xmm7, xmm6
andps xmm7, xmm6
orps xmm7, xmm0
movaps xmm6, xmm7
addsd xmm6, xmm1
subsd xmm6, xmm7
movaps xmm7, xmm6
subsd xmm7, xmm1
movsd xmm1, qword [0xb52670]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm6, xmm7
cvtsd2si eax, xmm6
cvtsi2sd xmm0, eax
mov dword [esp + 0x24], eax
subsd xmm2, xmm0
jbe 0x6fc09e
mov eax, ecx
shl eax, 4
movss xmm0, dword [eax + esi]
cvtps2pd xmm1, xmm0
mov ebx, ecx
shl ebx, 2
movss xmm6, dword [esi + ebx*4 + 4]
cvtps2pd xmm7, xmm6
mulsd xmm1, xmm3
cvtsd2ss xmm4, xmm1
movss dword [esp + 0x3c], xmm4
mulsd xmm7, xmm3
cvtsd2ss xmm0, xmm7
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esi + ebx*4 + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esi + ebx*4 + 0xc]
cvtps2pd xmm0, xmm0
mov ebx, 1
mulsd xmm0, xmm3
cvtsd2ss xmm6, xmm0
jmp 0x6fc0b5
movss dword [esp + 0x34], xmm5
movss dword [esp + 0x38], xmm5
movss dword [esp + 0x3c], xmm5
movaps xmm6, xmm5
xor ebx, ebx
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], ebx
cmp ebx, eax
mov dword [esp + 0x30], ebx
jg 0x6fc103
mov edi, eax
sub edi, ebx
add edi, 1
mov eax, connect
imul edi
add edx, edi
sar edi, 0x1f
sub edx, edi
mov dword [esp + 0x44], edx
jne 0x6fc328
mov eax, 1
mov dword [esp + 0x4c], eax
mov edi, dword [esp + 0x24]
sub edi, dword [esp + 0x2c]
add edi, 1
lea eax, [eax - 1]
cmp edi, eax
ja 0x6fc2c1
comisd xmm2, xmmword [0xb52658]
jbe 0x6fc1a6
mov edi, dword [ebp + 0x18]
lea eax, [ecx + ebx]
cmp edi, eax
jle 0x6fc1a9
movss xmm4, dword [esp + 0x3c]
lea edi, [ecx + ebx]
shl edi, 4
movss xmm0, dword [esi + edi]
cvtps2pd xmm1, xmm0
shl ecx, 4
add ecx, esi
shl ebx, 2
movss xmm7, dword [ecx + ebx*4 + 4]
cvtps2pd xmm0, xmm7
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movss xmm1, dword [esp + 0x38]
addss xmm4, xmm3
movss dword [esp + 0x3c], xmm4
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [ecx + ebx*4 + 8]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x38], xmm1
movss xmm1, dword [esp + 0x34]
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [ecx + ebx*4 + 0xc]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x34], xmm1
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm6, xmm0
jmp 0x6fc1a9
lea eax, [ecx + ebx]
movss xmm0, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1c]
movss xmm1, dword [esp + 0x38]
movss xmm3, dword [esp + 0x34]
mov ebx, dword [esp + 0x20]
movss dword [ecx], xmm0
movss dword [ecx + 4], xmm1
movss dword [ecx + 8], xmm3
movss dword [ecx + 0xc], xmm6
add ecx, 0x10
mov dword [esp + 0x1c], ecx
mov ecx, eax
cmp eax, ebx
jl 0x6fbfaf
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 4]
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
jg 0x6fc439
mov ecx, dword [ebp + 0x14]
add dword [esp + 0x14], ecx
add ebx, 1
mov ecx, dword [ebp + 0x20]
cmp ebx, ecx
jb 0x6fbea4
mov edx, esi
jmp 0x6fbe56
mov ecx, eax
shl ecx, 4
addss xmm4, dword [ecx + esi - 0x10]
mov ecx, eax
shl ecx, 2
addss xmm5, dword [esi + ecx*4 - 0xc]
addss xmm6, dword [esi + ecx*4 - 8]
addss xmm7, dword [esi + ecx*4 - 4]
mov ecx, eax
jmp 0x6fbf0f
mov dword [esp + 4], edi
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x44], ecx
mov edi, ecx
xorps xmm7, xmm7
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
movaps xmm3, xmm7
movaps xmm2, xmm7
movaps xmm1, xmm7
movaps xmm0, xmm7
addss xmm4, dword [edi + esi]
addss xmm5, dword [esi + ecx*4 + 4]
addss xmm6, dword [esi + ecx*4 + 8]
addss xmm7, dword [esi + ecx*4 + 0xc]
addss xmm3, dword [edi + esi + 0x10]
addss xmm2, dword [esi + ecx*4 + 0x14]
addss xmm1, dword [esi + ecx*4 + 0x18]
addss xmm0, dword [esi + ecx*4 + 0x1c]
add edi, 0x20
add ecx, 8
add eax, 1
cmp eax, edx
jb 0x6fc265
mov edi, dword [esp + 4]
addss xmm7, xmm0
addss xmm6, xmm1
addss xmm5, xmm2
addss xmm4, xmm3
lea ecx, [eax + eax]
lea eax, [eax + eax + 1]
jmp 0x6fbef4
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x4c]
movss xmm0, dword [esp + 0x3c]
movss xmm1, dword [esp + 0x38]
lea eax, [ecx + edi]
add eax, ebx
movss xmm3, dword [esp + 0x34]
shl eax, 4
addss xmm0, dword [esi + eax - 0x10]
movss dword [esp + 0x3c], xmm0
mov eax, ecx
shl eax, 4
add eax, esi
mov edx, edi
shl edx, 4
add eax, edx
mov edx, ebx
shl edx, 2
addss xmm1, dword [eax + edx*4 - 0xc]
addss xmm3, dword [eax + edx*4 - 8]
addss xmm6, dword [eax + edx*4 - 4]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x34], xmm3
lea ebx, [ebx + edi]
jmp 0x6fc103
movss xmm7, dword [esp + 0x34]
movsd qword [esp + 0x60], xmm2
movss xmm2, dword [esp + 0x3c]
movaps xmm4, xmm5
movaps xmm3, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
movss xmm5, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
mov edx, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0xc], esi
xor edi, edi
shl edx, 4
mov dword [esp + 0x40], edi
add edx, esi
mov eax, ebx
shl eax, 4
add edx, eax
mov edi, ecx
shl edi, 4
add edi, esi
mov esi, dword [esp + 0x44]
mov eax, ebx
shl eax, 4
add edi, eax
mov ebx, dword [esp + 0x40]
xor eax, eax
mov dword [esp + 0x4c], eax
mov ecx, eax
addss xmm2, dword [edx + ecx]
addss xmm5, dword [edi + eax*4 + 4]
addss xmm7, dword [edi + eax*4 + 8]
addss xmm6, dword [edi + eax*4 + 0xc]
addss xmm4, dword [edx + ecx + 0x10]
addss xmm3, dword [edi + eax*4 + 0x14]
addss xmm1, dword [edi + eax*4 + 0x18]
addss xmm0, dword [edi + eax*4 + 0x1c]
add ecx, 0x20
add eax, 8
add ebx, 1
cmp ebx, esi
jb 0x6fc38a
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0xc]
movss dword [esp + 0x3c], xmm2
movsd xmm2, qword [esp + 0x60]
movss dword [esp + 0x38], xmm5
movss dword [esp + 0x34], xmm7
addss xmm6, xmm0
movss xmm0, dword [esp + 0x34]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x40]
addss xmm0, xmm1
movss xmm1, dword [esp + 0x38]
movss dword [esp + 0x34], xmm0
addss xmm1, xmm3
movss xmm3, dword [esp + 0x3c]
movss dword [esp + 0x38], xmm1
addss xmm3, xmm4
movss dword [esp + 0x3c], xmm3
lea eax, [edi + edi + 1]
mov dword [esp + 0x4c], eax
lea ebx, [ebx + edi*2]
xorps xmm5, xmm5
jmp 0x6fc0ed
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x14]
movsd xmm0, qword [0xb52650]
mov dword [esp + 0x44], esi
lea edx, [ecx + eax]
mov ecx, dword [ebp + 0x1c]
mov dword [esp + 4], edi
lea eax, [edx + ecx*8]
mov ecx, esi
movsd xmm3, qword [ebp + 0x34]
movsd xmm6, qword [ebp + 0x34]
movss xmm1, dword [ecx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm3
addsd xmm2, xmm0
movsd qword [esp + 0x50], xmm2
movsd xmm2, qword [ebp + 0x34]
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [edx], di
movss xmm4, dword [ecx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
addsd xmm5, xmm0
movsd qword [esp + 0x50], xmm5
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [edx + 2], di
movss xmm7, dword [ecx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm2
movsd xmm2, qword [ebp + 0x34]
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [edx + 4], di
movss xmm1, dword [ecx + 0xc]
cvtps2pd xmm1, xmm1
add ecx, 0x10
mulsd xmm1, xmm2
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [edx + 6], di
add edx, 8
cmp edx, eax
jb 0x6fc45b
mov edi, dword [esp + 4]
jmp 0x6fc1fa
mov dword [esp + 0x10], ebx
mov ebx, ecx
mov dword [esp + 4], edi
xor ecx, ecx
mov edi, dword [esp]
mov eax, dword [ebp + 0x18]
test eax, eax
jg 0x6fc54e
mov eax, dword [ebp + 0x10]
add edi, eax
add ecx, 1
cmp ecx, ebx
jb 0x6fc52b
mov ebx, dword [esp + 0x10]
mov dword [esp], edi
mov edi, dword [esp + 4]
jmp 0x6fbebb
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x44], esi
mov ebx, esi
mov edx, edi
lea eax, [edi + eax*8]
mov dword [esp], edi
movzx edi, word [edx]
cvtsi2ss xmm0, edi
addss xmm0, dword [ebx]
movss dword [ebx], xmm0
movzx edi, word [edx + 2]
cvtsi2ss xmm1, edi
addss xmm1, dword [ebx + 4]
movss dword [ebx + 4], xmm1
movzx edi, word [edx + 4]
cvtsi2ss xmm2, edi
addss xmm2, dword [ebx + 8]
movss dword [ebx + 8], xmm2
movzx edi, word [edx + 6]
cvtsi2ss xmm3, edi
add edx, 8
addss xmm3, dword [ebx + 0xc]
movss dword [ebx + 0xc], xmm3
add ebx, 0x10
cmp edx, eax
jb 0x6fc55f
mov ebx, dword [esp + 0x74]
mov edi, dword [esp]
jmp 0x6fc532
movaps xmm3, xmm5
mov edx, dword [esp + 0x74]
cvtsi2sd xmm0, edx
subsd xmm3, xmm0
mov ecx, dword [ebp + 0x20]
test ecx, ecx
jg 0x6fc5db
push eax
call fcn.006339b8
jmp 0x6fbe15
movsd xmm2, qword [0xb52670]
movsd xmm1, qword [0xb52658]
movsd xmm7, qword [0xb52650]
cvtsi2sd xmm6, ebx
movsd qword [esp + 0x60], xmm3
movaps xmm0, xmm4
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
xor edx, edx
mov dword [esp + 0x40], edx
mov esi, edx
subsd xmm0, xmm6
movsd qword [esp + 0x58], xmm0
lea edx, [eax + 0x10]
xorps xmm6, xmm6
mov dword [esp + 0x4c], edx
xor ecx, ecx
mov dword [esp + 0x30], ecx
mov ebx, eax
mov edx, dword [esp + 8]
push edx
push ebx
call fcn.007b5b5c
test esi, esi
jne 0x6fc657
mov edx, dword [esp + 0x74]
test edx, edx
jg 0x6fcb17
mov edx, dword [ebp + 0x18]
test edx, edx
jg 0x6fca8d
jmp 0x6fc721
movsd xmm5, qword [0xb52670]
subsd xmm5, qword [esp + 0x60]
movsd xmm3, qword [ebp + 0x2c]
movsd xmm4, qword [0xb52658]
comisd xmm5, xmm4
movsd xmm0, qword [0xb52658]
movsd xmm2, qword [0xb52660]
subsd xmm3, xmm5
addsd xmm0, xmm3
movsd xmm6, qword [0xb52668]
andps xmm2, xmm0
movaps xmm7, xmm2
xorps xmm7, xmm0
cmpltsd xmm7, xmm6
andps xmm7, xmm6
orps xmm7, xmm2
movaps xmm1, xmm7
addsd xmm1, xmm0
subsd xmm1, xmm7
movaps xmm6, xmm1
subsd xmm6, xmm0
movsd xmm0, qword [0xb52670]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si edx, xmm1
cvtsi2sd xmm0, edx
mov dword [esp + 0x74], edx
subsd xmm3, xmm0
movsd qword [esp + 0x60], xmm3
jbe 0x6fc6f8
mov edx, dword [ebp + 0x18]
test edx, edx
jg 0x6fcba4
mov edx, dword [ebp + 0x10]
add edi, edx
mov edx, dword [esp + 0x74]
mov ecx, edi
test edx, edx
jg 0x6fd00d
movsd xmm0, qword [esp + 0x60]
comisd xmm0, xmmword [0xb52658]
jbe 0x6fc721
mov edx, dword [ebp + 0x18]
test edx, edx
jg 0x6fcc28
movsd xmm0, qword [esp + 0x58]
mov edx, dword [esp + 4]
movsd qword [esp + 0x68], xmm0
test edx, edx
jle 0x6fc781
mov ecx, edx
mov eax, connect
imul ecx
add edx, ecx
sar ecx, 0x1f
sub edx, ecx
jne 0x6fccf9
xor edx, edx
mov dword [esp + 0x2c], edx
mov ecx, 1
mov dword [esp + 0x70], ecx
xorps xmm1, xmm1
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm1
movaps xmm0, xmm1
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 4]
lea edx, [edx - 1]
cmp ecx, edx
ja 0x6fccb2
jmp 0x6fc799
xor edx, edx
mov dword [esp + 0x2c], edx
xorps xmm1, xmm1
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm1
movaps xmm0, xmm1
mov ecx, dword [esp + 0x2c]
movsd xmm5, qword [esp + 0x58]
mov eax, dword [ebp + 0x18]
mov edx, ecx
shl edx, 4
movss xmm4, dword [edx + ebx]
cvtps2pd xmm4, xmm4
mov edx, ecx
shl edx, 2
movss xmm2, dword [ebx + edx*4 + 4]
cvtps2pd xmm2, xmm2
sub eax, ecx
cmp ecx, eax
mulsd xmm4, xmm5
cvtsd2ss xmm4, xmm4
addss xmm4, dword [esp + 0x3c]
mulsd xmm2, xmm5
cvtsd2ss xmm3, xmm2
addss xmm3, xmm0
movss xmm0, dword [ebx + edx*4 + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm5
cvtsd2ss xmm2, xmm0
addss xmm2, xmm1
movss xmm1, dword [ebx + edx*4 + 0xc]
mov edx, dword [esp + 0x4c]
cvtps2pd xmm6, xmm1
movss dword [ebx], xmm4
movss dword [ebx + 4], xmm3
movss dword [ebx + 8], xmm2
mulsd xmm6, xmm5
cvtsd2ss xmm7, xmm6
addss xmm7, dword [esp + 0x38]
movss dword [ebx + 0xc], xmm7
jge 0x6fca66
movsd xmm2, qword [esp + 0x68]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x40], esi
mov esi, ecx
mov dword [esp], edi
xorps xmm5, xmm5
movsd xmm3, qword [0xb52670]
movsd xmm4, qword [0xb52658]
movsd xmm1, qword [0xb52658]
movsd xmm0, qword [0xb52660]
subsd xmm3, xmm2
comisd xmm3, xmm4
movsd xmm2, qword [ebp + 0x24]
movsd xmm6, qword [0xb52668]
subsd xmm2, xmm3
addsd xmm1, xmm2
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
cmpltsd xmm7, xmm6
andps xmm7, xmm6
orps xmm7, xmm0
movaps xmm6, xmm7
addsd xmm6, xmm1
subsd xmm6, xmm7
movaps xmm7, xmm6
subsd xmm7, xmm1
movsd xmm1, qword [0xb52670]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm6, xmm7
cvtsd2si edx, xmm6
cvtsi2sd xmm0, edx
mov dword [esp + 0x20], edx
subsd xmm2, xmm0
jbe 0x6fc92b
mov edx, esi
shl edx, 4
movss xmm6, dword [edx + ebx]
cvtps2pd xmm0, xmm6
mov ecx, esi
shl ecx, 2
movss xmm4, dword [ebx + ecx*4 + 4]
cvtps2pd xmm7, xmm4
mulsd xmm0, xmm3
cvtsd2ss xmm1, xmm0
movss xmm0, dword [ebx + ecx*4 + 8]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x3c], xmm1
mulsd xmm7, xmm3
cvtsd2ss xmm6, xmm7
mulsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x38], xmm0
movss xmm0, dword [ebx + ecx*4 + 0xc]
cvtps2pd xmm0, xmm0
mov ecx, 1
mulsd xmm0, xmm3
cvtsd2ss xmm4, xmm0
jmp 0x6fc93f
movss dword [esp + 0x38], xmm5
movss dword [esp + 0x3c], xmm5
movaps xmm4, xmm5
movaps xmm6, xmm5
xor ecx, ecx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x18], ecx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jg 0x6fc98d
mov edi, edx
sub edi, ecx
add edi, 1
mov eax, connect
imul edi
add edx, edi
sar edi, 0x1f
sub edx, edi
mov dword [esp + 0x48], edx
jne 0x6fce1e
mov edx, 1
mov dword [esp + 0x10], edx
mov edi, dword [esp + 0x20]
sub edi, dword [esp + 0x18]
add edi, 1
lea edx, [edx - 1]
cmp edi, edx
ja 0x6fcdc3
comisd xmm2, xmmword [0xb52658]
jbe 0x6fca24
mov edi, dword [ebp + 0x18]
lea edx, [esi + ecx]
cmp edi, edx
jle 0x6fca27
movss xmm7, dword [esp + 0x3c]
lea edi, [esi + ecx]
shl edi, 4
movss xmm0, dword [ebx + edi]
cvtps2pd xmm1, xmm0
shl esi, 4
add esi, ebx
shl ecx, 2
movss xmm0, dword [esi + ecx*4 + 4]
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movss xmm1, dword [esp + 0x38]
addss xmm7, xmm3
movss dword [esp + 0x3c], xmm7
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm6, xmm0
movss xmm0, dword [esi + ecx*4 + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [esi + ecx*4 + 0xc]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x38], xmm1
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm4, xmm0
jmp 0x6fca27
lea edx, [esi + ecx]
movss xmm0, dword [esp + 0x3c]
mov esi, dword [esp + 0x28]
movss xmm1, dword [esp + 0x38]
mov ecx, dword [esp + 0x24]
movss dword [esi], xmm0
movss dword [esi + 4], xmm6
movss dword [esi + 8], xmm1
movss dword [esi + 0xc], xmm4
add esi, 0x10
mov dword [esp + 0x28], esi
mov esi, edx
cmp edx, ecx
jl 0x6fc842
mov esi, dword [esp + 0x40]
mov edi, dword [esp]
mov edx, dword [ebp + 0x1c]
test edx, edx
jg 0x6fcf2c
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x20]
add dword [esp + 0x30], edx
add esi, 1
cmp esi, ecx
jb 0x6fc62c
mov eax, ebx
jmp 0x6fc5d0
mov edx, dword [ebp + 0x18]
movsd xmm0, qword [esp + 0x60]
mov dword [esp], edi
mov eax, edi
mov ecx, ebx
lea edx, [edi + edx*8]
movzx edi, word [eax]
cvtsi2sd xmm1, edi
mulsd xmm1, xmm0
cvtsd2ss xmm2, xmm1
addss xmm2, dword [ecx]
movss dword [ecx], xmm2
movzx edi, word [eax + 2]
cvtsi2sd xmm3, edi
mulsd xmm3, xmm0
cvtsd2ss xmm4, xmm3
addss xmm4, dword [ecx + 4]
movss dword [ecx + 4], xmm4
movzx edi, word [eax + 4]
cvtsi2sd xmm5, edi
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [ecx + 8]
movss dword [ecx + 8], xmm6
movzx edi, word [eax + 6]
cvtsi2sd xmm7, edi
add eax, 8
mulsd xmm7, xmm0
cvtsd2ss xmm1, xmm7
addss xmm1, dword [ecx + 0xc]
movss dword [ecx + 0xc], xmm1
add ecx, 0x10
cmp eax, edx
jb 0x6fcaa0
mov edi, dword [esp]
jmp 0x6fc721
mov dword [esp + 0x40], esi
mov esi, edx
xor ecx, ecx
mov edx, dword [ebp + 0x18]
test edx, edx
jg 0x6fcb3b
mov edx, dword [ebp + 0x10]
add edi, edx
add ecx, 1
cmp ecx, esi
jb 0x6fcb1f
mov esi, dword [esp + 0x40]
jmp 0x6fc647
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x70], ebx
mov esi, ebx
mov edx, edi
lea eax, [edi + eax*8]
mov dword [esp], edi
movzx edi, word [edx]
cvtsi2ss xmm0, edi
addss xmm0, dword [esi]
movss dword [esi], xmm0
movzx edi, word [edx + 2]
cvtsi2ss xmm1, edi
addss xmm1, dword [esi + 4]
movss dword [esi + 4], xmm1
movzx edi, word [edx + 4]
cvtsi2ss xmm2, edi
addss xmm2, dword [esi + 8]
movss dword [esi + 8], xmm2
movzx edi, word [edx + 6]
cvtsi2ss xmm3, edi
add edx, 8
addss xmm3, dword [esi + 0xc]
movss dword [esi + 0xc], xmm3
add esi, 0x10
cmp edx, eax
jb 0x6fcb4c
mov esi, dword [esp + 0x74]
mov edi, dword [esp]
jmp 0x6fcb26
mov edx, dword [ebp + 0x18]
mov dword [esp], edi
mov eax, edi
mov ecx, ebx
lea edx, [edi + edx*8]
movzx edi, word [eax]
cvtsi2sd xmm0, edi
mulsd xmm0, xmm5
cvtsd2ss xmm1, xmm0
addss xmm1, dword [ecx]
movss dword [ecx], xmm1
movzx edi, word [eax + 2]
cvtsi2sd xmm2, edi
mulsd xmm2, xmm5
cvtsd2ss xmm3, xmm2
addss xmm3, dword [ecx + 4]
movss dword [ecx + 4], xmm3
movzx edi, word [eax + 4]
cvtsi2sd xmm4, edi
mulsd xmm4, xmm5
cvtsd2ss xmm6, xmm4
addss xmm6, dword [ecx + 8]
movss dword [ecx + 8], xmm6
movzx edi, word [eax + 6]
cvtsi2sd xmm7, edi
add eax, 8
mulsd xmm7, xmm5
cvtsd2ss xmm0, xmm7
addss xmm0, dword [ecx + 0xc]
movss dword [ecx + 0xc], xmm0
add ecx, 0x10
cmp eax, edx
jb 0x6fcbb1
mov edi, dword [esp]
jmp 0x6fc6f3
mov edx, dword [ebp + 0x18]
movsd xmm0, qword [esp + 0x60]
mov dword [esp], edi
mov eax, edi
mov ecx, ebx
lea edx, [edi + edx*8]
movzx edi, word [eax]
cvtsi2sd xmm1, edi
mulsd xmm1, xmm0
cvtsd2ss xmm2, xmm1
addss xmm2, dword [ecx]
movss dword [ecx], xmm2
movzx edi, word [eax + 2]
cvtsi2sd xmm3, edi
mulsd xmm3, xmm0
cvtsd2ss xmm4, xmm3
addss xmm4, dword [ecx + 4]
movss dword [ecx + 4], xmm4
movzx edi, word [eax + 4]
cvtsi2sd xmm5, edi
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [ecx + 8]
movss dword [ecx + 8], xmm6
movzx edi, word [eax + 6]
cvtsi2sd xmm7, edi
add eax, 8
mulsd xmm7, xmm0
cvtsd2ss xmm1, xmm7
addss xmm1, dword [ecx + 0xc]
movss dword [ecx + 0xc], xmm1
add ecx, 0x10
cmp eax, edx
jb 0x6fcc3b
mov edi, dword [esp]
jmp 0x6fc721
mov eax, dword [esp + 0x70]
movss xmm4, dword [esp + 0x3c]
movss xmm5, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
mov edx, eax
shl edx, 4
addss xmm4, dword [edx + ebx - 0x10]
movss dword [esp + 0x3c], xmm4
mov ecx, eax
shl ecx, 2
addss xmm0, dword [ebx + ecx*4 - 0xc]
addss xmm1, dword [ebx + ecx*4 - 8]
addss xmm5, dword [ebx + ecx*4 - 4]
movss dword [esp + 0x38], xmm5
jmp 0x6fc799
mov dword [esp], edi
xor ecx, ecx
mov dword [esp + 0x48], ecx
xor eax, eax
mov dword [esp + 0x70], eax
mov edi, eax
mov eax, ecx
xorps xmm1, xmm1
movss dword [esp + 0x38], xmm1
movss xmm5, dword [esp + 0x38]
movss dword [esp + 0x3c], xmm1
movaps xmm0, xmm1
movaps xmm3, xmm1
movaps xmm2, xmm1
movaps xmm7, xmm1
movaps xmm6, xmm1
movss xmm4, dword [esp + 0x3c]
addss xmm4, dword [ecx + ebx]
addss xmm0, dword [ebx + edi*4 + 4]
addss xmm1, dword [ebx + edi*4 + 8]
addss xmm5, dword [ebx + edi*4 + 0xc]
addss xmm3, dword [ecx + ebx + 0x10]
addss xmm2, dword [ebx + edi*4 + 0x14]
addss xmm7, dword [ebx + edi*4 + 0x18]
addss xmm6, dword [ebx + edi*4 + 0x1c]
add ecx, 0x20
add edi, 8
add eax, 1
cmp eax, edx
jb 0x6fcd36
mov edi, dword [esp]
movss dword [esp + 0x3c], xmm4
movss dword [esp + 0x38], xmm5
movss xmm5, dword [esp + 0x3c]
movss xmm4, dword [esp + 0x38]
mov dword [esp + 0x48], eax
mov ecx, eax
addss xmm4, xmm6
movss dword [esp + 0x38], xmm4
addss xmm1, xmm7
addss xmm0, xmm2
addss xmm5, xmm3
movss dword [esp + 0x3c], xmm5
lea edx, [ecx + ecx]
mov dword [esp + 0x2c], edx
lea edx, [ecx + ecx + 1]
mov dword [esp + 0x70], edx
jmp 0x6fc76c
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
movss xmm0, dword [esp + 0x3c]
movss xmm1, dword [esp + 0x38]
lea edx, [esi + edi]
add edx, ecx
shl edx, 4
addss xmm0, dword [ebx + edx - 0x10]
movss dword [esp + 0x3c], xmm0
mov edx, esi
shl edx, 4
add edx, ebx
mov eax, edi
shl eax, 4
add edx, eax
mov eax, ecx
shl eax, 2
addss xmm6, dword [edx + eax*4 - 0xc]
addss xmm1, dword [edx + eax*4 - 8]
addss xmm4, dword [edx + eax*4 - 4]
movss dword [esp + 0x38], xmm1
lea ecx, [ecx + edi]
jmp 0x6fc98d
movss dword [esp + 0x34], xmm5
movss xmm7, dword [esp + 0x34]
movsd qword [esp + 0x68], xmm2
movss xmm2, dword [esp + 0x3c]
movaps xmm3, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
movss xmm5, dword [esp + 0x38]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x44], ebx
xor edi, edi
mov dword [esp + 0xc], edi
mov edi, esi
shl edi, 4
add edi, ebx
mov edx, ecx
shl edx, 4
add edi, edx
mov edx, esi
shl edx, 4
add edx, ebx
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 0x48]
mov eax, ecx
shl eax, 4
add edx, eax
xor eax, eax
mov dword [esp + 0x70], eax
mov ecx, eax
mov dword [esp + 0x10], eax
addss xmm2, dword [ecx + edi]
addss xmm6, dword [edx + eax*4 + 4]
addss xmm5, dword [edx + eax*4 + 8]
addss xmm4, dword [edx + eax*4 + 0xc]
addss xmm3, dword [ecx + edi + 0x10]
addss xmm1, dword [edx + eax*4 + 0x14]
addss xmm0, dword [edx + eax*4 + 0x18]
addss xmm7, dword [edx + eax*4 + 0x1c]
add ecx, 0x20
add eax, 8
add ebx, 1
cmp ebx, esi
jb 0x6fce87
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
movss dword [esp + 0x34], xmm7
addss xmm4, dword [esp + 0x34]
movss dword [esp + 0x3c], xmm2
movsd xmm2, qword [esp + 0x68]
movss dword [esp + 0x38], xmm5
movss xmm7, dword [esp + 0x38]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x44]
mov edi, dword [esp + 0xc]
addss xmm7, xmm0
movss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x38], xmm7
addss xmm6, xmm1
addss xmm0, xmm3
movss dword [esp + 0x3c], xmm0
lea edx, [edi + edi + 1]
lea ecx, [ecx + edi*2]
xorps xmm5, xmm5
mov dword [esp + 0x10], edx
jmp 0x6fc977
mov edx, dword [ebp + 0xc]
mov ecx, dword [esp + 0x30]
movsd xmm0, qword [0xb52650]
mov dword [esp + 0x70], ebx
lea eax, [edx + ecx]
mov edx, dword [ebp + 0x1c]
mov dword [esp], edi
lea ecx, [eax + edx*8]
mov edx, ebx
movsd xmm3, qword [ebp + 0x34]
movsd xmm6, qword [ebp + 0x34]
movss xmm1, dword [edx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm3
addsd xmm2, xmm0
movsd qword [esp + 0x50], xmm2
movsd xmm2, qword [ebp + 0x34]
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [eax], di
movss xmm4, dword [edx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
addsd xmm5, xmm0
movsd qword [esp + 0x50], xmm5
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [eax + 2], di
movss xmm7, dword [edx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm2
movsd xmm2, qword [ebp + 0x34]
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [eax + 4], di
movss xmm1, dword [edx + 0xc]
cvtps2pd xmm1, xmm1
add edx, 0x10
mulsd xmm1, xmm2
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [eax + 6], di
add eax, 8
cmp eax, ecx
jb 0x6fcf4d
mov edi, dword [esp]
jmp 0x6fca71
mov dword [esp + 0x70], ecx
mov dword [esp + 0x40], esi
mov dword [esp], edi
mov edi, edx
xor edx, edx
xor eax, eax
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jg 0x6fd041
add eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x10]
add edx, 1
add dword [esp], ecx
cmp edx, edi
jb 0x6fd01e
mov esi, dword [esp + 0x40]
mov edi, dword [esp]
jmp 0x6fc706
mov esi, dword [esp + 0x70]
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x48]
lea esi, [eax + esi]
lea ecx, [esi + ecx*8]
movzx edi, word [esi]
cvtsi2ss xmm0, edi
addss xmm0, dword [ebx]
movss dword [ebx], xmm0
movzx edi, word [esi + 2]
cvtsi2ss xmm1, edi
addss xmm1, dword [ebx + 4]
movss dword [ebx + 4], xmm1
movzx edi, word [esi + 4]
cvtsi2ss xmm2, edi
addss xmm2, dword [ebx + 8]
movss dword [ebx + 8], xmm2
movzx edi, word [esi + 6]
cvtsi2ss xmm3, edi
add esi, 8
addss xmm3, dword [ebx + 0xc]
movss dword [ebx + 0xc], xmm3
add ebx, 0x10
cmp esi, ecx
jb 0x6fd05a
mov ebx, dword [esp + 0x44]
mov edi, dword [esp + 0x74]
jmp 0x6fd025
movaps xmm3, xmm5
mov eax, dword [esp + 0x74]
cvtsi2sd xmm0, eax
subsd xmm3, xmm0
mov ecx, dword [ebp + 0x20]
test ecx, ecx
jg 0x6fd0db
mov eax, dword [esp + 0x70]
push eax
call fcn.006339b8
jmp 0x6fbe15
movsd xmm2, qword [0xb52670]
movsd xmm1, qword [0xb52658]
movsd xmm4, qword [0xb52650]
movsd qword [esp + 0x68], xmm3
mov ecx, ebx
mov dword [esp + 8], esi
mov esi, eax
mov dword [esp + 4], ebx
xor eax, eax
xorps xmm0, xmm0
mov dword [esp + 0x48], eax
mov ebx, eax
shl ecx, 2
sub edx, ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 8]
push eax
mov edx, dword [esp + 0x74]
push edx
call fcn.007b5b5c
test ebx, ebx
jne 0x6fd148
test esi, esi
jg 0x6fd358
mov eax, dword [ebp + 0x18]
test eax, eax
jg 0x6fd2cc
jmp 0x6fd20a
movsd xmm5, qword [0xb52670]
subsd xmm5, qword [esp + 0x68]
movsd xmm3, qword [ebp + 0x2c]
movsd xmm4, qword [0xb52658]
comisd xmm5, xmm4
movsd xmm0, qword [0xb52658]
movsd xmm2, qword [0xb52660]
subsd xmm3, xmm5
addsd xmm0, xmm3
movsd xmm6, qword [0xb52668]
andps xmm2, xmm0
movaps xmm7, xmm2
xorps xmm7, xmm0
cmpltsd xmm7, xmm6
andps xmm7, xmm6
orps xmm7, xmm2
movaps xmm1, xmm7
addsd xmm1, xmm0
subsd xmm1, xmm7
movaps xmm6, xmm1
subsd xmm6, xmm0
movsd xmm0, qword [0xb52670]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si esi, xmm1
cvtsi2sd xmm0, esi
subsd xmm3, xmm0
movsd qword [esp + 0x68], xmm3
jbe 0x6fd1e5
mov eax, dword [ebp + 0x18]
test eax, eax
jg 0x6fd3ee
mov eax, dword [ebp + 0x10]
add edi, eax
mov ecx, edi
test esi, esi
jg 0x6fd6ab
movsd xmm0, qword [esp + 0x68]
comisd xmm0, xmmword [0xb52658]
jbe 0x6fd20a
mov eax, dword [ebp + 0x18]
test eax, eax
jg 0x6fd474
mov eax, dword [esp + 0x4c]
test eax, eax
jl 0x6fd2a7
mov dword [esp + 0x48], ebx
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x70]
mov dword [esp], edi
xor eax, eax
xor ecx, ecx
mov edi, dword [esp + 4]
mov ebx, eax
xorps xmm7, xmm7
add ecx, 0x10
test edi, edi
jle 0x6fd26d
mov eax, connect
imul edi
mov eax, edi
sar eax, 0x1f
add edx, edi
sub edx, eax
jne 0x6fd523
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
movaps xmm3, xmm7
mov eax, 1
lea edx, [eax - 1]
cmp edi, edx
ja 0x6fd500
jmp 0x6fd279
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
movaps xmm3, xmm7
mov edx, dword [esp + 0x4c]
movss dword [esi + ecx - 0x10], xmm3
movss dword [esi + ecx - 0xc], xmm4
movss dword [esi + ecx - 8], xmm5
movss dword [esi + ecx - 4], xmm6
lea ebx, [ebx + edi*4]
cmp ebx, edx
jle 0x6fd232
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x74]
mov edi, dword [esp]
mov eax, dword [ebp + 0x1c]
test eax, eax
jg 0x6fd5cc
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0x20]
add dword [esp + 0x44], eax
add ebx, 1
cmp ebx, edx
jb 0x6fd11d
jmp 0x6fd0cc
mov edx, dword [esp + 0x70]
mov eax, dword [ebp + 0x18]
movsd xmm0, qword [esp + 0x68]
mov dword [esp], edi
mov ecx, edi
lea eax, [edi + eax*8]
movzx edi, word [ecx]
cvtsi2sd xmm1, edi
mulsd xmm1, xmm0
cvtsd2ss xmm2, xmm1
addss xmm2, dword [edx]
movss dword [edx], xmm2
movzx edi, word [ecx + 2]
cvtsi2sd xmm3, edi
mulsd xmm3, xmm0
cvtsd2ss xmm4, xmm3
addss xmm4, dword [edx + 4]
movss dword [edx + 4], xmm4
movzx edi, word [ecx + 4]
cvtsi2sd xmm5, edi
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [edx + 8]
movss dword [edx + 8], xmm6
movzx edi, word [ecx + 6]
cvtsi2sd xmm7, edi
add ecx, 8
mulsd xmm7, xmm0
cvtsd2ss xmm1, xmm7
addss xmm1, dword [edx + 0xc]
movss dword [edx + 0xc], xmm1
add edx, 0x10
cmp ecx, eax
jb 0x6fd2e1
mov edi, dword [esp]
jmp 0x6fd20a
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x70]
xor eax, eax
mov edx, dword [ebp + 0x18]
test edx, edx
jg 0x6fd37e
mov edx, dword [ebp + 0x10]
add edi, edx
add eax, 1
cmp eax, esi
jb 0x6fd362
mov ebx, dword [esp + 0x48]
jmp 0x6fd138
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x40], ebx
mov ecx, edi
mov dword [esp + 0x74], esi
mov esi, ebx
mov dword [esp], edi
lea edx, [edi + edx*8]
movzx edi, word [ecx]
cvtsi2ss xmm0, edi
addss xmm0, dword [esi]
movss dword [esi], xmm0
movzx edi, word [ecx + 2]
cvtsi2ss xmm1, edi
addss xmm1, dword [esi + 4]
movss dword [esi + 4], xmm1
movzx edi, word [ecx + 4]
cvtsi2ss xmm2, edi
addss xmm2, dword [esi + 8]
movss dword [esi + 8], xmm2
movzx edi, word [ecx + 6]
cvtsi2ss xmm3, edi
add ecx, 8
addss xmm3, dword [esi + 0xc]
movss dword [esi + 0xc], xmm3
add esi, 0x10
cmp ecx, edx
jb 0x6fd393
mov esi, dword [esp + 0x74]
mov edi, dword [esp]
jmp 0x6fd369
mov edx, dword [esp + 0x70]
mov eax, dword [ebp + 0x18]
mov dword [esp], edi
mov ecx, edi
lea eax, [edi + eax*8]
movzx edi, word [ecx]
cvtsi2sd xmm0, edi
mulsd xmm0, xmm5
cvtsd2ss xmm1, xmm0
addss xmm1, dword [edx]
movss dword [edx], xmm1
movzx edi, word [ecx + 2]
cvtsi2sd xmm2, edi
mulsd xmm2, xmm5
cvtsd2ss xmm3, xmm2
addss xmm3, dword [edx + 4]
movss dword [edx + 4], xmm3
movzx edi, word [ecx + 4]
cvtsi2sd xmm4, edi
mulsd xmm4, xmm5
cvtsd2ss xmm6, xmm4
addss xmm6, dword [edx + 8]
movss dword [edx + 8], xmm6
movzx edi, word [ecx + 6]
cvtsi2sd xmm7, edi
add ecx, 8
mulsd xmm7, xmm5
cvtsd2ss xmm0, xmm7
addss xmm0, dword [edx + 0xc]
movss dword [edx + 0xc], xmm0
add edx, 0x10
cmp ecx, eax
jb 0x6fd3fd
mov edi, dword [esp]
jmp 0x6fd1e0
mov edx, dword [esp + 0x70]
mov eax, dword [ebp + 0x18]
movsd xmm0, qword [esp + 0x68]
mov dword [esp], edi
mov ecx, edi
lea eax, [edi + eax*8]
movzx edi, word [ecx]
cvtsi2sd xmm1, edi
mulsd xmm1, xmm0
cvtsd2ss xmm2, xmm1
addss xmm2, dword [edx]
movss dword [edx], xmm2
movzx edi, word [ecx + 2]
cvtsi2sd xmm3, edi
mulsd xmm3, xmm0
cvtsd2ss xmm4, xmm3
addss xmm4, dword [edx + 4]
movss dword [edx + 4], xmm4
movzx edi, word [ecx + 4]
cvtsi2sd xmm5, edi
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [edx + 8]
movss dword [edx + 8], xmm6
movzx edi, word [ecx + 6]
cvtsi2sd xmm7, edi
add ecx, 8
mulsd xmm7, xmm0
cvtsd2ss xmm1, xmm7
addss xmm1, dword [edx + 0xc]
movss dword [edx + 0xc], xmm1
add edx, 0x10
cmp ecx, eax
jb 0x6fd489
mov edi, dword [esp]
jmp 0x6fd20a
lea edx, [esi + ebx*4]
shl eax, 4
addss xmm3, dword [eax + edx - 0x10]
addss xmm4, dword [eax + edx - 0xc]
addss xmm5, dword [eax + edx - 8]
addss xmm6, dword [eax + edx - 4]
jmp 0x6fd279
movss dword [esp + 0x3c], xmm7
movaps xmm6, xmm7
movaps xmm5, xmm7
movaps xmm4, xmm7
movaps xmm3, xmm7
movaps xmm2, xmm7
movaps xmm1, xmm7
movaps xmm0, xmm7
movss xmm7, dword [esp + 0x3c]
xor eax, eax
mov dword [esp + 0x2c], eax
lea eax, [esi + ebx*4]
mov dword [esp + 0x30], eax
xor eax, eax
mov edi, dword [esp + 0x30]
mov dword [esp + 0x40], eax
mov esi, eax
mov eax, dword [esp + 0x2c]
addss xmm3, dword [edi + esi*4]
addss xmm4, dword [edi + esi*4 + 4]
addss xmm5, dword [edi + esi*4 + 8]
addss xmm6, dword [edi + esi*4 + 0xc]
addss xmm2, dword [edi + esi*4 + 0x10]
addss xmm1, dword [edi + esi*4 + 0x14]
addss xmm7, dword [edi + esi*4 + 0x18]
addss xmm0, dword [edi + esi*4 + 0x1c]
add esi, 8
add eax, 1
cmp eax, edx
jb 0x6fd561
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 4]
movss dword [esp + 0x3c], xmm7
addss xmm5, dword [esp + 0x3c]
addss xmm6, xmm0
mov dword [esp + 0x2c], eax
mov edx, eax
addss xmm4, xmm1
xorps xmm7, xmm7
addss xmm3, xmm2
lea eax, [edx + edx + 1]
jmp 0x6fd260
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x44]
mov eax, dword [ebp + 0x1c]
movsd xmm0, qword [0xb52650]
lea ecx, [ecx + edx]
mov edx, dword [esp + 0x70]
mov dword [esp], edi
lea eax, [ecx + eax*8]
movsd xmm3, qword [ebp + 0x34]
movsd xmm6, qword [ebp + 0x34]
movss xmm1, dword [edx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm3
addsd xmm2, xmm0
movsd qword [esp + 0x50], xmm2
movsd xmm2, qword [ebp + 0x34]
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [ecx], di
movss xmm4, dword [edx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
addsd xmm5, xmm0
movsd qword [esp + 0x50], xmm5
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [ecx + 2], di
movss xmm7, dword [edx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm2
movsd xmm2, qword [ebp + 0x34]
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [ecx + 4], di
movss xmm1, dword [edx + 0xc]
cvtps2pd xmm1, xmm1
add edx, 0x10
mulsd xmm1, xmm2
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov edi, dword [esp + 0x50]
mov word [ecx + 6], di
add ecx, 8
cmp ecx, eax
jb 0x6fd5eb
mov edi, dword [esp]
jmp 0x6fd2b2
mov dword [esp + 0x40], ecx
mov dword [esp + 0x48], ebx
mov dword [esp], edi
mov edi, dword [esp + 0x70]
xor edx, edx
xor eax, eax
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jg 0x6fd6e1
add eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x10]
add edx, 1
add dword [esp], ecx
cmp edx, esi
jb 0x6fd6be
mov ebx, dword [esp + 0x48]
mov edi, dword [esp]
jmp 0x6fd1ef
mov ebx, dword [esp + 0x40]
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x30], edi
mov dword [esp + 0x74], esi
mov esi, edi
lea ebx, [ebx + eax]
lea ecx, [ebx + ecx*8]
movzx edi, word [ebx]
cvtsi2ss xmm0, edi
addss xmm0, dword [esi]
movss dword [esi], xmm0
movzx edi, word [ebx + 2]
cvtsi2ss xmm1, edi
addss xmm1, dword [esi + 4]
movss dword [esi + 4], xmm1
movzx edi, word [ebx + 4]
cvtsi2ss xmm2, edi
addss xmm2, dword [esi + 8]
movss dword [esi + 8], xmm2
movzx edi, word [ebx + 6]
cvtsi2ss xmm3, edi
add ebx, 8
addss xmm3, dword [esi + 0xc]
movss dword [esi + 0xc], xmm3
add esi, 0x10
cmp ebx, ecx
jb 0x6fd6f8
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
jmp 0x6fd6c5
push esi
mov dword [esp + 0x50], edx
call fcn.006339a0
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x70], eax
test eax, eax
jne 0x6fd779
mov eax, 0xfffffff7
add esp, 0x7c
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
test eax, eax
jg 0x6fd78f
mov eax, dword [esp + 0x70]
push eax
call fcn.006339b8
jmp 0x6fbe15
movsd xmm0, qword [0xb52650]
mov dword [esp + 8], esi
mov ecx, ebx
mov dword [esp + 4], ebx
xor eax, eax
shl ecx, 2
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x10]
imul eax, dword [esp + 0x74]
mov esi, dword [esp + 0x48]
mov dword [esp], edi
sub edx, ecx
mov dword [esp + 0x4c], edx
xor ecx, ecx
mov edi, eax
mov dword [esp + 0x40], ecx
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov edx, dword [esp + 8]
push edx
mov ecx, dword [esp + 0x74]
push ecx
call fcn.007b5b5c
mov ecx, dword [esp + 0x70]
mov edx, ebx
sub edx, edi
add edx, edi
add edx, dword [esp]
push ecx
mov ecx, dword [esp + 0x78]
push ecx
mov ecx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x10]
push ecx
push edx
call fcn.006f79d0
add esp, 0x14
mov edx, dword [esp + 0x4c]
test edx, edx
jl 0x6fd86a
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x70]
xor edx, edx
xor eax, eax
mov ecx, dword [esp + 4]
add eax, 0x10
test ecx, ecx
jg 0x6fd99a
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
mov edi, dword [esp + 0x28]
mov dword [eax + esi - 0x10], edi
mov edi, dword [esp + 0x24]
mov dword [eax + esi - 0xc], edi
mov dword [eax + esi - 8], ecx
mov ecx, dword [esp + 4]
mov dword [eax + esi - 4], ebx
lea edx, [edx + ecx*4]
mov ebx, dword [esp + 0x4c]
cmp edx, ebx
jle 0x6fd81c
mov ebx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov edx, dword [ebp + 0x1c]
test edx, edx
jg 0x6fd88d
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x20]
add dword [esp + 0x18], edx
add ebx, edi
add esi, 1
cmp esi, ecx
jb 0x6fd7cd
jmp 0x6fd780
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x18]
movsd xmm0, qword [0xb52650]
mov dword [esp + 0x48], esi
lea eax, [ecx + edx]
mov ecx, dword [esp + 0x70]
mov edx, dword [ebp + 0x1c]
lea edx, [eax + edx*8]
movsd xmm1, qword [ebp + 0x34]
movsd xmm3, qword [ebp + 0x34]
movsd xmm5, qword [ebp + 0x34]
movsd xmm7, qword [ebp + 0x34]
mov esi, dword [ecx]
cvtsi2sd xmm2, esi
shr esi, 0x1f
addsd xmm2, qword [esi*8 + 0xb52640]
mulsd xmm2, xmm1
addsd xmm2, xmm0
movsd qword [esp + 0x50], xmm2
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov word [eax], si
mov esi, dword [ecx + 4]
cvtsi2sd xmm4, esi
shr esi, 0x1f
addsd xmm4, qword [esi*8 + 0xb52640]
mulsd xmm4, xmm3
addsd xmm4, xmm0
movsd qword [esp + 0x50], xmm4
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov word [eax + 2], si
mov esi, dword [ecx + 8]
cvtsi2sd xmm6, esi
shr esi, 0x1f
addsd xmm6, qword [esi*8 + 0xb52640]
mulsd xmm6, xmm5
addsd xmm6, xmm0
movsd qword [esp + 0x50], xmm6
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov word [eax + 4], si
mov esi, dword [ecx + 0xc]
cvtsi2sd xmm1, esi
shr esi, 0x1f
add ecx, 0x10
addsd xmm1, qword [esi*8 + 0xb52640]
mulsd xmm1, xmm7
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
fld qword [esp + 0x50]
fisttp qword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov word [eax + 6], si
add eax, 8
cmp eax, edx
jb 0x6fd8ad
mov esi, dword [esp + 0x48]
jmp 0x6fd871
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x20], ecx
mov eax, ecx
lea edi, [esi + edx*4]
mov esi, dword [esp + 4]
mov dword [esp + 0x1c], edi
mov edx, edi
mov edi, dword [esp + 0x28]
add edi, dword [edx]
add ecx, dword [edx + 8]
add ebx, dword [edx + 0xc]
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x24]
add edi, dword [edx + 4]
mov dword [esp + 0x24], edi
add edx, 0x10
add eax, 1
cmp eax, esi
jb 0x6fd9c1
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x70]
jmp 0x6fd837