Function at 0x704394
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]
movsd xmm4, qword [0xb52708]
movsd xmm3, qword [esp + 0xb0]
andps xmm4, xmm2
xorps xmm3, xmm4
movsd xmm0, qword [0xb52710]
movsd xmm7, qword [esp + 0xb0]
movsd xmm5, qword [0xb52718]
mov edx, dword [esp + 0xa4]
imul edx, dword [esp + 0xc8]
cmpltsd xmm3, xmm0
andps xmm3, xmm0
movsd xmm0, qword [0xb52710]
orps xmm3, xmm4
addsd xmm7, xmm3
subsd xmm7, xmm3
movaps xmm6, xmm7
mov edi, edx
movsd xmm3, qword [esp + 0xb8]
subsd xmm6, xmm2
cmpnlesd xmm6, xmm4
movsd xmm4, qword [0xb52708]
andps xmm6, xmm5
subsd xmm7, xmm6
movsd xmm5, qword [esp + 0xb8]
andps xmm4, xmm1
xorps xmm3, xmm4
cmpltsd xmm3, xmm0
andps xmm3, xmm0
cvtsd2si ebx, xmm7
orps xmm3, xmm4
movsd xmm0, qword [0xb52718]
addsd xmm5, xmm3
subsd xmm5, xmm3
movaps xmm3, xmm5
shl edi, 2
test eax, eax
subsd xmm3, xmm1
cmpnlesd xmm3, xmm4
andps xmm3, xmm0
subsd xmm5, xmm3
cvtsd2si ebp, xmm5
je 0x705e67
cmp eax, 1
je 0x7044fd
cmp eax, 2
jne 0x7044bb
push edx
call fcn.006c7470
movsd xmm2, qword [esp + 0xb0]
test eax, eax
jne 0x704524
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
cmp eax, 3
jne 0x7044f0
push edx
call fcn.006c7470
movsd xmm1, qword [esp + 0xb8]
movsd xmm2, qword [esp + 0xb0]
test eax, eax
jne 0x704c72
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 0x705703
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x704537
push eax
call fcn.006339b8
jmp 0x7044f0
movsd xmm4, qword [0xb52718]
movsd xmm3, qword [0xb52700]
cvtsi2sd xmm0, ebx
movaps xmm1, xmm2
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
mov dword [esp], esi
xor edx, edx
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]
mov dword [esp + 0x18], ecx
mov ecx, eax
sub ecx, edi
lea ebp, [ebp + edx*4]
mov dword [esp + 0x1c], ebp
lea edi, [eax + ebp]
mov dword [esp + 0x50], edi
subsd xmm1, xmm0
mov edi, dword [esp + 0x98]
movsd qword [esp + 0x70], xmm1
lea ebp, [edi + ebp]
xorps xmm0, xmm0
mov dword [esp + 0x54], ebp
mov ebp, edx
neg ebp
mov dword [esp + 0x20], ebp
lea edi, [edx + edx]
neg edi
lea ebp, [edx + edx]
mov dword [esp + 0x60], ebp
shl ebp, 2
lea edx, [ecx + edx*8]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x58], edx
mov esi, ebx
mov dword [esp + 0x1c], ecx
lea edx, [ebp + edi*4]
add edx, eax
mov edi, dword [esp + 0xc]
mov ebp, dword [esp + 8]
mov dword [esp + 0x64], edx
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x14]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x18]
xor edx, edx
mov ebx, eax
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0xc]
push edx
push ebx
call fcn.007b5b5c
mov edx, dword [esp + 8]
test edx, edx
jg 0x704bc1
movsd xmm6, qword [esp + 0x70]
test esi, esi
jle 0x70465d
mov eax, connect
imul esi
mov ecx, esi
sar ecx, 0x1f
add edx, esi
sub edx, ecx
jne 0x704950
xor edx, edx
mov ecx, 1
mov dword [esp + 0x48], ecx
xorps xmm5, xmm5
movaps xmm4, xmm5
movaps xmm3, xmm5
lea ecx, [ecx - 1]
cmp esi, ecx
ja 0x704926
jmp 0x704668
xor edx, edx
xorps xmm5, xmm5
movaps xmm4, xmm5
movaps xmm3, xmm5
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0xa4]
imul ecx, edx
movss xmm2, dword [ebx + ecx*4]
cvtps2pd xmm0, xmm2
movsd xmm2, qword [esp + 0x70]
sub eax, edx
cmp edx, eax
mulsd xmm0, xmm2
cvtsd2ss xmm1, xmm0
movss xmm0, dword [ebx + ecx*4 + 4]
cvtps2pd xmm0, xmm0
addss xmm1, xmm3
movss xmm3, dword [ebx + ecx*4 + 8]
cvtps2pd xmm3, xmm3
movss dword [ebx], xmm1
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mov ecx, ebp
addss xmm0, xmm4
movss dword [ebx + 4], xmm0
mulsd xmm3, xmm2
cvtsd2ss xmm2, xmm3
addss xmm2, xmm5
movss dword [ebx + 8], xmm2
jge 0x7048f3
mov dword [esp + 0x2c], eax
mov ebp, edx
mov dword [esp + 0x14], edi
mov dword [esp + 4], esi
xorps xmm5, xmm5
movsd xmm2, qword [0xb52718]
movsd xmm3, qword [0xb52700]
movsd xmm1, qword [0xb52700]
movsd xmm0, qword [0xb52708]
subsd xmm2, xmm6
comisd xmm2, xmm3
movsd xmm6, qword [esp + 0xb0]
movsd xmm4, qword [0xb52710]
subsd xmm6, xmm2
addsd xmm1, xmm6
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
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 [0xb52718]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm4, xmm7
cvtsd2si esi, xmm4
cvtsi2sd xmm0, esi
subsd xmm6, xmm0
jbe 0x7047c4
mov edi, dword [esp + 0xc8]
imul edi, ebp
movss xmm3, dword [ebx + edi*4]
cvtps2pd xmm0, xmm3
movss xmm1, dword [ebx + edi*4 + 4]
cvtps2pd xmm4, xmm1
mulsd xmm0, xmm2
cvtsd2ss xmm3, xmm0
movss xmm0, dword [ebx + edi*4 + 8]
cvtps2pd xmm0, xmm0
mov edi, 1
mov dword [esp + 0x48], edi
mulsd xmm4, xmm2
cvtsd2ss xmm7, xmm4
movss dword [esp + 0x34], xmm7
mulsd xmm0, xmm2
cvtsd2ss xmm2, xmm0
movss dword [esp + 0x30], xmm2
jmp 0x7047d9
movss dword [esp + 0x30], xmm5
movss dword [esp + 0x34], xmm5
movaps xmm3, xmm5
xor edi, edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x40], edi
cmp edi, esi
mov dword [esp + 0x3c], edi
jg 0x704821
mov edi, esi
sub edi, dword [esp + 0x48]
add edi, 1
mov eax, connect
imul edi
add edx, edi
sar edi, 0x1f
sub edx, edi
jne 0x704a2c
mov edi, 1
mov dword [esp + 0x38], edi
sub esi, dword [esp + 0x40]
mov edi, dword [esp + 0x38]
add esi, 1
lea edi, [edi - 1]
cmp esi, edi
ja 0x7049d1
comisd xmm6, xmmword [0xb52700]
jbe 0x7048ad
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0xa4]
lea esi, [ebp + esi]
cmp edi, esi
jle 0x7048b5
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]
cvtps2pd xmm1, xmm0
movss xmm4, dword [ebx + ebp*4 + 4]
cvtps2pd xmm7, xmm4
mulsd xmm1, xmm6
cvtsd2ss xmm2, xmm1
movss xmm1, dword [esp + 0x34]
addss xmm3, xmm2
mulsd xmm7, xmm6
cvtsd2ss xmm0, xmm7
addss xmm1, xmm0
movss xmm0, dword [ebx + ebp*4 + 8]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x34], xmm1
movss xmm1, dword [esp + 0x30]
mulsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
movss dword [esp + 0x30], xmm1
jmp 0x7048b5
mov esi, dword [esp + 0x48]
lea esi, [ebp + esi]
movss xmm0, dword [esp + 0x34]
movss xmm1, dword [esp + 0x30]
mov ebp, dword [esp + 0xc8]
mov edi, dword [esp + 0x2c]
movss dword [ecx], xmm3
movss dword [ecx + 4], xmm0
movss dword [ecx + 8], xmm1
lea ecx, [ecx + ebp*4]
mov ebp, esi
cmp esi, edi
jl 0x7046e8
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 4]
mov edx, dword [esp + 0xa8]
test edx, edx
jg 0x704b1f
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xac]
add dword [esp + 0x4c], edx
add edi, 1
cmp edi, ecx
jb 0x704605
mov eax, ebx
jmp 0x70452f
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 0x704668
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x60]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x64]
mov dword [esp + 4], esi
mov esi, dword [esp + 0x58]
xor eax, eax
xorps xmm5, xmm5
movaps xmm4, xmm5
movaps xmm3, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
movaps xmm7, xmm5
xor ecx, ecx
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm5, dword [ebx + ecx*4 + 8]
addss xmm1, dword [esi + ecx*4]
addss xmm0, dword [esi + ecx*4 + 4]
addss xmm7, dword [esi + ecx*4 + 8]
add ecx, edi
add eax, 1
cmp eax, edx
jb 0x70497e
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 4]
addss xmm5, xmm7
addss xmm4, xmm0
addss xmm3, xmm1
lea edx, [eax + eax]
lea ecx, [eax + eax + 1]
mov dword [esp + 0x48], ecx
jmp 0x704650
mov eax, dword [esp + 0xc8]
mov edi, dword [esp + 0x3c]
movss xmm0, dword [esp + 0x34]
movss xmm1, dword [esp + 0x30]
mov esi, eax
imul esi, ebp
mov edx, eax
imul edx, edi
lea esi, [ebx + esi*4]
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]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x30], xmm1
lea esi, [edx + edi]
mov dword [esp + 0x48], esi
jmp 0x704821
movss xmm4, dword [esp + 0x34]
movss xmm7, dword [esp + 0x30]
movaps xmm2, xmm5
movaps xmm1, xmm5
movaps xmm0, xmm5
mov dword [esp + 0x68], esi
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x28], ecx
mov edi, edx
imul edi, ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x60]
xor esi, esi
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x58]
mov ebp, dword [esp + 0x44]
lea eax, [esi + edi*4]
imul edx, dword [esp + 0x48]
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]
mov ecx, edi
xor edi, edi
addss xmm3, dword [eax + edi*4]
addss xmm4, dword [eax + edi*4 + 4]
addss xmm7, dword [eax + edi*4 + 8]
addss xmm2, dword [ecx + edi*4]
addss xmm1, dword [ecx + edi*4 + 4]
addss xmm0, dword [ecx + edi*4 + 8]
add edi, ebx
add ebp, 1
cmp ebp, edx
jb 0x704a98
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x10]
movss dword [esp + 0x34], xmm4
movss dword [esp + 0x30], xmm7
movss xmm4, dword [esp + 0x30]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
addss xmm4, xmm0
movss xmm0, dword [esp + 0x34]
movss dword [esp + 0x30], xmm4
addss xmm0, xmm1
movss dword [esp + 0x34], xmm0
addss xmm3, xmm2
lea edi, [eax + eax + 1]
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x48]
lea edi, [edi + eax*2]
mov dword [esp + 0x48], edi
jmp 0x70480b
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x4c]
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]
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov edi, dword [esp + 0xa8]
movss xmm0, dword [edx + ebx]
cvtps2pd xmm1, xmm0
add eax, 1
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 0x704b42
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 4]
jmp 0x704902
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov ebx, dword [esp]
mov dword [esp + 4], esi
xor eax, eax
mov ebp, dword [esp + 0xa4]
test ebp, ebp
jg 0x704c0d
mov ebp, dword [esp + 0x9c]
add ebx, ebp
add eax, 1
cmp eax, ecx
jb 0x704bda
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 0x70461c
mov ecx, dword [esp + 0x6c]
mov dword [esp], ebx
xor edi, edi
lea esi, [ebx + edx]
xor ebp, ebp
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xa4]
movss xmm0, dword [edx + ebp]
addss xmm0, dword [esi + ebp]
movss xmm1, dword [edx + ebp + 4]
movss xmm2, dword [edx + ebp + 8]
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
add edi, 1
cmp edi, ebx
jb 0x704c1f
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 8]
mov ebx, dword [esp]
jmp 0x704be5
cvtsi2sd xmm3, ebp
movaps xmm0, xmm1
subsd xmm0, xmm3
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x704c93
push eax
call fcn.006339b8
jmp 0x7044f0
movsd xmm6, qword [0xb52718]
movsd xmm5, qword [0xb52700]
cvtsi2sd xmm3, ebx
movsd qword [esp + 0x70], xmm0
movaps xmm4, xmm2
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
subsd xmm4, xmm3
movsd qword [esp + 0x78], xmm4
mov dword [esp], esi
xor edx, edx
xorps xmm3, xmm3
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]
mov dword [esp + 0x4c], ecx
mov ecx, eax
sub ecx, edi
mov edi, dword [esp + 0x98]
lea ebp, [ebp + edx*4]
mov dword [esp + 0x40], ebp
lea edi, [edi + ebp]
mov dword [esp + 0x50], edi
lea ebp, [eax + ebp]
mov dword [esp + 0x54], ebp
mov ebp, edx
neg ebp
lea edi, [edx + edx]
mov dword [esp + 0x64], ebp
neg edi
lea ebp, [edx + edx]
mov dword [esp + 0x60], ebp
shl ebp, 2
lea edx, [ecx + edx*8]
mov dword [esp + 0x58], edx
lea edx, [ebp + edi*4]
add edx, eax
mov edi, dword [esp + 0xc]
mov ebp, dword [esp + 8]
mov dword [esp + 0x3c], edx
mov dword [esp + 0xc], edi
xor ecx, ecx
mov edi, dword [esp + 0x44]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x40]
mov esi, ebx
mov ebx, eax
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0xc]
push edx
push ebx
call fcn.007b5b5c
test edi, edi
jne 0x704d82
test ebp, ebp
jg 0x7051dd
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x705140
jmp 0x704e53
movsd xmm5, qword [0xb52718]
subsd xmm5, qword [esp + 0x70]
movsd xmm3, qword [esp + 0xb8]
movsd xmm4, qword [0xb52700]
comisd xmm5, xmm4
movsd xmm0, qword [0xb52700]
movsd xmm2, qword [0xb52708]
subsd xmm3, xmm5
addsd xmm0, xmm3
movsd xmm6, qword [0xb52710]
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 [0xb52718]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si ebp, xmm1
cvtsi2sd xmm0, ebp
subsd xmm3, xmm0
movsd qword [esp + 0x70], xmm3
jbe 0x704e2c
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x70528a
mov edx, dword [esp + 0x9c]
add dword [esp], edx
test ebp, ebp
jg 0x70563e
movsd xmm0, qword [esp + 0x70]
comisd xmm0, xmmword [0xb52700]
jbe 0x704e53
mov edx, dword [esp + 0xa4]
test edx, edx
jg 0x705321
movsd xmm6, qword [esp + 0x78]
test esi, esi
jle 0x704e93
mov eax, connect
imul esi
mov ecx, esi
sar ecx, 0x1f
add edx, esi
sub edx, ecx
jne 0x7053f0
xor ecx, ecx
mov edx, 1
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movaps xmm3, xmm4
lea eax, [edx - 1]
cmp esi, eax
ja 0x7053be
jmp 0x704ea1
xor ecx, ecx
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movaps xmm3, xmm4
mov edx, dword [esp + 0xc8]
movsd xmm2, qword [esp + 0x78]
mov eax, dword [esp + 0xa4]
imul edx, ecx
movss xmm1, dword [ebx + edx*4]
cvtps2pd xmm1, xmm1
movss xmm0, dword [ebx + edx*4 + 4]
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm2
cvtsd2ss xmm1, xmm1
sub eax, ecx
cmp ecx, eax
addss xmm1, xmm3
movss xmm3, dword [ebx + edx*4 + 8]
mov edx, dword [esp + 0x4c]
movss dword [ebx], xmm1
mulsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
addss xmm0, xmm4
cvtps2pd xmm4, xmm3
movss dword [ebx + 4], xmm0
mulsd xmm4, xmm2
cvtsd2ss xmm5, xmm4
addss xmm5, dword [esp + 0x34]
movss dword [ebx + 8], xmm5
jge 0x70510d
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x44], edi
mov edi, dword [esp + 0xc8]
mov dword [esp + 8], ebp
xorps xmm5, xmm5
mov dword [esp + 4], esi
movsd xmm2, qword [0xb52718]
movsd xmm3, qword [0xb52700]
movsd xmm1, qword [0xb52700]
movsd xmm0, qword [0xb52708]
subsd xmm2, xmm6
comisd xmm2, xmm3
movsd xmm6, qword [esp + 0xb0]
movsd xmm4, qword [0xb52710]
subsd xmm6, xmm2
addsd xmm1, xmm6
andps xmm0, xmm1
movaps xmm7, xmm0
xorps xmm7, xmm1
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 [0xb52718]
cmpnlesd xmm7, xmm0
andps xmm7, xmm1
subsd xmm4, xmm7
cvtsd2si ebp, xmm4
cvtsi2sd xmm0, ebp
subsd xmm6, xmm0
jbe 0x705003
mov edx, edi
imul edx, ecx
movss xmm3, dword [ebx + edx*4]
cvtps2pd xmm0, xmm3
movss xmm4, dword [ebx + edx*4 + 4]
cvtps2pd xmm7, xmm4
mulsd xmm0, xmm2
cvtsd2ss xmm1, xmm0
movss xmm0, dword [ebx + edx*4 + 8]
cvtps2pd xmm0, xmm0
movss dword [esp + 0x34], xmm1
mov esi, 1
mulsd xmm7, xmm2
cvtsd2ss xmm3, xmm7
mov dword [esp + 0x14], esi
mulsd xmm0, xmm2
cvtsd2ss xmm1, xmm0
jmp 0x705015
movss dword [esp + 0x34], xmm5
movaps xmm1, xmm5
movaps xmm3, 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 0x705059
mov esi, ebp
sub esi, dword [esp + 0x14]
add esi, 1
mov eax, connect
imul esi
add edx, esi
sar esi, 0x1f
sub edx, esi
jne 0x7054d1
mov esi, 1
sub ebp, dword [esp + 0x20]
add ebp, 1
lea edx, [esi - 1]
cmp ebp, edx
ja 0x705489
comisd xmm6, xmmword [0xb52700]
jbe 0x7050cd
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0xa4]
lea edx, [ecx + edx]
cmp ebp, edx
jle 0x7050d4
imul ecx, edi
mov ebp, dword [esp + 0x14]
imul ebp, edi
add ecx, ebp
movss xmm0, dword [ebx + ecx*4]
cvtps2pd xmm2, xmm0
movss xmm7, dword [esp + 0x34]
movss xmm0, dword [ebx + ecx*4 + 4]
cvtps2pd xmm0, xmm0
mulsd xmm2, xmm6
cvtsd2ss xmm4, xmm2
addss xmm7, xmm4
movss dword [esp + 0x34], xmm7
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 0x7050d4
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
movss dword [ecx + 4], xmm3
movss dword [ecx + 8], xmm1
lea ebp, [ecx + edi*4]
mov ecx, edx
mov dword [esp + 0x2c], ebp
cmp edx, esi
jl 0x704f32
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
mov edx, dword [esp + 0xa8]
test edx, edx
jg 0x70559c
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xac]
add dword [esp + 0x10], edx
add edi, 1
cmp edi, ecx
jb 0x704d57
mov eax, ebx
jmp 0x704c88
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x70]
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
xor eax, eax
lea ecx, [edx + ecx]
mov dword [esp + 4], esi
xor edx, edx
mov esi, dword [esp + 0xa4]
movss xmm1, dword [edx + ecx]
cvtps2pd xmm2, xmm1
add eax, 1
mulsd xmm2, xmm0
cvtsd2ss xmm3, xmm2
addss xmm3, dword [ebx + edx]
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 0x705168
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x704e53
mov edx, dword [esp + 0x40]
mov ecx, dword [esp]
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ebx
mov dword [esp + 4], esi
xor eax, eax
mov ebx, dword [esp + 0xa4]
test ebx, ebx
jg 0x705221
mov ebx, dword [esp + 0x9c]
add ecx, ebx
add eax, 1
cmp eax, ebp
jb 0x7051f2
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 4]
mov dword [esp], ecx
jmp 0x704d6e
mov dword [esp + 8], ebp
mov dword [esp], ecx
xor edi, edi
lea esi, [ecx + edx]
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x6c]
xor ebx, ebx
mov ebp, dword [esp + 0xa4]
movss xmm0, dword [edx + ebx]
addss xmm0, dword [ebx + esi]
movss xmm1, dword [edx + ebx + 4]
movss xmm2, dword [edx + ebx + 8]
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
add edi, 1
cmp edi, ebp
jb 0x705237
mov edx, dword [esp + 0x40]
mov ebp, dword [esp + 8]
mov ecx, dword [esp]
jmp 0x7051fd
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
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
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
mov esi, dword [esp + 0xa4]
movss xmm0, dword [edx + ecx]
cvtps2pd xmm1, xmm0
add eax, 1
mulsd xmm1, xmm5
cvtsd2ss xmm2, xmm1
addss xmm2, dword [ebx + edx]
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 0x7052ac
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x704e22
mov edx, dword [esp]
mov ecx, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x70]
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
xor eax, eax
lea ecx, [edx + ecx]
mov dword [esp + 4], esi
xor edx, edx
mov esi, dword [esp + 0xa4]
movss xmm1, dword [edx + ecx]
cvtps2pd xmm2, xmm1
add eax, 1
mulsd xmm2, xmm0
cvtsd2ss xmm3, xmm2
addss xmm3, dword [ebx + edx]
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 0x705349
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x704e53
mov ecx, dword [esp + 0xc8]
movss xmm1, dword [esp + 0x34]
imul ecx, edx
add ecx, dword [esp + 0x64]
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm1, dword [ebx + ecx*4 + 8]
movss dword [esp + 0x34], xmm1
mov ecx, edx
jmp 0x704ea1
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]
xor eax, eax
xorps xmm4, xmm4
movss dword [esp + 0x34], xmm4
movaps xmm3, xmm4
movaps xmm0, xmm4
movaps xmm7, xmm4
movaps xmm5, xmm4
movss xmm1, dword [esp + 0x34]
xor ecx, ecx
addss xmm3, dword [ebx + ecx*4]
addss xmm4, dword [ebx + ecx*4 + 4]
addss xmm1, dword [ebx + ecx*4 + 8]
addss xmm0, dword [ebp + ecx*4]
addss xmm7, dword [ebp + ecx*4 + 4]
addss xmm5, dword [ebp + ecx*4 + 8]
add ecx, esi
add eax, 1
cmp eax, edx
jb 0x705427
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
movss dword [esp + 0x34], xmm1
movss xmm1, dword [esp + 0x34]
addss xmm1, xmm5
movss dword [esp + 0x34], xmm1
addss xmm4, xmm7
addss xmm3, xmm0
lea ecx, [eax + eax]
lea edx, [eax + eax + 1]
jmp 0x704e86
mov edx, dword [esp + 0x24]
movss xmm0, dword [esp + 0x34]
mov ebp, edi
imul ebp, ecx
mov eax, edi
imul eax, edx
lea ebp, [ebx + ebp*4]
lea ebp, [ebp + eax*4]
mov eax, edi
imul eax, esi
lea esi, [esi + edx]
add eax, dword [esp + 0x64]
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 0x705059
mov eax, dword [esp + 0x58]
movss xmm7, dword [esp + 0x34]
movaps xmm0, xmm5
movaps xmm4, xmm5
movaps xmm2, xmm5
mov esi, edi
imul esi, dword [esp + 0x14]
mov dword [esp + 0x68], edx
mov dword [esp + 0x38], ecx
xor edx, edx
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]
mov ecx, dword [esp + 0x1c]
lea edx, [eax + edx*4]
lea eax, [edx + esi*4]
mov edx, dword [esp + 0x68]
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x60]
xor esi, esi
addss xmm7, dword [eax + esi*4]
addss xmm3, dword [eax + esi*4 + 4]
addss xmm1, dword [eax + esi*4 + 8]
addss xmm0, dword [ecx + esi*4]
addss xmm4, dword [ecx + esi*4 + 4]
addss xmm2, dword [ecx + esi*4 + 8]
add esi, ebx
add edi, 1
cmp edi, edx
jb 0x705528
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
mov edi, dword [esp + 0xc8]
addss xmm3, xmm4
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 0x705047
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
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
xor eax, eax
lea ecx, [edx + ecx]
xor edx, edx
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov esi, dword [esp + 0xa8]
movss xmm0, dword [ebx + edx]
cvtps2pd xmm1, xmm0
add eax, 1
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 0x7055bf
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
jmp 0x70511c
mov eax, dword [esp]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ebx
mov ebx, eax
mov dword [esp + 8], ebp
mov dword [esp + 4], esi
xor ecx, ecx
lea edx, [edx + eax]
xor eax, eax
mov ebp, dword [esp + 0xa4]
test ebp, ebp
jg 0x705696
add ebx, dword [esp + 0x9c]
add eax, dword [esp + 0x9c]
mov ebp, dword [esp + 8]
add ecx, 1
cmp ecx, ebp
jb 0x70565e
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x48]
jmp 0x704e34
mov dword [esp + 0x2c], edx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp], ebx
xor edi, edi
lea esi, [eax + edx]
xor ebp, ebp
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0xa4]
movss xmm0, dword [edx + ebp]
addss xmm0, dword [esi + ebp]
movss xmm1, dword [edx + ebp + 4]
movss xmm2, dword [edx + ebp + 8]
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
add edi, 1
cmp edi, ebx
jb 0x7056b0
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp]
jmp 0x705669
cvtsi2sd xmm0, ebp
movaps xmm3, xmm1
subsd xmm3, xmm0
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x705724
push eax
call fcn.006339b8
jmp 0x7044f0
movsd xmm2, qword [0xb52718]
movsd xmm0, qword [0xb52700]
movsd qword [esp + 0x78], xmm3
mov dword [esp + 8], ebp
xorps xmm4, xmm4
mov dword [esp + 0xc], edi
mov dword [esp + 0x48], eax
mov dword [esp + 4], ebx
xor edx, edx
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 dword [esp + 0x5c], edi
mov ebp, eax
sub ebp, edi
lea ecx, [ecx + edx*4]
mov dword [esp + 0x10], ecx
lea edi, [eax + ecx]
lea ebp, [ebp + edx*8]
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
mov dword [esp + 0x60], edi
neg ecx
mov dword [esp + 0x64], ecx
lea ecx, [edx + edx]
neg ecx
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]
mov dword [esp + 0xc], edi
imul edx, ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x68], edx
shl edx, 2
sub ebp, edx
mov dword [esp + 0x50], ebp
sub ecx, edx
add ecx, eax
mov dword [esp + 0x3c], ecx
neg edx
add edx, eax
xor ebp, ebp
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 8]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0xc]
push eax
mov edx, dword [esp + 0x4c]
push edx
call fcn.007b5b5c
test ebx, ebx
jne 0x705828
test ebp, ebp
jg 0x705a77
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x7059df
jmp 0x7058f8
movsd xmm5, qword [0xb52718]
subsd xmm5, qword [esp + 0x78]
movsd xmm3, qword [esp + 0xb8]
movsd xmm4, qword [0xb52700]
comisd xmm5, xmm4
movsd xmm0, qword [0xb52700]
movsd xmm2, qword [0xb52708]
subsd xmm3, xmm5
addsd xmm0, xmm3
movsd xmm6, qword [0xb52710]
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 [0xb52718]
cmpnlesd xmm6, xmm2
andps xmm6, xmm0
subsd xmm1, xmm6
cvtsd2si ebp, xmm1
cvtsi2sd xmm0, ebp
subsd xmm3, xmm0
movsd qword [esp + 0x78], xmm3
jbe 0x7058d1
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x705b16
mov eax, dword [esp + 0x9c]
add esi, eax
test ebp, ebp
jg 0x705da8
movsd xmm0, qword [esp + 0x78]
comisd xmm0, xmmword [0xb52700]
jbe 0x7058f8
mov eax, dword [esp + 0xa4]
test eax, eax
jg 0x705ba8
mov eax, dword [esp + 0x6c]
test eax, eax
jl 0x7059ac
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]
xor eax, eax
xor ecx, ecx
xorps xmm6, xmm6
mov dword [esp + 0x28], eax
add ecx, dword [esp + 0x5c]
add dword [esp + 0x28], 1
test esi, esi
jle 0x705971
mov eax, connect
imul esi
mov edi, esi
sar edi, 0x1f
add edx, esi
sub edx, edi
jne 0x705c65
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov edi, dword [esp + 0x28]
mov eax, 1
imul edi, dword [esp + 0x68]
lea edx, [eax - 1]
cmp esi, edx
ja 0x705c40
jmp 0x705983
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov edi, dword [esp + 0x28]
imul edi, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
movss dword [ebp + ecx], xmm3
movss dword [ebp + ecx + 4], xmm4
movss dword [ebp + ecx + 8], xmm5
cmp edi, eax
jle 0x70592a
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 0x705d0c
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0xac]
add edi, eax
add ebx, 1
cmp ebx, edx
jb 0x7057f9
mov eax, dword [esp + 0x48]
jmp 0x705719
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x78]
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor ecx, ecx
lea edx, [esi + eax]
xor eax, eax
mov esi, dword [esp + 0xa4]
movss xmm1, dword [eax + edx]
cvtps2pd xmm2, xmm1
add ecx, 1
mulsd xmm2, xmm0
cvtsd2ss xmm3, xmm2
addss xmm3, dword [eax + ebx]
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 0x705a03
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x7058f8
mov edx, dword [esp + 0x10]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], ebx
xor eax, eax
mov ecx, dword [esp + 0xa4]
test ecx, ecx
jg 0x705aad
mov ecx, dword [esp + 0x9c]
add esi, ecx
add eax, 1
cmp eax, ebp
jb 0x705a85
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x44]
jmp 0x705814
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor edi, edi
lea ebx, [esi + edx]
mov edx, dword [esp + 0x58]
xor ecx, ecx
mov esi, dword [esp + 0xa4]
movss xmm0, dword [ecx + edx]
addss xmm0, dword [ebx + ecx]
movss xmm1, dword [ecx + edx + 4]
movss xmm2, dword [ecx + edx + 8]
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
add edi, 1
cmp edi, esi
jb 0x705ac3
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x705a90
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
xor ecx, ecx
lea edx, [esi + eax]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor eax, eax
mov esi, dword [esp + 0xa4]
movss xmm0, dword [eax + edx]
cvtps2pd xmm1, xmm0
add ecx, 1
mulsd xmm1, xmm5
cvtsd2ss xmm2, xmm1
addss xmm2, dword [eax + ebx]
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 0x705b34
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x7058c8
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 0x78]
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor ecx, ecx
lea edx, [esi + eax]
xor eax, eax
mov esi, dword [esp + 0xa4]
movss xmm1, dword [eax + edx]
cvtps2pd xmm2, xmm1
add ecx, 1
mulsd xmm2, xmm0
cvtsd2ss xmm3, xmm2
addss xmm3, dword [eax + ebx]
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 0x705bcc
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x7058f8
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 0x705983
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x60]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
movaps xmm2, xmm6
movaps xmm1, xmm6
movaps xmm0, xmm6
mov dword [esp + 0x24], ecx
xor edi, edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x14]
imul edi, dword [esp + 0x68]
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
mov ecx, eax
xor eax, eax
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]
addss xmm2, dword [ecx + eax*4]
addss xmm1, dword [ecx + eax*4 + 4]
addss xmm0, dword [ecx + eax*4 + 8]
add eax, ebp
add esi, 1
cmp esi, edx
jb 0x705cb4
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x14], esi
addss xmm5, xmm0
addss xmm4, xmm1
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
addss xmm3, xmm2
lea eax, [eax + eax + 1]
jmp 0x705964
mov eax, dword [esp + 0x54]
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x58]
xor ecx, ecx
lea edx, [eax + edi]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor eax, eax
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov esi, dword [esp + 0xa8]
movss xmm0, dword [eax + ebx]
cvtps2pd xmm1, xmm0
add ecx, 1
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 0x705d2a
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x7059bb
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], ebx
xor ecx, ecx
lea edx, [eax + esi]
xor eax, eax
mov ebx, dword [esp + 0xa4]
test ebx, ebx
jg 0x705dec
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x9c]
add esi, ebx
add eax, edi
add ecx, 1
cmp ecx, ebp
jb 0x705dbb
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x44]
jmp 0x7058d9
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp], esi
xor edi, edi
lea ebx, [edx + eax]
mov dword [esp + 0x20], ebx
mov edx, ebx
xor ebx, ebx
mov esi, dword [esp + 0xa4]
movss xmm0, dword [ebx + ecx]
addss xmm0, dword [edx + ebx]
movss xmm1, dword [ebx + ecx + 4]
movss xmm2, dword [ebx + ecx + 8]
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
add edi, 1
cmp edi, esi
jb 0x705e10
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 8]
mov esi, dword [esp]
jmp 0x705dc6
push edi
call fcn.006339a0
test eax, eax
jne 0x705e81
mov eax, 0xfffffff7
add esp, 0x80
pop ebx
pop ebp
pop esi
pop edi
ret
mov edx, dword [esp + 0xac]
test edx, edx
jg 0x705e97
push eax
call fcn.006339b8
jmp 0x7044f0
mov ecx, dword [esp + 0xc8]
mov dword [esp], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x48], eax
mov dword [esp + 8], ebp
mov edi, ecx
mov dword [esp + 4], ebx
xor edx, edx
mov dword [esp + 0x44], edx
shl edi, 2
neg edi
lea edx, [eax + edi]
mov dword [esp + 0x40], edx
mov edx, ecx
shl edx, 2
mov dword [esp + 0x3c], edx
lea esi, [edi + ecx*4]
lea edi, [eax + esi]
add esi, dword [esp + 0x98]
xorps xmm0, xmm0
mov dword [esp + 0x58], edi
mov dword [esp + 0x38], esi
mov edi, eax
sub edi, edx
mov edx, ecx
neg edx
mov dword [esp + 0x64], edx
lea edx, [ecx + ecx]
neg edx
lea esi, [ecx + ecx]
lea edi, [edi + ecx*8]
mov dword [esp + 0x60], esi
shl esi, 2
lea edx, [esi + edx*4]
mov esi, dword [esp + 0xa4]
sub esi, ebx
imul esi, ecx
imul ecx, ebx
mov dword [esp + 0x6c], esi
mov esi, dword [esp]
mov dword [esp + 0x68], ecx
shl ecx, 2
sub edi, ecx
mov dword [esp + 0x54], edi
mov dword [esp], esi
mov esi, dword [esp + 0x38]
mov edi, eax
sub edi, ecx
sub edx, ecx
mov ecx, dword [esp + 0x9c]
imul ecx, ebp
add edx, eax
mov dword [esp + 0x5c], edi
mov dword [esp + 0x2c], edx
xor edi, edi
mov dword [esp + 0x50], edi
mov ebx, ecx
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0xc]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0xc]
push eax
mov edx, dword [esp + 0x4c]
push edx
call fcn.007b5b5c
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xc8]
sub eax, ebx
add eax, ebx
add eax, dword [esp]
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.006f77c0
add esp, 0x18
mov eax, dword [esp + 0x6c]
test eax, eax
jl 0x706058
mov esi, dword [esp + 4]
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
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x20], eax
xorps xmm6, xmm6
add dword [esp + 0x20], 1
add ecx, ebx
test esi, esi
jle 0x70601c
mov eax, connect
imul esi
mov edi, esi
sar edi, 0x1f
add edx, esi
sub edx, edi
jne 0x7060b6
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov edi, dword [esp + 0x20]
mov eax, 1
imul edi, dword [esp + 0x68]
lea edx, [eax - 1]
cmp esi, edx
ja 0x70608d
jmp 0x70602e
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
mov edi, dword [esp + 0x20]
imul edi, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
movss dword [ebp + ecx], xmm3
movss dword [ebp + ecx + 4], xmm4
movss dword [ebp + ecx + 8], xmm5
cmp edi, eax
jle 0x705fdb
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 0x70615d
add ebp, dword [esp + 0xa0]
mov eax, dword [esp + 0xac]
add edi, 1
add dword [esp + 0x50], ebx
cmp edi, eax
jb 0x705f67
mov eax, dword [esp + 0x48]
jmp 0x705e8c
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 0x70602e
mov eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x60]
movaps xmm5, xmm6
movaps xmm4, xmm6
movaps xmm3, xmm6
movaps xmm2, xmm6
movaps xmm1, xmm6
movaps xmm0, xmm6
mov dword [esp + 0x1c], ecx
xor edi, edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
imul edi, dword [esp + 0x68]
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
mov ecx, eax
xor eax, eax
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]
addss xmm2, dword [ecx + eax*4]
addss xmm1, dword [ecx + eax*4 + 4]
addss xmm0, dword [ecx + eax*4 + 8]
add eax, ebp
add esi, 1
cmp esi, edx
jb 0x706105
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x14], esi
addss xmm5, xmm0
addss xmm4, xmm1
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
addss xmm3, xmm2
lea eax, [eax + eax + 1]
jmp 0x706013
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x44], edi
xor ecx, ecx
lea edx, [esi + ebp]
mov esi, dword [esp + 0x3c]
xor eax, eax
movsd xmm2, qword [esp + 0xc0]
movsd xmm6, qword [esp + 0xc0]
mov edi, dword [esp + 0xa8]
movss xmm0, dword [ebx + eax]
cvtps2pd xmm1, xmm0
add ecx, 1
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 0x706174
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x44]
jmp 0x706067