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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x80
mov esi, dword [esp + 0x94]
movsd xmm2, qword [esp + 0xb0]
movsd xmm1, qword [esp + 0xb8]
mov eax, dword [esp + 0xcc]
mov edx, dword [esp + 0xa4]
imul edx, dword [esp + 0xc8]
movaps xmm7, xmm2
mov edi, edx
shl edi, 2
movsd xmm4, qword [0xb52528]
andps xmm4, xmm2
movaps xmm3, xmm4
xorps xmm3, xmm2
movsd xmm0, qword [0xb52530]
cmpltsd xmm3, xmm0
andps xmm3, xmm0
movsd xmm0, qword [0xb52530]
orps xmm3, xmm4
addsd xmm7, xmm3
movsd xmm5, qword [0xb52538]
subsd xmm7, xmm3
movaps xmm6, xmm7
subsd xmm6, xmm2
cmpnlesd xmm6, xmm4
movsd xmm4, qword [0xb52528]
andps xmm6, xmm5
andps xmm4, xmm1
movaps xmm3, xmm4
subsd xmm7, xmm6
xorps xmm3, xmm1
movaps xmm5, xmm1
cvtsd2si ebx, xmm7
cmpltsd xmm3, xmm0
andps xmm3, xmm0
movsd xmm0, qword [0xb52538]
orps xmm3, xmm4
addsd xmm5, xmm3
subsd xmm5, xmm3
movaps xmm3, xmm5
subsd xmm3, xmm1
cmpnlesd xmm3, xmm4
andps xmm3, xmm0
subsd xmm5, xmm3
cvtsd2si ebp, xmm5
test eax, eax
je 0x6eed6a
cmp eax, 1
je 0x6ed40d
cmp eax, 2
jne 0x6ed3cb
push edx
call fcn.006c7470
movsd xmm2, qword [esp + 0xb0]
test eax, eax
jne 0x6ed434
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
cmp eax, 3
jne 0x6ed400
push edx
call fcn.006c7470
movsd xmm1, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
test eax, eax
jne 0x6edb7f
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
xor eax, eax
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
push edx
call fcn.006c7470
movsd xmm1, qword [esp + 0xb8]
test eax, eax
jne 0x6ee607
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x6ed447
push eax
call fcn.006339b8
jmp 0x6ed400
movsd xmm4, qword [0xb52538]
movsd xmm3, qword [0xb52520]
cvtsi2sd xmm0, ebx
mov dword [esp + 8], ebp
xor edx, edx
movaps xmm1, xmm2
subsd xmm1, xmm0
xorps xmm0, xmm0
mov dword [esp + 0xc], edi
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0xc8]
mov ebp, edx
shl ebp, 2
neg ebp
mov edi, edx
shl edi, 2
mov dword [esp + 0x6c], edi
lea ecx, [eax + edx*4]
lea ebp, [ebp + edx*4]
mov dword [esp + 0x18], ecx
mov ecx, eax
sub ecx, edi
lea edi, [eax + ebp]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x50], edi
mov edi, dword [esp + 0x98]
lea ebp, [edi + ebp]
lea edi, [edx + edx]
neg edi
mov dword [esp + 0x54], ebp
mov ebp, edx
neg ebp
mov dword [esp + 0x20], ebp
lea ebp, [edx + edx]
lea edx, [ecx + edx*8]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebp
shl ebp, 2
mov dword [esp + 0x58], edx
lea edx, [ebp + edi*4]
mov edi, dword [esp + 0xc]
mov ebp, dword [esp + 8]
add edx, eax
mov dword [esp + 0x64], edx
xor edx, edx
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x20]
movsd qword [esp + 0x70], xmm1
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x14]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp], esi
mov esi, ebx
mov ebx, eax
mov edx, dword [esp + 0xc]
push edx
push ebx
call fcn.007a5548
mov edx, dword [esp + 8]
test edx, edx
jg 0x6edace
movsd xmm6, qword [esp + 0x70]
test esi, esi
jle 0x6ed56d
mov eax, connect
imul esi
mov ecx, esi
sar ecx, 0x1f
add edx, esi
sub edx, ecx
jne 0x6ed85b
xorps xmm5, xmm5
movaps xmm4, xmm5
xor edx, edx
mov ecx, 1
mov dword [esp + 0x48], ecx
movaps xmm3, xmm5
lea ecx, [ecx - 1]
cmp esi, ecx
ja 0x6ed831
jmp 0x6ed578
xorps xmm5, xmm5
movaps xmm4, xmm5
xor edx, edx
movaps xmm3, xmm5
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0xa4]
imul ecx, edx
sub eax, edx
cmp edx, eax
movss xmm2, dword [ebx + ecx*4]
cvtps2pd xmm0, xmm2
movsd xmm2, qword [esp + 0x70]
mulsd xmm0, xmm2
cvtsd2ss xmm1, xmm0
addss xmm1, xmm3
movss xmm0, dword [ebx + ecx*4 + 4]
movss xmm3, dword [ebx + ecx*4 + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
movss dword [ebx], xmm1
mov ecx, ebp
cvtsd2ss xmm0, xmm0
addss xmm0, xmm4
movss dword [ebx + 4], xmm0
cvtps2pd xmm3, xmm3
mulsd xmm3, xmm2
cvtsd2ss xmm2, xmm3
addss xmm2, xmm5
movss dword [ebx + 8], xmm2
jge 0x6ed7fe
mov dword [esp + 0x2c], eax
mov ebp, edx
xorps xmm5, xmm5
mov dword [esp + 0x14], edi
mov dword [esp + 4], esi
movsd xmm2, qword [0xb52538]
subsd xmm2, xmm6
movsd xmm6, qword [esp + 0xb0]
subsd xmm6, xmm2
movsd xmm3, qword [0xb52520]
movaps xmm1, xmm3
addsd xmm1, xmm6
movsd xmm0, qword [0xb52528]
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
comisd xmm2, xmm3
movsd xmm4, qword [0xb52530]
cmpltsd xmm7, xmm4
andps xmm7, xmm4
orps xmm7, xmm0
movaps xmm4, xmm7
addsd xmm4, xmm1
subsd xmm4, xmm7
movaps xmm7, xmm4
subsd xmm7, xmm1
movsd xmm1, qword [0xb52538]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm4, xmm7
cvtsd2si esi, xmm4
cvtsi2sd xmm0, esi
subsd xmm6, xmm0
jbe 0x6ed6cf
mov edi, dword [esp + 0xc8]
imul edi, ebp
movss xmm3, dword [ebx + edi*4]
movss xmm1, dword [ebx + edi*4 + 4]
cvtps2pd xmm0, xmm3
mulsd xmm0, xmm2
cvtps2pd xmm4, xmm1
mulsd xmm4, xmm2
cvtsd2ss xmm3, xmm0
movss xmm0, dword [ebx + edi*4 + 8]
mov edi, 1
mov dword [esp + 0x48], edi
cvtsd2ss xmm7, xmm4
movss dword [esp + 0x34], xmm7
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtsd2ss xmm2, xmm0
movss dword [esp + 0x30], xmm2
jmp 0x6ed6e4
movss dword [esp + 0x30], xmm5
movaps xmm3, xmm5
xor edi, edi
movss dword [esp + 0x34], xmm5
mov dword [esp + 0x48], edi
mov dword [esp + 0x40], edi
cmp edi, esi
mov dword [esp + 0x3c], edi
jg 0x6ed72c
mov edi, esi
sub edi, dword [esp + 0x48]
mov eax, connect
add edi, 1
imul edi
add edx, edi
sar edi, 0x1f
sub edx, edi
jne 0x6ed937
mov edi, 1
mov dword [esp + 0x38], edi
sub esi, dword [esp + 0x40]
mov edi, dword [esp + 0x38]
lea edi, [edi - 1]
add esi, 1
cmp esi, edi
ja 0x6ed8dc
comisd xmm6, xmmword [0xb52520]
jbe 0x6ed7b8
mov esi, dword [esp + 0x48]
lea esi, [ebp + esi]
mov edi, dword [esp + 0xa4]
cmp edi, esi
jle 0x6ed7c0
mov edi, dword [esp + 0xc8]
imul ebp, edi
mov eax, dword [esp + 0x48]
imul eax, edi
add ebp, eax
movss xmm0, dword [ebx + ebp*4]
movss xmm4, dword [ebx + ebp*4 + 4]
cvtps2pd xmm1, xmm0
mulsd xmm1, xmm6
cvtps2pd xmm7, xmm4
mulsd xmm7, xmm6
cvtsd2ss xmm2, xmm1
movss xmm1, dword [esp + 0x34]
addss xmm3, xmm2
cvtsd2ss xmm0, xmm7
addss xmm1, xmm0
movss xmm0, dword [ebx + ebp*4 + 8]
movss dword [esp + 0x34], xmm1
movss xmm1, dword [esp + 0x30]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
movss dword [esp + 0x30], xmm1
jmp 0x6ed7c0
mov esi, dword [esp + 0x48]
lea esi, [ebp + esi]
movss xmm0, dword [esp + 0x34]
movss xmm1, dword [esp + 0x30]
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0xc8]
movss dword [ecx], xmm3
cmp esi, edi
movss dword [ecx + 4], xmm0
movss dword [ecx + 8], xmm1
lea ecx, [ecx + ebp*4]
mov ebp, esi
jl 0x6ed5f8
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 4]
mov edx, dword [esp + 0xa8]
test edx, edx
jg 0x6eda2c
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xac]
add dword [esp + 0x4c], edx
add edi, 1
cmp edi, ecx
jb 0x6ed515
mov eax, ebx
jmp 0x6ed43f
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + 0x48]
imul edx, eax
add edx, dword [esp + 0x20]
addss xmm3, dword [ebx + edx*4]
addss xmm4, dword [ebx + edx*4 + 4]
addss xmm5, dword [ebx + edx*4 + 8]
mov edx, eax
jmp 0x6ed578
xorps xmm5, xmm5
movaps xmm4, xmm5
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x60]
movaps xmm3, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x64]
movaps xmm7, xmm5
mov dword [esp + 4], esi
mov esi, dword [esp + 0x58]
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm5, dword [ebx + ecx*4 + 8]
add eax, 1
addss xmm1, dword [esi + ecx*4]
addss xmm0, dword [esi + ecx*4 + 4]
addss xmm7, dword [esi + ecx*4 + 8]
add ecx, edi
cmp eax, edx
jb 0x6ed889
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 4]
addss xmm5, xmm7
lea edx, [eax + eax]
lea ecx, [eax + eax + 1]
mov dword [esp + 0x48], ecx
addss xmm4, xmm0
addss xmm3, xmm1
jmp 0x6ed560
mov eax, dword [esp + 0xc8]
mov esi, eax
imul esi, ebp
lea esi, [ebx + esi*4]
mov edx, eax
mov edi, dword [esp + 0x3c]
movss xmm0, dword [esp + 0x34]
movss xmm1, dword [esp + 0x30]
imul edx, edi
lea esi, [esi + edx*4]
mov edx, dword [esp + 0x38]
imul eax, edx
add eax, dword [esp + 0x20]
addss xmm3, dword [esi + eax*4]
addss xmm0, dword [esi + eax*4 + 4]
addss xmm1, dword [esi + eax*4 + 8]
lea esi, [edx + edi]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x30], xmm1
mov dword [esp + 0x48], esi
jmp 0x6ed72c
movss xmm4, dword [esp + 0x34]
movss xmm7, dword [esp + 0x30]
mov dword [esp + 0x68], esi
xor esi, esi
movaps xmm2, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0xc8]
mov edi, edx
imul edi, ebp
imul edx, dword [esp + 0x48]
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x58]
lea eax, [esi + edi*4]
mov esi, dword [esp + 0x64]
lea esi, [esi + edi*4]
lea edi, [eax + edx*4]
mov dword [esp + 0x38], edi
lea eax, [esi + edx*4]
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x68]
xor edi, edi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x60]
addss xmm3, dword [eax + edi*4]
addss xmm4, dword [eax + edi*4 + 4]
addss xmm7, dword [eax + edi*4 + 8]
add ebp, 1
addss xmm2, dword [ecx + edi*4]
addss xmm1, dword [ecx + edi*4 + 4]
addss xmm0, dword [ecx + edi*4 + 8]
add edi, ebx
cmp ebp, edx
jb 0x6ed9a5
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x10]
movss dword [esp + 0x34], xmm4
addss xmm3, xmm2
movss dword [esp + 0x30], xmm7
movss xmm4, dword [esp + 0x30]
addss xmm4, xmm0
movss xmm0, dword [esp + 0x34]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
movss dword [esp + 0x30], xmm4
addss xmm0, xmm1
lea edi, [eax + eax + 1]
movss dword [esp + 0x34], xmm0
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x48]
lea edi, [edi + eax*2]
mov dword [esp + 0x48], edi
jmp 0x6ed716
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x4c]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 4], esi
mov esi, dword [esp + 0x6c]
movss xmm0, dword [edx + ebx]
cvtps2pd xmm1, xmm0
add eax, 1
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov edi, dword [esp + 0xa8]
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movsd xmm1, qword [esp + 0xc0]
movss dword [ecx + edx], xmm3
movss xmm4, dword [edx + ebx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
cvtsd2ss xmm7, xmm5
movss dword [ecx + edx + 4], xmm7
movss xmm0, dword [edx + ebx + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [ecx + edx + 8], xmm0
add edx, esi
cmp eax, edi
jb 0x6eda4f
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 4]
jmp 0x6ed80d
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
xor eax, eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov ebx, dword [esp]
mov dword [esp + 4], esi
mov ebp, dword [esp + 0xa4]
test ebp, ebp
jg 0x6edb1a
mov ebp, dword [esp + 0x9c]
add ebx, ebp
add eax, 1
cmp eax, ecx
jb 0x6edae7
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x10]
jmp 0x6ed52c
mov ecx, dword [esp + 0x6c]
xor edi, edi
lea esi, [ebx + edx]
mov edx, dword [esp + 0x50]
xor ebp, ebp
mov dword [esp], ebx
movss xmm0, dword [edx + ebp]
movss xmm1, dword [edx + ebp + 4]
movss xmm2, dword [edx + ebp + 8]
addss xmm0, dword [esi + ebp]
mov ebx, dword [esp + 0xa4]
add edi, 1
movss dword [edx + ebp], xmm0
addss xmm1, dword [esi + ebp + 4]
movss dword [edx + ebp + 4], xmm1
addss xmm2, dword [esi + ebp + 8]
movss dword [edx + ebp + 8], xmm2
add ebp, ecx
cmp edi, ebx
jb 0x6edb2c
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
mov ebx, dword [esp]
jmp 0x6edaf2
cvtsi2sd xmm3, ebp
mov edx, dword [esp + 0xac]
movaps xmm0, xmm1
subsd xmm0, xmm3
test edx, edx
jg 0x6edba0
push eax
call fcn.006339b8
jmp 0x6ed400
movsd xmm6, qword [0xb52538]
movsd xmm5, qword [0xb52520]
cvtsi2sd xmm3, ebx
mov dword [esp + 8], ebp
xor edx, edx
movaps xmm4, xmm2
subsd xmm4, xmm3
xorps xmm3, xmm3
mov dword [esp + 0xc], edi
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xc8]
mov ebp, edx
shl ebp, 2
neg ebp
mov edi, edx
shl edi, 2
mov dword [esp + 0x6c], edi
lea ecx, [eax + edx*4]
lea ebp, [ebp + edx*4]
mov dword [esp + 0x4c], ecx
mov ecx, eax
sub ecx, edi
mov edi, dword [esp + 0x98]
lea edi, [edi + ebp]
mov dword [esp + 0x40], ebp
lea ebp, [eax + ebp]
mov dword [esp + 0x50], edi
lea edi, [edx + edx]
neg edi
mov dword [esp + 0x54], ebp
mov ebp, edx
neg ebp
mov dword [esp + 0x64], ebp
lea ebp, [edx + edx]
lea edx, [ecx + edx*8]
xor ecx, ecx
mov dword [esp + 0x60], ebp
shl ebp, 2
mov dword [esp + 0x58], edx
lea edx, [ebp + edi*4]
mov edi, dword [esp + 0xc]
mov ebp, dword [esp + 8]
add edx, eax
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x40]
movsd qword [esp + 0x78], xmm4
movsd qword [esp + 0x70], xmm0
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], ecx
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x44]
mov dword [esp], esi
mov esi, ebx
mov ebx, eax
mov edx, dword [esp + 0xc]
push edx
push ebx
call fcn.007a5548
test edi, edi
jne 0x6edc8f
test ebp, ebp
jg 0x6ee0e0
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x6ee043
jmp 0x6edd5b
movsd xmm5, qword [0xb52538]
subsd xmm5, qword [esp + 0x70]
movsd xmm3, qword [esp + 0xb8]
subsd xmm3, xmm5
movsd xmm4, qword [0xb52520]
movaps xmm0, xmm4
addsd xmm0, xmm3
movsd xmm2, qword [0xb52528]
andps xmm2, xmm0
movaps xmm7, xmm2
xorps xmm7, xmm0
comisd xmm5, xmm4
movsd xmm6, qword [0xb52530]
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 [0xb52538]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si ebp, xmm1
cvtsi2sd xmm0, ebp
subsd xmm3, xmm0
movsd qword [esp + 0x70], xmm3
jbe 0x6edd34
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x6ee18d
mov edx, dword [esp + 0x9c]
add dword [esp], edx
test ebp, ebp
jg 0x6ee541
movsd xmm0, qword [esp + 0x70]
comisd xmm0, xmmword [0xb52520]
jbe 0x6edd5b
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x6ee224
movsd xmm6, qword [esp + 0x78]
test esi, esi
jle 0x6edd9b
mov eax, connect
imul esi
mov ecx, esi
sar ecx, 0x1f
add edx, esi
sub edx, ecx
jne 0x6ee2f3
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movaps xmm3, xmm4
xor ecx, ecx
mov edx, 1
lea eax, [edx - 1]
cmp esi, eax
ja 0x6ee2c1
jmp 0x6edda9
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movaps xmm3, xmm4
xor ecx, ecx
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + 0xa4]
imul edx, ecx
sub eax, ecx
cmp ecx, eax
movss xmm1, dword [ebx + edx*4]
movss xmm0, dword [ebx + edx*4 + 4]
cvtps2pd xmm1, xmm1
movsd xmm2, qword [esp + 0x78]
mulsd xmm1, xmm2
cvtsd2ss xmm1, xmm1
addss xmm1, xmm3
movss xmm3, dword [ebx + edx*4 + 8]
mov edx, dword [esp + 0x4c]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
movss dword [ebx], xmm1
cvtsd2ss xmm0, xmm0
addss xmm0, xmm4
movss dword [ebx + 4], xmm0
cvtps2pd xmm4, xmm3
mulsd xmm4, xmm2
cvtsd2ss xmm5, xmm4
addss xmm5, dword [esp + 0x34]
movss dword [ebx + 8], xmm5
jge 0x6ee010
mov dword [esp + 0x28], eax
xorps xmm5, xmm5
mov dword [esp + 0x2c], edx
mov dword [esp + 0x44], edi
mov edi, dword [esp + 0xc8]
mov dword [esp + 8], ebp
mov dword [esp + 4], esi
movsd xmm2, qword [0xb52538]
subsd xmm2, xmm6
movsd xmm6, qword [esp + 0xb0]
subsd xmm6, xmm2
movsd xmm3, qword [0xb52520]
movaps xmm1, xmm3
addsd xmm1, xmm6
movsd xmm0, qword [0xb52528]
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
comisd xmm2, xmm3
movsd xmm4, qword [0xb52530]
cmpltsd xmm7, xmm4
andps xmm7, xmm4
orps xmm7, xmm0
movaps xmm4, xmm7
addsd xmm4, xmm1
subsd xmm4, xmm7
movaps xmm7, xmm4
subsd xmm7, xmm1
movsd xmm1, qword [0xb52538]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm4, xmm7
cvtsd2si ebp, xmm4
cvtsi2sd xmm0, ebp
subsd xmm6, xmm0
jbe 0x6edf06
mov edx, edi
imul edx, ecx
movss xmm3, dword [ebx + edx*4]
movss xmm4, dword [ebx + edx*4 + 4]
cvtps2pd xmm0, xmm3
mulsd xmm0, xmm2
mov esi, 1
mov dword [esp + 0x14], esi
cvtsd2ss xmm1, xmm0
movss xmm0, dword [ebx + edx*4 + 8]
movss dword [esp + 0x34], xmm1
cvtps2pd xmm7, xmm4
mulsd xmm7, xmm2
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm2
cvtsd2ss xmm3, xmm7
cvtsd2ss xmm1, xmm0
jmp 0x6edf18
movaps xmm1, xmm5
movaps xmm3, xmm5
movss dword [esp + 0x34], xmm5
xor edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x20], edx
cmp edx, ebp
mov dword [esp + 0x24], edx
jg 0x6edf5c
mov esi, ebp
sub esi, dword [esp + 0x14]
mov eax, connect
add esi, 1
imul esi
add edx, esi
sar esi, 0x1f
sub edx, esi
jne 0x6ee3d4
mov esi, 1
sub ebp, dword [esp + 0x20]
lea edx, [esi - 1]
add ebp, 1
cmp ebp, edx
ja 0x6ee38c
comisd xmm6, xmmword [0xb52520]
jbe 0x6edfd0
mov edx, dword [esp + 0x14]
lea edx, [ecx + edx]
mov ebp, dword [esp + 0xa4]
cmp ebp, edx
jle 0x6edfd7
mov ebp, dword [esp + 0x14]
movss xmm7, dword [esp + 0x34]
imul ecx, edi
imul ebp, edi
add ecx, ebp
movss xmm0, dword [ebx + ecx*4]
cvtps2pd xmm2, xmm0
movss xmm0, dword [ebx + ecx*4 + 4]
mulsd xmm2, xmm6
cvtsd2ss xmm4, xmm2
addss xmm7, xmm4
movss dword [esp + 0x34], xmm7
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
addss xmm3, xmm0
movss xmm0, dword [ebx + ecx*4 + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
jmp 0x6edfd7
mov edx, dword [esp + 0x14]
lea edx, [ecx + edx]
movss xmm0, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
movss dword [ecx], xmm0
lea ebp, [ecx + edi*4]
cmp edx, esi
movss dword [ecx + 4], xmm3
movss dword [ecx + 8], xmm1
mov ecx, edx
mov dword [esp + 0x2c], ebp
jl 0x6ede3a
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
mov edx, dword [esp + 0xa8]
test edx, edx
jg 0x6ee49f
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xac]
add dword [esp + 0x10], edx
add edi, 1
cmp edi, ecx
jb 0x6edc64
mov eax, ebx
jmp 0x6edb95
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x70]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
mov dword [esp + 4], esi
movss xmm1, dword [edx + ecx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm0
add eax, 1
cvtsd2ss xmm3, xmm2
addss xmm3, dword [ebx + edx]
mov esi, dword [esp + 0xa4]
movss dword [ebx + edx], xmm3
movss xmm4, dword [edx + ecx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [ebx + edx + 4]
movss dword [ebx + edx + 4], xmm6
movss xmm7, dword [edx + ecx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm0
cvtsd2ss xmm1, xmm1
addss xmm1, dword [ebx + edx + 8]
movss dword [ebx + edx + 8], xmm1
add edx, ebp
cmp eax, esi
jb 0x6ee06b
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x6edd5b
mov edx, dword [esp + 0x40]
mov ecx, dword [esp]
xor eax, eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ebx
mov dword [esp + 4], esi
mov ebx, dword [esp + 0xa4]
test ebx, ebx
jg 0x6ee124
mov ebx, dword [esp + 0x9c]
add ecx, ebx
add eax, 1
cmp eax, ebp
jb 0x6ee0f5
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 4]
mov dword [esp], ecx
jmp 0x6edc7b
xor edi, edi
lea esi, [ecx + edx]
mov edx, dword [esp + 0x54]
xor ebx, ebx
mov dword [esp + 8], ebp
mov dword [esp], ecx
mov ecx, dword [esp + 0x6c]
movss xmm0, dword [edx + ebx]
movss xmm1, dword [edx + ebx + 4]
movss xmm2, dword [edx + ebx + 8]
addss xmm0, dword [ebx + esi]
mov ebp, dword [esp + 0xa4]
add edi, 1
movss dword [edx + ebx], xmm0
addss xmm1, dword [ebx + esi + 4]
movss dword [edx + ebx + 4], xmm1
addss xmm2, dword [ebx + esi + 8]
movss dword [edx + ebx + 8], xmm2
add ebx, ecx
cmp edi, ebp
jb 0x6ee13a
mov edx, dword [esp + 0x40]
mov ebp, dword [esp + 8]
mov ecx, dword [esp]
jmp 0x6ee100
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
mov dword [esp + 4], esi
movss xmm0, dword [edx + ecx]
cvtps2pd xmm1, xmm0
mulsd xmm1, xmm5
add eax, 1
cvtsd2ss xmm2, xmm1
addss xmm2, dword [ebx + edx]
mov esi, dword [esp + 0xa4]
movss dword [ebx + edx], xmm2
movss xmm3, dword [edx + ecx + 4]
cvtps2pd xmm4, xmm3
mulsd xmm4, xmm5
cvtsd2ss xmm6, xmm4
addss xmm6, dword [ebx + edx + 4]
movss dword [ebx + edx + 4], xmm6
movss xmm7, dword [edx + ecx + 8]
cvtps2pd xmm0, xmm7
mulsd xmm0, xmm5
cvtsd2ss xmm0, xmm0
addss xmm0, dword [ebx + edx + 8]
movss dword [ebx + edx + 8], xmm0
add edx, ebp
cmp eax, esi
jb 0x6ee1af
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x6edd2a
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x70]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
mov dword [esp + 4], esi
movss xmm1, dword [edx + ecx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm0
add eax, 1
cvtsd2ss xmm3, xmm2
addss xmm3, dword [ebx + edx]
mov esi, dword [esp + 0xa4]
movss dword [ebx + edx], xmm3
movss xmm4, dword [edx + ecx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [ebx + edx + 4]
movss dword [ebx + edx + 4], xmm6
movss xmm7, dword [edx + ecx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm0
cvtsd2ss xmm1, xmm1
addss xmm1, dword [ebx + edx + 8]
movss dword [ebx + edx + 8], xmm1
add edx, ebp
cmp eax, esi
jb 0x6ee24c
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x6edd5b
mov ecx, dword [esp + 0xc8]
imul ecx, edx
add ecx, dword [esp + 0x64]
movss xmm1, dword [esp + 0x34]
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm1, dword [ebx + ecx*4 + 8]
mov ecx, edx
movss dword [esp + 0x34], xmm1
jmp 0x6edda9
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movss xmm1, dword [esp + 0x34]
movaps xmm3, xmm4
xor eax, eax
xor ecx, ecx
movaps xmm0, xmm4
movaps xmm7, xmm4
movaps xmm5, xmm4
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x58]
mov dword [esp + 4], esi
mov esi, dword [esp + 0x60]
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm1, dword [ebx + ecx*4 + 8]
add eax, 1
addss xmm0, dword [ebp + ecx*4]
addss xmm7, dword [ebp + ecx*4 + 4]
addss xmm5, dword [ebp + ecx*4 + 8]
add ecx, esi
cmp eax, edx
jb 0x6ee32a
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
movss dword [esp + 0x34], xmm1
addss xmm4, xmm7
lea ecx, [eax + eax]
lea edx, [eax + eax + 1]
movss xmm1, dword [esp + 0x34]
addss xmm1, xmm5
movss dword [esp + 0x34], xmm1
addss xmm3, xmm0
jmp 0x6edd8e
mov edx, dword [esp + 0x24]
movss xmm0, dword [esp + 0x34]
mov ebp, edi
imul ebp, ecx
lea ebp, [ebx + ebp*4]
mov eax, edi
imul eax, edx
lea ebp, [ebp + eax*4]
mov eax, edi
imul eax, esi
add eax, dword [esp + 0x64]
lea esi, [esi + edx]
addss xmm0, dword [ebp + eax*4]
addss xmm3, dword [ebp + eax*4 + 4]
addss xmm1, dword [ebp + eax*4 + 8]
movss dword [esp + 0x34], xmm0
mov dword [esp + 0x14], esi
jmp 0x6edf5c
mov eax, dword [esp + 0x58]
movss xmm7, dword [esp + 0x34]
mov dword [esp + 0x68], edx
xor edx, edx
movaps xmm0, xmm5
movaps xmm4, xmm5
movaps xmm2, xmm5
mov esi, edi
imul esi, dword [esp + 0x14]
mov dword [esp + 0x18], edx
mov edx, edi
mov edi, dword [esp + 0x18]
imul edx, ecx
lea eax, [eax + edx*4]
lea eax, [eax + esi*4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x3c]
lea edx, [eax + edx*4]
lea eax, [edx + esi*4]
mov edx, dword [esp + 0x68]
xor esi, esi
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x60]
addss xmm7, dword [eax + esi*4]
addss xmm3, dword [eax + esi*4 + 4]
addss xmm1, dword [eax + esi*4 + 8]
add edi, 1
addss xmm0, dword [ecx + esi*4]
addss xmm4, dword [ecx + esi*4 + 4]
addss xmm2, dword [ecx + esi*4 + 8]
add esi, ebx
cmp edi, edx
jb 0x6ee42b
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x48]
mov edx, dword [esp + 0x14]
movss dword [esp + 0x34], xmm7
addss xmm1, xmm2
movss xmm2, dword [esp + 0x34]
mov dword [esp + 0x18], edi
addss xmm3, xmm4
mov edi, dword [esp + 0xc8]
addss xmm2, xmm0
mov eax, dword [esp + 0x18]
movss dword [esp + 0x34], xmm2
lea esi, [eax + eax + 1]
lea edx, [edx + eax*2]
mov dword [esp + 0x14], edx
jmp 0x6edf4a
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
mov dword [esp + 4], esi
movss xmm0, dword [ebx + edx]
cvtps2pd xmm1, xmm0
add eax, 1
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov esi, dword [esp + 0xa8]
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movsd xmm1, qword [esp + 0xc0]
movss dword [ecx + edx], xmm3
movss xmm4, dword [ebx + edx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
cvtsd2ss xmm7, xmm5
movss dword [ecx + edx + 4], xmm7
movss xmm0, dword [ebx + edx + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [ecx + edx + 8], xmm0
add edx, ebp
cmp eax, esi
jb 0x6ee4c2
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x6ee01f
mov eax, dword [esp]
mov edx, dword [esp + 0x40]
xor ecx, ecx
lea edx, [edx + eax]
xor eax, eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ebx
mov ebx, dword [esp]
mov dword [esp + 8], ebp
mov dword [esp + 4], esi
mov ebp, dword [esp + 0xa4]
test ebp, ebp
jg 0x6ee59a
add ebx, dword [esp + 0x9c]
add eax, dword [esp + 0x9c]
mov ebp, dword [esp + 8]
add ecx, 1
cmp ecx, ebp
jb 0x6ee562
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x48]
jmp 0x6edd3c
xor edi, edi
lea esi, [eax + edx]
xor ebp, ebp
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp], ebx
movss xmm0, dword [edx + ebp]
movss xmm1, dword [edx + ebp + 4]
movss xmm2, dword [edx + ebp + 8]
addss xmm0, dword [esi + ebp]
mov ebx, dword [esp + 0xa4]
add edi, 1
movss dword [edx + ebp], xmm0
addss xmm1, dword [esi + ebp + 4]
movss dword [edx + ebp + 4], xmm1
addss xmm2, dword [esi + ebp + 8]
movss dword [edx + ebp + 8], xmm2
add ebp, ecx
cmp edi, ebx
jb 0x6ee5b4
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp]
jmp 0x6ee56d
cvtsi2sd xmm0, ebp
mov edx, dword [esp + 0xac]
movaps xmm3, xmm1
subsd xmm3, xmm0
test edx, edx
jg 0x6ee628
push eax
call fcn.006339b8
jmp 0x6ed400
movsd xmm2, qword [0xb52538]
movsd xmm0, qword [0xb52520]
mov dword [esp + 8], ebp
xor edx, edx
xorps xmm4, xmm4
mov dword [esp + 0xc], edi
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xc8]
mov ecx, edx
shl ecx, 2
neg ecx
lea ebp, [eax + ecx]
mov dword [esp + 0x40], ebp
mov edi, edx
shl edi, 2
mov ebp, eax
sub ebp, edi
mov dword [esp + 0x5c], edi
lea ecx, [ecx + edx*4]
lea edi, [eax + ecx]
lea ebp, [ebp + edx*8]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x58], edi
mov edi, dword [esp + 0x98]
lea ecx, [edi + ecx]
lea edi, [edx + edx]
mov dword [esp + 0x54], ecx
mov ecx, edx
neg ecx
mov dword [esp + 0x64], ecx
lea ecx, [edx + edx]
neg ecx
mov dword [esp + 0x60], edi
shl edi, 2
lea ecx, [edi + ecx*4]
mov edi, dword [esp + 0xa4]
sub edi, ebx
imul edi, edx
mov dword [esp + 0x6c], edi
mov edi, dword [esp + 0xc]
imul edx, ebx
mov dword [esp + 0x68], edx
shl edx, 2
sub ebp, edx
sub ecx, edx
mov dword [esp + 0x50], ebp
add ecx, eax
neg edx
add edx, eax
xor ebp, ebp
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 8]
movsd qword [esp + 0x78], xmm3
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x48], eax
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x2c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x44]
mov eax, dword [esp + 0xc]
push eax
mov edx, dword [esp + 0x4c]
push edx
call fcn.007a5548
test ebx, ebx
jne 0x6ee72c
test ebp, ebp
jg 0x6ee976
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x6ee8de
jmp 0x6ee7f7
movsd xmm5, qword [0xb52538]
subsd xmm5, qword [esp + 0x78]
movsd xmm3, qword [esp + 0xb8]
subsd xmm3, xmm5
movsd xmm4, qword [0xb52520]
movaps xmm0, xmm4
addsd xmm0, xmm3
movsd xmm2, qword [0xb52528]
andps xmm2, xmm0
movaps xmm7, xmm2
xorps xmm7, xmm0
comisd xmm5, xmm4
movsd xmm6, qword [0xb52530]
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 [0xb52538]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si ebp, xmm1
cvtsi2sd xmm0, ebp
subsd xmm3, xmm0
movsd qword [esp + 0x78], xmm3
jbe 0x6ee7d0
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x6eea15
mov eax, dword [esp + 0x9c]
add esi, eax
test ebp, ebp
jg 0x6eeca9
movsd xmm0, qword [esp + 0x78]
comisd xmm0, xmmword [0xb52520]
jbe 0x6ee7f7
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x6eeaa7
mov eax, dword [esp + 0x6c]
test eax, eax
jl 0x6ee8ab
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x28], eax
xorps xmm6, xmm6
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x40]
mov dword [esp], esi
mov esi, dword [esp + 4]
add ecx, dword [esp + 0x5c]
add dword [esp + 0x28], 1
test esi, esi
jle 0x6ee870
mov eax, connect
imul esi
mov edi, esi
sar edi, 0x1f
add edx, esi
sub edx, edi
jne 0x6eeb64
mov edi, dword [esp + 0x28]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov eax, 1
imul edi, dword [esp + 0x68]
lea edx, [eax - 1]
cmp esi, edx
ja 0x6eeb3f
jmp 0x6ee882
mov edi, dword [esp + 0x28]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
imul edi, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
movss dword [ebp + ecx], xmm3
cmp edi, eax
movss dword [ebp + ecx + 4], xmm4
movss dword [ebp + ecx + 8], xmm5
jle 0x6ee829
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
mov eax, dword [esp + 0xa8]
test eax, eax
jg 0x6eec0d
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0xac]
add edi, eax
add ebx, 1
cmp ebx, edx
jb 0x6ee6fd
mov eax, dword [esp + 0x48]
jmp 0x6ee61d
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x78]
xor ecx, ecx
lea edx, [esi + eax]
xor eax, eax
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm1, dword [eax + edx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm0
add ecx, 1
cvtsd2ss xmm3, xmm2
addss xmm3, dword [eax + ebx]
mov esi, dword [esp + 0xa4]
movss dword [eax + ebx], xmm3
movss xmm4, dword [eax + edx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [eax + ebx + 4]
movss dword [eax + ebx + 4], xmm6
movss xmm7, dword [eax + edx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm0
cvtsd2ss xmm1, xmm1
addss xmm1, dword [eax + ebx + 8]
movss dword [eax + ebx + 8], xmm1
add eax, ebp
cmp ecx, esi
jb 0x6ee902
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6ee7f7
mov edx, dword [esp + 0x10]
xor eax, eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], ebx
mov ecx, dword [esp + 0xa4]
test ecx, ecx
jg 0x6ee9ac
mov ecx, dword [esp + 0x9c]
add esi, ecx
add eax, 1
cmp eax, ebp
jb 0x6ee984
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x44]
jmp 0x6ee718
xor edi, edi
lea ebx, [esi + edx]
mov edx, dword [esp + 0x58]
xor ecx, ecx
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm0, dword [ecx + edx]
movss xmm1, dword [ecx + edx + 4]
movss xmm2, dword [ecx + edx + 8]
addss xmm0, dword [ebx + ecx]
mov esi, dword [esp + 0xa4]
add edi, 1
movss dword [ecx + edx], xmm0
addss xmm1, dword [ebx + ecx + 4]
movss dword [ecx + edx + 4], xmm1
addss xmm2, dword [ebx + ecx + 8]
movss dword [ecx + edx + 8], xmm2
add ecx, ebp
cmp edi, esi
jb 0x6ee9c2
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6ee98f
mov eax, dword [esp + 0x10]
xor ecx, ecx
lea edx, [esi + eax]
xor eax, eax
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm0, dword [eax + edx]
cvtps2pd xmm1, xmm0
mulsd xmm1, xmm5
add ecx, 1
cvtsd2ss xmm2, xmm1
addss xmm2, dword [eax + ebx]
mov esi, dword [esp + 0xa4]
movss dword [eax + ebx], xmm2
movss xmm3, dword [eax + edx + 4]
cvtps2pd xmm4, xmm3
mulsd xmm4, xmm5
cvtsd2ss xmm6, xmm4
addss xmm6, dword [eax + ebx + 4]
movss dword [eax + ebx + 4], xmm6
movss xmm7, dword [eax + edx + 8]
cvtps2pd xmm0, xmm7
mulsd xmm0, xmm5
cvtsd2ss xmm0, xmm0
addss xmm0, dword [eax + ebx + 8]
movss dword [eax + ebx + 8], xmm0
add eax, ebp
cmp ecx, esi
jb 0x6eea33
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6ee7c7
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x78]
xor ecx, ecx
lea edx, [esi + eax]
xor eax, eax
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm1, dword [eax + edx]
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm0
add ecx, 1
cvtsd2ss xmm3, xmm2
addss xmm3, dword [eax + ebx]
mov esi, dword [esp + 0xa4]
movss dword [eax + ebx], xmm3
movss xmm4, dword [eax + edx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm0
cvtsd2ss xmm6, xmm5
addss xmm6, dword [eax + ebx + 4]
movss dword [eax + ebx + 4], xmm6
movss xmm7, dword [eax + edx + 8]
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm0
cvtsd2ss xmm1, xmm1
addss xmm1, dword [eax + ebx + 8]
movss dword [eax + ebx + 8], xmm1
add eax, ebp
cmp ecx, esi
jb 0x6eeacb
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6ee7f7
imul eax, dword [esp + 0xc8]
add eax, dword [esp + 0x64]
lea edx, [ebx + edi*4]
addss xmm3, dword [edx + eax*4]
addss xmm4, dword [edx + eax*4 + 4]
addss xmm5, dword [edx + eax*4 + 8]
jmp 0x6ee882
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x60]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
xor edi, edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x14]
movaps xmm2, xmm6
movaps xmm1, xmm6
movaps xmm0, xmm6
imul edi, dword [esp + 0x68]
mov dword [esp + 0x24], ecx
lea eax, [eax + edi*4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x1c]
lea eax, [eax + edi*4]
mov dword [esp + 0x20], eax
xor eax, eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x18], eax
addss xmm3, dword [ebx + eax*4]
addss xmm4, dword [ebx + eax*4 + 4]
addss xmm5, dword [ebx + eax*4 + 8]
add esi, 1
addss xmm2, dword [ecx + eax*4]
addss xmm1, dword [ecx + eax*4 + 4]
addss xmm0, dword [ecx + eax*4 + 8]
add eax, ebp
cmp esi, edx
jb 0x6eebb5
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x14], esi
addss xmm5, xmm0
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
addss xmm4, xmm1
lea eax, [eax + eax + 1]
addss xmm3, xmm2
jmp 0x6ee863
mov eax, dword [esp + 0x54]
xor ecx, ecx
lea edx, [eax + edi]
xor eax, eax
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm0, dword [eax + ebx]
cvtps2pd xmm1, xmm0
add ecx, 1
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov esi, dword [esp + 0xa8]
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movsd xmm1, qword [esp + 0xc0]
movss dword [edx + eax], xmm3
movss xmm4, dword [eax + ebx + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
cvtsd2ss xmm7, xmm5
movss dword [edx + eax + 4], xmm7
movss xmm0, dword [eax + ebx + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [edx + eax + 8], xmm0
add eax, ebp
cmp ecx, esi
jb 0x6eec2b
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6ee8ba
mov eax, dword [esp + 0x10]
xor ecx, ecx
lea edx, [eax + esi]
xor eax, eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0xa4]
test ebx, ebx
jg 0x6eeced
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x9c]
add esi, ebx
add eax, edi
add ecx, 1
cmp ecx, ebp
jb 0x6eecbc
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x44]
jmp 0x6ee7d8
xor edi, edi
lea ebx, [edx + eax]
mov dword [esp + 0x20], ebx
xor ebx, ebx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
movss xmm0, dword [ebx + ecx]
movss xmm1, dword [ebx + ecx + 4]
movss xmm2, dword [ebx + ecx + 8]
addss xmm0, dword [edx + ebx]
mov esi, dword [esp + 0xa4]
add edi, 1
movss dword [ebx + ecx], xmm0
addss xmm1, dword [edx + ebx + 4]
movss dword [ebx + ecx + 4], xmm1
addss xmm2, dword [edx + ebx + 8]
movss dword [ebx + ecx + 8], xmm2
add ebx, ebp
cmp edi, esi
jb 0x6eed13
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x6eecc7
push edi
call fcn.006339a0
test eax, eax
jne 0x6eed84
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x6eed9a
push eax
call fcn.006339b8
jmp 0x6ed400
mov ecx, dword [esp + 0xc8]
mov dword [esp], esi
xor edx, edx
xorps xmm0, xmm0
mov dword [esp + 0xc], edi
mov edi, ecx
shl edi, 2
neg edi
lea esi, [edi + ecx*4]
mov dword [esp + 0x44], edx
lea edx, [eax + edi]
lea edi, [eax + esi]
add esi, dword [esp + 0x98]
mov dword [esp + 0x40], edx
mov edx, ecx
shl edx, 2
mov dword [esp + 0x3c], edx
mov dword [esp + 0x58], edi
mov edi, eax
sub edi, edx
mov edx, ecx
mov dword [esp + 0x38], esi
neg edx
lea esi, [ecx + ecx]
lea edi, [edi + ecx*8]
mov dword [esp + 0x64], edx
lea edx, [ecx + ecx]
neg edx
mov dword [esp + 0x60], esi
shl esi, 2
lea edx, [esi + edx*4]
mov esi, dword [esp + 0xa4]
sub esi, ebx
imul esi, ecx
mov dword [esp + 0x6c], esi
mov esi, dword [esp]
imul ecx, ebx
mov dword [esp + 0x68], ecx
shl ecx, 2
sub edi, ecx
sub edx, ecx
mov dword [esp + 0x54], edi
mov edi, eax
sub edi, ecx
mov ecx, dword [esp + 0x9c]
add edx, eax
imul ecx, ebp
mov dword [esp + 0x5c], edi
xor edi, edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0xc]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x48], eax
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x44]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 4], ebx
mov ebx, ecx
mov dword [esp], esi
mov esi, dword [esp + 0x38]
mov eax, dword [esp + 0xc]
push eax
mov edx, dword [esp + 0x4c]
push edx
call fcn.007a5548
mov eax, dword [esp + 0x50]
sub eax, ebx
add eax, ebx
add eax, dword [esp]
mov edx, dword [esp + 0xc8]
push edx
mov edx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0xb0]
push edx
mov edx, dword [esp + 0xac]
push edx
push eax
call fcn.006e0770
add esp, 0x18
mov eax, dword [esp + 0x6c]
test eax, eax
jl 0x6eef5b
mov esi, dword [esp + 4]
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x20], eax
xorps xmm6, xmm6
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x44], edi
add dword [esp + 0x20], 1
add ecx, ebx
test esi, esi
jle 0x6eef1f
mov eax, connect
imul esi
mov edi, esi
sar edi, 0x1f
add edx, esi
sub edx, edi
jne 0x6eefb9
mov edi, dword [esp + 0x20]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov eax, 1
imul edi, dword [esp + 0x68]
lea edx, [eax - 1]
cmp esi, edx
ja 0x6eef90
jmp 0x6eef31
mov edi, dword [esp + 0x20]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
imul edi, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
movss dword [ebp + ecx], xmm3
cmp edi, eax
movss dword [ebp + ecx + 4], xmm4
movss dword [ebp + ecx + 8], xmm5
jle 0x6eeede
mov ebp, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0xa8]
test eax, eax
jg 0x6ef062
add ebp, dword [esp + 0xa0]
mov eax, dword [esp + 0xac]
add dword [esp + 0x50], ebx
add edi, 1
cmp edi, eax
jb 0x6eee6a
mov eax, dword [esp + 0x48]
jmp 0x6eed8f
imul eax, dword [esp + 0xc8]
add eax, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
lea edx, [edx + edi*4]
addss xmm3, dword [edx + eax*4]
addss xmm4, dword [edx + eax*4 + 4]
addss xmm5, dword [edx + eax*4 + 8]
jmp 0x6eef31
mov eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x60]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
xor edi, edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
movaps xmm2, xmm6
movaps xmm1, xmm6
movaps xmm0, xmm6
imul edi, dword [esp + 0x68]
mov dword [esp + 0x1c], ecx
lea eax, [eax + edi*4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x10]
lea eax, [eax + edi*4]
mov dword [esp + 0x4c], eax
xor eax, eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x18], eax
addss xmm3, dword [ebx + eax*4]
addss xmm4, dword [ebx + eax*4 + 4]
addss xmm5, dword [ebx + eax*4 + 8]
add esi, 1
addss xmm2, dword [ecx + eax*4]
addss xmm1, dword [ecx + eax*4 + 4]
addss xmm0, dword [ecx + eax*4 + 8]
add eax, ebp
cmp esi, edx
jb 0x6ef00a
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x14], esi
addss xmm5, xmm0
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
addss xmm4, xmm1
lea eax, [eax + eax + 1]
addss xmm3, xmm2
jmp 0x6eef16
xor ecx, ecx
lea edx, [esi + ebp]
mov esi, dword [esp + 0x3c]
xor eax, eax
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x44], edi
movss xmm0, dword [ebx + eax]
cvtps2pd xmm1, xmm0
add ecx, 1
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov edi, dword [esp + 0xa8]
mulsd xmm1, xmm2
cvtsd2ss xmm3, xmm1
movsd xmm1, qword [esp + 0xc0]
movss dword [edx + eax], xmm3
movss xmm4, dword [ebx + eax + 4]
cvtps2pd xmm5, xmm4
mulsd xmm5, xmm6
cvtsd2ss xmm7, xmm5
movss dword [edx + eax + 4], xmm7
movss xmm0, dword [ebx + eax + 8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [edx + eax + 8], xmm0
add eax, esi
cmp ecx, edi
jb 0x6ef079
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x44]
jmp 0x6eef6a