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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x194
push ebx
push esi
push edi
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 8]
movss xmm2, dword [eax]
subss xmm2, dword [ecx]
movss xmm3, dword [eax + 4]
subss xmm3, dword [ecx + 4]
movss xmm4, dword [eax + 8]
subss xmm4, dword [ecx + 8]
mov ecx, dword [ebp + 0xc]
movss xmm5, dword [ecx + 0x20]
movss xmm6, dword [ecx]
movss xmm1, dword [ecx + 0x10]
mov edx, dword [ebp + 0x10]
movaps xmm0, xmm2
mulss xmm0, xmm6
movaps xmm7, xmm4
mulss xmm7, xmm5
addss xmm0, xmm7
lea eax, [ecx + 4]
movaps xmm7, xmm3
mulss xmm7, xmm1
addss xmm0, xmm7
movss xmm7, dword [eax + 0x10]
mulss xmm7, xmm3
movss dword [esp + 0x30], xmm0
movss xmm0, dword [eax + 0x20]
mulss xmm0, xmm4
addss xmm0, xmm7
movaps xmm7, xmm2
mulss xmm7, dword [eax]
addss xmm0, xmm7
movss xmm7, dword [ecx + 0x18]
mulss xmm7, xmm3
movss dword [esp + 0x34], xmm0
movss xmm0, dword [ecx + 0x28]
mulss xmm0, xmm4
addss xmm0, xmm7
add ecx, 8
movaps xmm7, xmm2
mulss xmm7, dword [ecx]
addss xmm0, xmm7
movss xmm7, dword [edx]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [0x565314]
mulss xmm7, xmm0
movss dword [esp + 0x70], xmm7
movss xmm7, dword [edx + 4]
mulss xmm7, xmm0
movss dword [esp + 0x74], xmm7
movss xmm7, dword [edx + 8]
mov edx, dword [ebp + 0x1c]
mulss xmm7, xmm0
movss dword [esp + 0x78], xmm7
movss xmm7, dword [edx]
mulss xmm7, xmm0
movss dword [esp + 0xc0], xmm7
movss xmm7, dword [edx + 4]
mulss xmm7, xmm0
movss dword [esp + 0xc4], xmm7
movss xmm7, dword [edx + 8]
mulss xmm7, xmm0
mov esi, dword [ebp + 0x18]
movss xmm0, dword [esi]
movss dword [esp + 0xc8], xmm7
movss xmm7, dword [esi + 0x20]
movss dword [esp + 0x1c], xmm0
mulss xmm0, xmm6
mulss xmm7, xmm5
addss xmm0, xmm7
movss xmm7, dword [esi + 0x10]
mulss xmm7, xmm1
addss xmm0, xmm7
movss dword [esp + 0x9c], xmm0
movss xmm0, dword [esi + 0x24]
lea edx, [esi + 4]
mov dword [esp + 0x24], 0
movss dword [esp + 0xb8], xmm6
mulss xmm0, xmm5
movss xmm7, dword [edx + 0x10]
mulss xmm7, xmm1
addss xmm0, xmm7
movss xmm7, dword [edx]
mulss xmm7, xmm6
addss xmm0, xmm7
movss dword [esp + 0x90], xmm0
movss xmm0, dword [esi + 0x28]
mulss xmm0, xmm5
movss xmm5, dword [esi + 0x18]
movss xmm7, dword [esi + 0x10]
mulss xmm5, xmm1
movss xmm1, dword [esi + 8]
addss xmm0, xmm5
movss xmm5, dword [eax + 0x20]
mulss xmm5, dword [esi + 0x28]
lea edi, [esi + 8]
mulss xmm1, xmm6
addss xmm0, xmm1
movss xmm6, dword [esi + 0x20]
movss xmm1, dword [eax + 0x20]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [eax + 0x10]
mulss xmm0, xmm7
mulss xmm1, xmm6
addss xmm0, xmm1
movss xmm1, dword [eax]
mulss xmm1, dword [esp + 0x1c]
addss xmm0, xmm1
movss xmm1, dword [eax + 0x20]
mulss xmm1, dword [edx + 0x20]
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [eax + 0x10]
mulss xmm0, dword [edx + 0x10]
addss xmm1, xmm0
movss xmm0, dword [edx]
mulss xmm0, dword [eax]
addss xmm1, xmm0
movss xmm0, dword [eax + 0x10]
mulss xmm0, dword [edi + 0x10]
addss xmm5, xmm0
movss xmm0, dword [eax]
mulss xmm0, dword [edi]
addss xmm5, xmm0
movss xmm0, dword [ecx + 0x10]
mulss xmm0, xmm7
movss xmm7, dword [ecx + 0x20]
mulss xmm7, xmm6
movss xmm6, dword [ecx]
mulss xmm6, dword [esp + 0x1c]
addss xmm0, xmm7
movss xmm7, dword [ecx + 0x10]
mulss xmm7, dword [edi + 0x10]
addss xmm0, xmm6
movss xmm6, dword [ecx + 0x20]
mulss xmm6, dword [edx + 0x20]
movss dword [esp + 0x8c], xmm0
movss xmm0, dword [ecx + 0x10]
mulss xmm0, dword [edx + 0x10]
addss xmm6, xmm0
movss xmm0, dword [ecx]
mulss xmm0, dword [edx]
addss xmm6, xmm0
movss xmm0, dword [ecx + 0x20]
mulss xmm0, dword [edi + 0x20]
addss xmm0, xmm7
movss xmm7, dword [ecx]
mulss xmm7, dword [edi]
addss xmm0, xmm7
movss xmm7, dword [esp + 0x9c]
movss dword [esp + 0x98], xmm0
movss xmm0, dword [0x565350]
andps xmm7, xmm0
movss dword [esp + 0xb0], xmm7
movss xmm7, dword [esp + 0x90]
andps xmm7, xmm0
movss dword [esp + 0xa8], xmm7
movss xmm7, dword [esp + 0x4c]
movss dword [esp + 0x44], xmm1
movss dword [esp + 0x48], xmm5
movss dword [esp + 0x94], xmm6
andps xmm1, xmm0
movss dword [esp + 0xb4], xmm1
movss xmm1, dword [esp + 0x8c]
andps xmm1, xmm0
movss dword [esp + 0xa0], xmm1
movss xmm1, dword [esp + 0x98]
andps xmm7, xmm0
andps xmm1, xmm0
movss dword [esp + 0x88], xmm7
movss xmm7, dword [esp + 0x6c]
movss dword [esp + 0xac], xmm1
movss xmm1, dword [0x593154]
andps xmm7, xmm0
movss dword [esp + 0x20], xmm1
movss xmm1, dword [esp + 0x88]
mulss xmm1, dword [esp + 0xc8]
movss dword [esp + 0xa4], xmm7
movss xmm7, dword [esp + 0xa8]
andps xmm5, xmm0
movss dword [esp + 0x84], xmm5
movss xmm5, dword [esp + 0xc4]
mulss xmm7, xmm5
addss xmm1, xmm7
movss xmm7, dword [esp + 0xb0]
mulss xmm7, dword [esp + 0xc0]
andps xmm6, xmm0
movss dword [esp + 0x80], xmm6
movss xmm6, dword [esp + 0x30]
addss xmm1, xmm7
addss xmm1, dword [esp + 0x70]
andps xmm6, xmm0
subss xmm6, xmm1
xorps xmm1, xmm1
comiss xmm6, xmm1
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
jbe 0x52824e
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
comiss xmm6, dword [0x593154]
jbe 0x528283
comiss xmm1, dword [esp + 0x30]
mov ebx, dword [ebp + 0xc]
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], 1
ja 0x52827b
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 1
movss xmm6, dword [esp + 0x34]
movss xmm7, dword [esp + 0xb4]
andps xmm6, xmm0
movss dword [esp + 0x18], xmm6
movss xmm6, dword [esp + 0x84]
mulss xmm6, dword [esp + 0xc8]
mulss xmm7, xmm5
movss xmm5, dword [esp + 0xa4]
mulss xmm5, dword [esp + 0xc0]
addss xmm6, xmm7
addss xmm6, xmm5
addss xmm6, dword [esp + 0x74]
movss xmm5, dword [esp + 0x18]
subss xmm5, xmm6
comiss xmm5, xmm1
ja 0x528245
comiss xmm5, dword [esp + 0x20]
jbe 0x528314
comiss xmm1, dword [esp + 0x34]
movss dword [esp + 0x20], xmm5
mov dword [esp + 0x24], eax
mov dword [esp + 0x2c], 1
ja 0x52830c
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 2
movss xmm5, dword [esp + 0x38]
movss xmm7, dword [esp + 0xac]
mulss xmm7, dword [esp + 0xc8]
movss xmm6, dword [esp + 0x78]
andps xmm5, xmm0
movss dword [esp + 0x18], xmm5
movss xmm5, dword [esp + 0x80]
mulss xmm5, dword [esp + 0xc4]
addss xmm7, xmm5
movss xmm5, dword [esp + 0xa0]
mulss xmm5, dword [esp + 0xc0]
addss xmm7, xmm5
movss xmm5, dword [esp + 0x18]
addss xmm7, xmm6
subss xmm5, xmm7
comiss xmm5, xmm1
ja 0x528245
comiss xmm5, dword [esp + 0x20]
jbe 0x5283ae
comiss xmm1, dword [esp + 0x38]
movss dword [esp + 0x20], xmm5
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], 1
ja 0x5283a6
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 3
movaps xmm5, xmm2
mulss xmm5, dword [esp + 0x1c]
movaps xmm7, xmm4
mulss xmm7, dword [esi + 0x20]
addss xmm5, xmm7
movaps xmm7, xmm3
mulss xmm7, dword [esi + 0x10]
addss xmm5, xmm7
movss xmm7, dword [esp + 0xa0]
movss dword [esp + 0x1c], xmm5
andps xmm5, xmm0
movss dword [esp + 0x18], xmm5
movss xmm5, dword [esp + 0xa4]
mulss xmm5, dword [esp + 0x74]
mulss xmm7, xmm6
addss xmm7, xmm5
movss xmm5, dword [esp + 0xb0]
mulss xmm5, dword [esp + 0x70]
addss xmm7, xmm5
addss xmm7, dword [esp + 0xc0]
movss xmm5, dword [esp + 0x18]
subss xmm5, xmm7
comiss xmm5, xmm1
ja 0x528245
comiss xmm5, dword [esp + 0x20]
jbe 0x528460
comiss xmm1, dword [esp + 0x1c]
movss dword [esp + 0x20], xmm5
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], 1
ja 0x528455
mov dword [esp + 0x2c], 0
mov ebx, 4
mov dword [esp + 0x28], ebx
jmp 0x528464
mov ebx, dword [esp + 0x28]
movss xmm5, dword [edx + 0x20]
movss xmm6, dword [edx + 0x10]
mulss xmm5, xmm4
mulss xmm6, xmm3
addss xmm5, xmm6
movaps xmm6, xmm2
mulss xmm6, dword [edx]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x80]
mulss xmm6, dword [esp + 0x78]
andps xmm5, xmm0
movss dword [esp + 0x18], xmm5
movss xmm5, dword [esp + 0xb4]
mulss xmm5, dword [esp + 0x74]
addss xmm6, xmm5
movss xmm5, dword [esp + 0xa8]
mulss xmm5, dword [esp + 0x70]
addss xmm6, xmm5
addss xmm6, dword [esp + 0xc4]
movss xmm5, dword [esp + 0x18]
subss xmm5, xmm6
comiss xmm5, xmm1
ja 0x528245
comiss xmm5, dword [esp + 0x20]
jbe 0x528533
movss xmm6, dword [edx + 0x10]
movss dword [esp + 0x20], xmm5
movss xmm5, dword [edx + 0x20]
mulss xmm6, xmm3
mulss xmm5, xmm4
addss xmm5, xmm6
movaps xmm6, xmm2
mulss xmm6, dword [edx]
addss xmm5, xmm6
comiss xmm1, xmm5
mov dword [esp + 0x24], edx
jbe 0x528526
mov ebx, 5
mov edx, 1
mov dword [esp + 0x28], ebx
jmp 0x528537
mov ebx, 5
xor edx, edx
mov dword [esp + 0x28], ebx
jmp 0x528537
mov edx, dword [esp + 0x2c]
movss xmm5, dword [edi + 0x20]
movss xmm6, dword [edi + 0x10]
movss xmm7, dword [esp + 0xac]
mulss xmm7, dword [esp + 0x78]
mulss xmm5, xmm4
mulss xmm6, xmm3
addss xmm5, xmm6
movaps xmm6, xmm2
mulss xmm6, dword [edi]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xc8]
andps xmm5, xmm0
movss dword [esp + 0x18], xmm5
movss xmm5, dword [esp + 0x84]
mulss xmm5, dword [esp + 0x74]
addss xmm7, xmm5
movss xmm5, dword [esp + 0x88]
mulss xmm5, dword [esp + 0x70]
addss xmm7, xmm5
movss xmm5, dword [esp + 0x18]
addss xmm7, xmm6
subss xmm5, xmm7
comiss xmm5, xmm1
ja 0x528245
comiss xmm5, dword [esp + 0x20]
jbe 0x5285fc
mulss xmm2, dword [edi]
movss dword [esp + 0x20], xmm5
movss xmm5, dword [edi + 0x20]
mulss xmm5, xmm4
movss xmm4, dword [edi + 0x10]
mulss xmm4, xmm3
addss xmm5, xmm4
addss xmm5, xmm2
comiss xmm1, xmm5
mov dword [esp + 0x24], edi
jbe 0x5285f1
mov edx, 1
jmp 0x5285f3
xor edx, edx
mov ebx, 6
mov dword [esp + 0x28], ebx
movss xmm5, dword [esp + 0xa8]
movss xmm4, dword [esp + 0x38]
movss xmm7, dword [esp + 0x6c]
movss xmm2, dword [esp + 0x34]
movss xmm3, dword [esp + 0x8c]
mulss xmm5, xmm6
movss xmm6, dword [esp + 0x88]
mulss xmm6, dword [esp + 0xc4]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xa0]
mulss xmm6, dword [esp + 0x74]
mulss xmm2, xmm3
addss xmm5, xmm6
movss xmm6, dword [esp + 0xa4]
mulss xmm6, dword [esp + 0x78]
mulss xmm4, xmm7
subss xmm4, xmm2
movaps xmm2, xmm4
andps xmm2, xmm0
addss xmm5, xmm6
subss xmm2, xmm5
comiss xmm2, xmm1
ja 0x528245
movss xmm6, dword [0x5652f8]
subss xmm6, xmm3
movaps xmm3, xmm6
movaps xmm5, xmm3
mulss xmm5, xmm3
movaps xmm3, xmm7
mulss xmm3, xmm7
addss xmm5, xmm3
sqrtss xmm3, xmm5
comiss xmm3, xmm1
jbe 0x528712
movss xmm5, dword [0x5652d0]
divss xmm5, xmm3
movaps xmm3, xmm5
mulss xmm3, xmm2
movaps xmm2, xmm3
mulss xmm2, dword [0x593448]
comiss xmm2, dword [esp + 0x20]
jbe 0x528712
movss dword [esp + 0x20], xmm3
xor edi, edi
comiss xmm1, xmm4
movaps xmm3, xmm5
movaps xmm2, xmm5
mulss xmm5, xmm7
mov dword [esp + 0x24], edi
mulss xmm3, xmm1
mulss xmm2, xmm6
movss dword [esp + 0x58], xmm5
jbe 0x528705
mov ebx, 7
lea edx, [edi + 1]
mov dword [esp + 0x28], ebx
jmp 0x528720
mov ebx, 7
xor edx, edx
mov dword [esp + 0x28], ebx
jmp 0x528720
movss xmm2, dword [esp + 0x54]
movss xmm3, dword [esp + 0x50]
xor edi, edi
movss xmm4, dword [esp + 0x38]
mulss xmm4, dword [esp + 0x44]
movss xmm5, dword [esp + 0x34]
mulss xmm5, dword [esp + 0x94]
movss xmm6, dword [esp + 0x88]
mulss xmm6, dword [esp + 0xc0]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xb0]
mulss xmm5, dword [esp + 0xc8]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x80]
mulss xmm6, dword [esp + 0x74]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xb4]
mulss xmm6, dword [esp + 0x78]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x94]
movss xmm7, dword [esp + 0x44]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x52883e
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x52883e
comiss xmm1, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movaps xmm3, xmm5
mulss xmm2, xmm5
mulss xmm5, xmm7
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm3, xmm1
movss dword [esp + 0x58], xmm5
jbe 0x528833
mov edx, 1
jmp 0x528835
xor edx, edx
mov ebx, 8
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x38]
mulss xmm4, dword [esp + 0x48]
movss xmm5, dword [esp + 0x34]
mulss xmm5, dword [esp + 0x98]
movss xmm6, dword [esp + 0xb0]
mulss xmm6, dword [esp + 0xc4]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xac]
mulss xmm5, dword [esp + 0x74]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x84]
mulss xmm6, dword [esp + 0x78]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xa8]
mulss xmm6, dword [esp + 0xc0]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x98]
movss xmm7, dword [esp + 0x48]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x52895c
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x52895c
comiss xmm1, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movaps xmm3, xmm5
mulss xmm2, xmm5
mulss xmm5, xmm7
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm3, xmm1
movss dword [esp + 0x58], xmm5
jbe 0x528951
mov edx, 1
jmp 0x528953
xor edx, edx
mov ebx, 9
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x30]
mulss xmm4, dword [esp + 0x8c]
movss xmm5, dword [esp + 0x38]
mulss xmm5, dword [esp + 0x9c]
movss xmm6, dword [esp + 0x84]
mulss xmm6, dword [esp + 0xc4]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xb4]
mulss xmm5, dword [esp + 0xc8]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xa0]
mulss xmm6, dword [esp + 0x70]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xb0]
mulss xmm6, dword [esp + 0x78]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x9c]
movss xmm7, dword [esp + 0x8c]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x528a83
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x528a83
comiss xmm1, dword [esp + 0x1c]
movss xmm4, dword [esp + 0x18]
movaps xmm3, xmm5
movaps xmm2, xmm5
mulss xmm4, xmm5
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm3, xmm7
mulss xmm2, xmm1
movss dword [esp + 0x58], xmm4
jbe 0x528a78
mov edx, 1
jmp 0x528a7a
xor edx, edx
mov ebx, 0xa
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x30]
mulss xmm4, dword [esp + 0x94]
movss xmm5, dword [esp + 0x38]
mulss xmm5, dword [esp + 0x90]
movss xmm6, dword [esp + 0x84]
mulss xmm6, dword [esp + 0xc0]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xa4]
mulss xmm5, dword [esp + 0xc8]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x80]
mulss xmm6, dword [esp + 0x70]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xa8]
mulss xmm6, dword [esp + 0x78]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x90]
movss xmm7, dword [esp + 0x94]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x528baa
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x528baa
comiss xmm1, dword [esp + 0x1c]
movss xmm4, dword [esp + 0x18]
movaps xmm3, xmm5
movaps xmm2, xmm5
mulss xmm4, xmm5
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm3, xmm7
mulss xmm2, xmm1
movss dword [esp + 0x58], xmm4
jbe 0x528b9f
mov edx, 1
jmp 0x528ba1
xor edx, edx
mov ebx, 0xb
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x30]
mulss xmm4, dword [esp + 0x98]
movss xmm5, dword [esp + 0x38]
mulss xmm5, dword [esp + 0x4c]
movss xmm6, dword [esp + 0xb4]
mulss xmm6, dword [esp + 0xc0]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xa4]
mulss xmm5, dword [esp + 0xc4]
addss xmm5, xmm6
movss xmm6, dword [esp + 0xac]
mulss xmm6, dword [esp + 0x70]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x88]
mulss xmm6, dword [esp + 0x78]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x4c]
movss xmm7, dword [esp + 0x98]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x528ccb
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x528ccb
comiss xmm1, dword [esp + 0x1c]
movss xmm4, dword [esp + 0x18]
movaps xmm3, xmm5
movaps xmm2, xmm5
mulss xmm4, xmm5
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm3, xmm7
mulss xmm2, xmm1
movss dword [esp + 0x58], xmm4
jbe 0x528cc0
mov edx, 1
jmp 0x528cc2
xor edx, edx
mov ebx, 0xc
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x34]
mulss xmm4, dword [esp + 0x9c]
movss xmm5, dword [esp + 0x30]
mulss xmm5, dword [esp + 0x6c]
movss xmm6, dword [esp + 0x80]
mulss xmm6, dword [esp + 0xc8]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xac]
mulss xmm5, dword [esp + 0xc4]
addss xmm6, xmm5
movss xmm5, dword [esp + 0xa4]
mulss xmm5, dword [esp + 0x70]
addss xmm6, xmm5
movss xmm5, dword [esp + 0xb0]
mulss xmm5, dword [esp + 0x74]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm6, xmm5
subss xmm4, xmm6
comiss xmm4, xmm1
ja 0x528245
movss xmm6, dword [esp + 0x9c]
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x6c]
movaps xmm7, xmm6
mulss xmm7, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm5
addss xmm7, xmm6
sqrtss xmm6, xmm7
comiss xmm6, xmm1
movss dword [esp + 0x18], xmm5
jbe 0x528dee
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x528dee
comiss xmm1, dword [esp + 0x1c]
movss xmm3, dword [esp + 0x18]
movaps xmm2, xmm5
mulss xmm2, dword [esp + 0x9c]
mulss xmm3, xmm5
mulss xmm5, xmm1
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
movss dword [esp + 0x58], xmm5
jbe 0x528de3
mov edx, 1
jmp 0x528de5
xor edx, edx
mov ebx, 0xd
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x34]
mulss xmm4, dword [esp + 0x90]
movss xmm5, dword [esp + 0x30]
mulss xmm5, dword [esp + 0x44]
movss xmm6, dword [esp + 0xa0]
mulss xmm6, dword [esp + 0xc8]
subss xmm4, xmm5
movss xmm5, dword [esp + 0xac]
mulss xmm5, dword [esp + 0xc0]
addss xmm6, xmm5
movss xmm5, dword [esp + 0xb4]
mulss xmm5, dword [esp + 0x70]
addss xmm6, xmm5
movss xmm5, dword [esp + 0xa8]
mulss xmm5, dword [esp + 0x74]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm6, xmm5
subss xmm4, xmm6
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x44]
movss xmm7, dword [esp + 0x90]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x528f0c
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movaps xmm4, xmm6
mulss xmm4, dword [0x593448]
comiss xmm4, dword [esp + 0x20]
jbe 0x528f0c
comiss xmm1, dword [esp + 0x1c]
movss xmm3, dword [esp + 0x18]
movaps xmm2, xmm5
mulss xmm3, xmm5
mulss xmm5, xmm1
movss dword [esp + 0x20], xmm6
mov dword [esp + 0x24], edi
mulss xmm2, xmm7
movss dword [esp + 0x58], xmm5
jbe 0x528f01
mov edx, 1
jmp 0x528f03
xor edx, edx
mov ebx, 0xe
mov dword [esp + 0x28], ebx
movss xmm4, dword [esp + 0x34]
movss xmm7, dword [esp + 0x4c]
movss xmm5, dword [esp + 0x30]
mulss xmm5, dword [esp + 0x48]
movss xmm6, dword [esp + 0x80]
mulss xmm6, dword [esp + 0xc0]
mulss xmm4, xmm7
subss xmm4, xmm5
movss xmm5, dword [esp + 0xa0]
mulss xmm5, dword [esp + 0xc4]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x84]
mulss xmm6, dword [esp + 0x70]
addss xmm5, xmm6
movss xmm6, dword [esp + 0x88]
mulss xmm6, dword [esp + 0x74]
movss dword [esp + 0x1c], xmm4
andps xmm4, xmm0
addss xmm5, xmm6
subss xmm4, xmm5
comiss xmm4, xmm1
ja 0x528245
movss xmm5, dword [0x5652f8]
subss xmm5, dword [esp + 0x48]
movaps xmm6, xmm5
mulss xmm6, xmm5
movss dword [esp + 0x18], xmm5
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm6, xmm5
sqrtss xmm6, xmm6
comiss xmm6, xmm1
jbe 0x529026
movss xmm5, dword [0x5652d0]
divss xmm5, xmm6
movaps xmm6, xmm5
mulss xmm6, xmm4
movss xmm4, dword [esp + 0x20]
movaps xmm7, xmm6
mulss xmm7, dword [0x593448]
comiss xmm7, xmm4
jbe 0x52902c
comiss xmm1, dword [esp + 0x1c]
movss xmm3, dword [esp + 0x18]
movaps xmm2, xmm5
mulss xmm2, dword [esp + 0x4c]
mulss xmm3, xmm5
movaps xmm4, xmm6
mulss xmm5, xmm1
jbe 0x529019
mov ebx, 0xf
mov edx, 1
mov dword [esp + 0x28], ebx
jmp 0x52905d
mov ebx, 0xf
xor edx, edx
mov dword [esp + 0x28], ebx
jmp 0x52905d
movss xmm4, dword [esp + 0x20]
cmp ebx, edi
je 0x528245
cmp dword [esp + 0x24], 0
je 0x529057
mov eax, dword [esp + 0x24]
fld dword [eax]
mov edi, dword [ebp + 0x20]
mov ecx, dword [ebp + 0xc]
fstp dword [edi]
fld dword [eax + 0x10]
fstp dword [edi + 4]
fld dword [eax + 0x20]
fstp dword [edi + 8]
jmp 0x5290d4
movss xmm5, dword [esp + 0x58]
mov edi, dword [ebp + 0x20]
movaps xmm6, xmm5
mulss xmm6, dword [ecx]
mov ecx, dword [ebp + 0xc]
movaps xmm7, xmm3
mulss xmm7, dword [esp + 0xb8]
addss xmm6, xmm7
movaps xmm7, xmm2
mulss xmm7, dword [eax]
addss xmm6, xmm7
movss dword [edi], xmm6
movss xmm6, dword [ecx + 0x18]
movss xmm7, dword [ecx + 0x14]
mulss xmm6, xmm5
mulss xmm7, xmm2
addss xmm6, xmm7
movaps xmm7, xmm3
mulss xmm7, dword [ecx + 0x10]
addss xmm6, xmm7
movss dword [edi + 4], xmm6
movss xmm6, dword [ecx + 0x28]
mulss xmm3, dword [ecx + 0x20]
mulss xmm6, xmm5
movss xmm5, dword [ecx + 0x24]
mulss xmm5, xmm2
addss xmm6, xmm5
addss xmm6, xmm3
movss dword [edi + 8], xmm6
movss xmm7, dword [0x5652f8]
test edx, edx
je 0x529105
movaps xmm2, xmm7
subss xmm2, dword [edi]
movss dword [edi], xmm2
movaps xmm2, xmm7
subss xmm2, dword [edi + 4]
movss dword [edi + 4], xmm2
movaps xmm2, xmm7
subss xmm2, dword [edi + 8]
movss dword [edi + 8], xmm2
cmp ebx, 6
mov eax, dword [ebp + 0x24]
movaps xmm2, xmm7
subss xmm2, xmm4
movss dword [esp + 0x18], xmm2
movss dword [eax], xmm2
jle 0x529412
mov eax, dword [ebp + 8]
movss xmm0, dword [eax + 4]
movss xmm6, dword [eax]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [eax + 8]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [edi + 8]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [edi + 4]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [edi]
xor eax, eax
movss dword [esp + 0x1c], xmm0
lea edx, [ecx + 0x10]
movss xmm3, dword [edx + 0x10]
movss xmm5, dword [edx - 0x10]
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x44]
movss xmm4, dword [edx]
mulss xmm2, xmm3
mulss xmm0, xmm5
addss xmm0, xmm2
movss xmm2, dword [esp + 0x48]
mulss xmm2, xmm4
addss xmm0, xmm2
comiss xmm0, xmm1
jbe 0x5291a7
movss xmm2, dword [0x5652d0]
jmp 0x5291af
movss xmm2, dword [0x565338]
movss xmm0, dword [esp + eax*4 + 0x70]
movaps xmm7, xmm0
mulss xmm7, xmm5
movaps xmm5, xmm0
mulss xmm5, xmm4
mulss xmm0, xmm3
inc eax
mulss xmm7, xmm2
mulss xmm5, xmm2
addss xmm5, dword [esp + 0x54]
mulss xmm0, xmm2
addss xmm0, dword [esp + 0x58]
add edx, 4
cmp eax, 3
addss xmm7, xmm6
movaps xmm6, xmm7
movss dword [esp + 0x54], xmm5
movss dword [esp + 0x58], xmm0
jl 0x529164
mov eax, dword [ebp + 0x14]
movss xmm0, dword [eax + 4]
movss dword [esp + 0x50], xmm6
movss xmm6, dword [eax]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 8]
movss dword [esp + 0x38], xmm0
xor eax, eax
lea edx, [esi + 0x10]
movss xmm0, dword [edx + 0x10]
movss xmm2, dword [edx - 0x10]
movss xmm5, dword [edx]
movaps xmm3, xmm0
mulss xmm3, dword [esp + 0x44]
movaps xmm4, xmm2
mulss xmm4, dword [esp + 0x1c]
addss xmm3, xmm4
movaps xmm4, xmm5
mulss xmm4, dword [esp + 0x48]
addss xmm3, xmm4
comiss xmm3, xmm1
jbe 0x529267
movss xmm4, dword [0x565338]
jmp 0x52926f
movss xmm4, dword [0x5652d0]
movss xmm3, dword [esp + eax*4 + 0xc0]
mulss xmm2, xmm3
mulss xmm2, xmm4
addss xmm2, xmm6
movaps xmm6, xmm2
movaps xmm2, xmm3
mulss xmm2, xmm5
mulss xmm0, xmm3
inc eax
mulss xmm2, xmm4
addss xmm2, dword [esp + 0x34]
mulss xmm0, xmm4
addss xmm0, dword [esp + 0x38]
add edx, 4
cmp eax, 3
movss dword [esp + 0x34], xmm2
movss dword [esp + 0x38], xmm0
jl 0x529227
mov edi, dword [esp + 0x28]
lea eax, [edi - 7]
cdq
mov ebx, 3
idiv ebx
movss dword [esp + 0x30], xmm6
movss xmm0, dword [ecx + eax*4]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [ecx + eax*4 + 0x10]
movss dword [esp + 0x74], xmm0
movss xmm0, dword [ecx + eax*4 + 0x20]
movss dword [esp + 0x78], xmm0
movss xmm0, dword [esi + edx*4]
movss dword [esp + 0xc0], xmm0
movss xmm0, dword [esi + edx*4 + 0x10]
movss dword [esp + 0xc4], xmm0
movss xmm0, dword [esi + edx*4 + 0x20]
lea ecx, [esp + 0xb8]
push ecx
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0xc8]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x64]
push eax
movss dword [esp + 0xe0], xmm0
call fcn.005276b0
movss xmm1, dword [esp + 0xd0]
movss xmm0, dword [esp + 0xd8]
mulss xmm0, xmm1
addss xmm0, dword [esp + 0x48]
mov ecx, dword [ebp + 0x38]
mov edx, dword [ecx]
mov edx, dword [edx + 8]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esp + 0xdc]
mulss xmm0, xmm1
addss xmm0, dword [esp + 0x4c]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0xe0]
mulss xmm0, xmm1
addss xmm0, dword [esp + 0x50]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x5652f8]
movaps xmm1, xmm0
subss xmm1, dword [esp + 0x34]
movss dword [esp + 0x68], xmm1
movaps xmm1, xmm0
subss xmm1, dword [esp + 0x60]
movss dword [esp + 0x6c], xmm1
add esp, 0x14
movaps xmm1, xmm0
subss xmm0, dword [esp + 0x1c]
subss xmm1, dword [esp + 0x48]
movss dword [esp], xmm0
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x58]
movss dword [esp + 0x60], xmm1
xorps xmm1, xmm1
push eax
movss dword [esp + 0x68], xmm1
call edx
mov eax, dword [ebp + 0x28]
mov dword [eax], edi
lea eax, [ebx - 2]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 3
mov edx, dword [ebp + 0x14]
jg 0x529438
mov eax, ecx
mov ecx, dword [ebp + 8]
mov dword [esp + 0x2c], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], ecx
lea edx, [esp + 0xc0]
jmp 0x529456
mov dword [esp + 0x2c], edx
mov eax, esi
lea edx, [esp + 0xc0]
mov esi, ecx
mov ecx, dword [ebp + 8]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], ecx
lea edx, [esp + 0x70]
cmp ebx, 3
mov dword [esp + 0x6c], edx
jg 0x52946f
movss xmm5, dword [edi]
movss xmm6, dword [edi + 4]
movss xmm7, dword [edi + 8]
jmp 0x529483
movaps xmm5, xmm7
subss xmm5, dword [edi]
movaps xmm6, xmm7
subss xmm6, dword [edi + 4]
subss xmm7, dword [edi + 8]
movss xmm2, dword [esi + 0x20]
movss xmm3, dword [esi + 0x10]
movss xmm4, dword [esi + 0x14]
mulss xmm3, xmm6
mulss xmm2, xmm7
addss xmm2, xmm3
mulss xmm4, xmm6
movaps xmm3, xmm5
mulss xmm3, dword [esi]
addss xmm2, xmm3
movss xmm3, dword [esi + 0x24]
mulss xmm3, xmm7
addss xmm3, xmm4
movaps xmm4, xmm5
mulss xmm4, dword [esi + 4]
addss xmm3, xmm4
movss xmm4, dword [esi + 0x28]
mulss xmm4, xmm7
movss dword [esp + 0x38], xmm7
movss xmm7, dword [esi + 0x18]
movss dword [esp + 0x30], xmm5
mulss xmm5, dword [esi + 8]
mulss xmm7, xmm6
addss xmm4, xmm7
movss dword [esp + 0x50], xmm2
movss dword [esp + 0x54], xmm3
addss xmm4, xmm5
andps xmm2, xmm0
andps xmm3, xmm0
comiss xmm3, xmm2
movss dword [esp + 0x58], xmm4
movss dword [esp + 0x34], xmm6
andps xmm4, xmm0
jbe 0x529526
xor edi, edi
comiss xmm3, xmm4
jbe 0x529537
lea ecx, [edi + 1]
lea ebx, [edi + 2]
jmp 0x52953f
comiss xmm2, xmm4
jbe 0x529535
xor ecx, ecx
lea edi, [ecx + 1]
lea ebx, [ecx + 2]
jmp 0x52953f
xor edi, edi
mov ecx, 2
lea ebx, [ecx - 1]
comiss xmm1, dword [esp + ecx*4 + 0x50]
movss xmm2, dword [edx + ecx*4]
mov edx, dword [esp + 0x24]
jbe 0x5295a6
movss xmm1, dword [edx]
mov edx, dword [esp + 0x2c]
subss xmm1, dword [edx]
movss xmm0, dword [esi + ecx*4]
mov edx, dword [esp + 0x24]
movss xmm4, dword [esi + ecx*4 + 0x20]
movss xmm3, dword [edx + 4]
mov edx, dword [esp + 0x2c]
subss xmm3, dword [edx + 4]
mulss xmm0, xmm2
addss xmm0, xmm1
movss xmm1, dword [esi + ecx*4 + 0x10]
mov ecx, dword [esp + 0x24]
mulss xmm1, xmm2
mulss xmm4, xmm2
movss xmm2, dword [ecx + 8]
subss xmm2, dword [edx + 8]
addss xmm1, xmm3
addss xmm4, xmm2
jmp 0x5295ff
movss xmm0, dword [edx]
mov edx, dword [esp + 0x2c]
subss xmm0, dword [edx]
movss xmm1, dword [esi + ecx*4]
mov edx, dword [esp + 0x24]
movss xmm3, dword [esi + ecx*4 + 0x10]
mulss xmm1, xmm2
subss xmm0, xmm1
movss xmm1, dword [edx + 4]
mov edx, dword [esp + 0x2c]
subss xmm1, dword [edx + 4]
mov edx, dword [esp + 0x24]
movss xmm4, dword [edx + 8]
mov edx, dword [esp + 0x2c]
subss xmm4, dword [edx + 8]
mulss xmm3, xmm2
subss xmm1, xmm3
movss xmm3, dword [esi + ecx*4 + 0x20]
mulss xmm3, xmm2
subss xmm4, xmm3
mov ecx, dword [esp + 0x28]
cmp ecx, 3
movss dword [esp + 0x58], xmm4
movss dword [esp + 0x54], xmm1
movss dword [esp + 0x50], xmm0
jg 0x52961d
dec ecx
jmp 0x529620
add ecx, 0xfffffffc
mov dword [esp + 0x94], ecx
mov edx, 2
test ecx, ecx
jne 0x529635
lea ecx, [edx - 1]
jmp 0x529641
cmp ecx, 1
je 0x52963f
mov edx, 1
xor ecx, ecx
movss xmm2, dword [eax + ecx*4 + 0x10]
movss xmm3, dword [eax + ecx*4 + 0x20]
mulss xmm2, xmm1
mulss xmm3, xmm4
movss xmm5, dword [eax + edx*4 + 0x10]
mulss xmm5, dword [esi + edi*4 + 0x10]
addss xmm2, xmm3
movaps xmm3, xmm0
mulss xmm3, dword [eax + ecx*4]
mulss xmm0, dword [eax + edx*4]
movss xmm6, dword [eax + edx*4 + 0x10]
mulss xmm6, dword [esi + ebx*4 + 0x10]
addss xmm2, xmm3
movss xmm3, dword [eax + edx*4 + 0x10]
mulss xmm3, xmm1
movss xmm1, dword [eax + edx*4 + 0x20]
mulss xmm1, xmm4
movss xmm4, dword [eax + ecx*4 + 0x20]
mulss xmm4, dword [esi + ebx*4 + 0x20]
addss xmm3, xmm1
movss xmm1, dword [eax + ecx*4 + 0x10]
mulss xmm1, dword [esi + edi*4 + 0x10]
addss xmm3, xmm0
movss xmm0, dword [eax + ecx*4 + 0x20]
mulss xmm0, dword [esi + edi*4 + 0x20]
addss xmm0, xmm1
movss xmm1, dword [eax + ecx*4]
mulss xmm1, dword [esi + edi*4]
addss xmm0, xmm1
movss xmm1, dword [eax + ecx*4 + 0x10]
mulss xmm1, dword [esi + ebx*4 + 0x10]
addss xmm4, xmm1
movss xmm1, dword [eax + ecx*4]
mulss xmm1, dword [esi + ebx*4]
addss xmm4, xmm1
movss xmm1, dword [eax + edx*4 + 0x20]
mulss xmm1, dword [esi + edi*4 + 0x20]
addss xmm1, xmm5
movss xmm5, dword [eax + edx*4]
mulss xmm5, dword [esi + edi*4]
addss xmm1, xmm5
movss xmm5, dword [eax + edx*4 + 0x20]
mulss xmm5, dword [esi + ebx*4 + 0x20]
addss xmm5, xmm6
movss xmm6, dword [esi + ebx*4]
mulss xmm6, dword [eax + edx*4]
mov eax, dword [esp + 0x6c]
addss xmm5, xmm6
movss xmm6, dword [eax + edi*4]
movss dword [esp + 0x18], xmm0
mulss xmm0, xmm6
movss dword [esp + 0x48], xmm1
mulss xmm1, xmm6
movss xmm6, dword [eax + ebx*4]
movss dword [esp + 0x8c], xmm4
mulss xmm4, xmm6
movss dword [esp + 0x44], xmm5
mulss xmm5, xmm6
movaps xmm6, xmm2
subss xmm6, xmm0
movaps xmm7, xmm6
subss xmm7, xmm4
movss dword [esp + 0xe0], xmm7
movaps xmm7, xmm3
subss xmm7, xmm1
movss dword [esp + 0xb8], xmm7
subss xmm7, xmm5
movss dword [esp + 0xe4], xmm7
movaps xmm7, xmm4
addss xmm7, xmm6
movaps xmm6, xmm5
addss xmm6, dword [esp + 0xb8]
movss dword [esp + 0xec], xmm6
movaps xmm6, xmm4
addss xmm6, xmm0
addss xmm6, xmm2
movss dword [esp + 0xf0], xmm6
movss dword [esp + 0x90], xmm2
movss dword [esp + 0x98], xmm3
movss dword [esp + 0xe8], xmm7
movaps xmm6, xmm5
mov eax, dword [esp + 0x1c]
addss xmm0, xmm2
subss xmm0, xmm4
movss dword [esp + 0xf8], xmm0
movss xmm0, dword [eax + ecx*4]
movss dword [esp + 0xb8], xmm0
movss xmm0, dword [eax + edx*4]
lea eax, [esp + 0x100]
addss xmm6, xmm1
push eax
lea ecx, [esp + 0xbc]
addss xmm1, xmm3
push ecx
addss xmm6, xmm3
subss xmm1, xmm5
lea ecx, [esp + 0xe8]
movss dword [esp + 0xfc], xmm6
movss dword [esp + 0x104], xmm1
movss dword [esp + 0xc4], xmm0
call fcn.005277f0
mov ecx, eax
add esp, 8
xor eax, eax
cmp ecx, 1
mov dword [esp + 0x80], ecx
jl 0x529cfa
cmp ecx, eax
movss xmm4, dword [esp + 0x44]
movss xmm3, dword [esp + 0x48]
movss xmm1, dword [esp + 0x18]
movss xmm2, dword [esp + 0x8c]
movaps xmm5, xmm4
mulss xmm5, xmm1
movaps xmm0, xmm3
mulss xmm0, xmm2
subss xmm5, xmm0
movss xmm0, dword [0x5652d0]
divss xmm0, xmm5
movaps xmm5, xmm0
movaps xmm6, xmm0
movaps xmm7, xmm0
mulss xmm7, xmm3
mulss xmm0, xmm4
mulss xmm5, xmm1
mulss xmm6, xmm2
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x44], xmm0
jle 0x528245
movss xmm0, dword [esi + ebx*4]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x94]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [esi + edi*4]
movss dword [esp + 0xb8], xmm0
movss xmm0, dword [esi + ebx*4 + 0x10]
movss dword [esp + 0x8c], xmm0
movss xmm0, dword [esi + edi*4 + 0x10]
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esi + ebx*4 + 0x20]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esi + edi*4 + 0x20]
movss dword [esp + 0x88], xmm0
movss xmm0, dword [ecx + edx*4]
lea esi, [esp + 0x144]
movss dword [esp + 0x1c], xmm0
mov edx, esi
mov ecx, eax
jmp 0x529956
movss xmm7, dword [esp + 0x48]
movss xmm3, dword [esp + eax*8 + 0x104]
subss xmm3, dword [esp + 0x98]
lea edi, [esp + 0x100]
movss xmm4, dword [edi + eax*8]
movaps xmm2, xmm4
subss xmm2, dword [esp + 0x90]
movaps xmm0, xmm2
mulss xmm0, dword [esp + 0x44]
mulss xmm2, xmm7
movaps xmm1, xmm6
mulss xmm1, xmm3
subss xmm0, xmm1
movaps xmm1, xmm5
mulss xmm1, xmm3
subss xmm1, xmm2
movaps xmm2, xmm0
mulss xmm2, dword [esp + 0xb8]
movaps xmm3, xmm1
mulss xmm3, dword [esp + 0x18]
addss xmm2, xmm3
addss xmm2, dword [esp + 0x50]
movss dword [edx - 4], xmm2
movaps xmm2, xmm0
mulss xmm0, dword [esp + 0x88]
mulss xmm2, dword [esp + 0x6c]
movaps xmm3, xmm1
mulss xmm1, dword [esp + 0x84]
mulss xmm3, dword [esp + 0x8c]
addss xmm0, xmm1
addss xmm0, dword [esp + 0x58]
movss dword [edx + 4], xmm0
addss xmm2, xmm3
addss xmm2, dword [esp + 0x54]
movss dword [edx], xmm2
movss xmm1, dword [esi + 4]
mulss xmm1, dword [esp + 0x38]
movss xmm0, dword [esi - 4]
mulss xmm0, dword [esp + 0x30]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x34]
mulss xmm0, dword [esi]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x1c]
subss xmm0, xmm1
comiss xmm0, dword [0x565320]
movss dword [esp + ecx*4 + 0xe0], xmm0
jb 0x529a69
movss dword [edi + ecx*8], xmm4
fld dword [esp + eax*8 + 0x104]
fstp dword [esp + ecx*8 + 0x104]
inc ecx
add edx, 0xc
add esi, 0xc
inc eax
cmp eax, dword [esp + 0x80]
jl 0x529950
cmp ecx, 1
mov dword [esp + 0x4c], ecx
jl 0x528245
mov edi, dword [ebp + 0x2c]
cmp edi, ecx
jle 0x529a90
mov edi, ecx
mov dword [ebp + 0x2c], edi
cmp edi, 1
jge 0x529a9d
mov edi, 1
mov dword [ebp + 0x2c], edi
cmp ecx, edi
jg 0x529b6a
xor edi, edi
test ecx, ecx
jle 0x529ced
mov ebx, dword [esp + 0x2c]
lea esi, [esp + 0x144]
movss xmm0, dword [esi - 4]
addss xmm0, dword [ebx]
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x38]
mov edx, dword [ecx]
mov edx, dword [edx + 8]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [ebx + 4]
addss xmm0, dword [esi]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esi + 4]
addss xmm0, dword [ebx + 8]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [0x5652f8]
movaps xmm1, xmm0
subss xmm1, dword [eax]
movss dword [esp + 0x50], xmm1
movaps xmm1, xmm0
subss xmm1, dword [eax + 4]
movss dword [esp + 0x54], xmm1
movaps xmm1, xmm0
subss xmm1, dword [eax + 8]
subss xmm0, dword [esp + edi*4 + 0xe0]
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x58]
movss dword [esp + 0x60], xmm1
xorps xmm1, xmm1
push eax
movss dword [esp + 0x68], xmm1
call edx
inc edi
add esi, 0xc
cmp edi, dword [esp + 0x4c]
jl 0x529aba
mov ecx, dword [ebp + 0x28]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x4c]
mov dword [ecx], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movss xmm0, dword [esp + 0xe0]
xor edx, edx
lea esi, [ecx - 1]
cmp esi, 4
lea eax, [edx + 1]
jl 0x529be6
lea esi, [ecx - 3]
jmp 0x529b90
movss xmm1, dword [esp + eax*4 + 0xe0]
comiss xmm1, xmm0
jbe 0x529ba3
movaps xmm0, xmm1
mov edx, eax
movss xmm1, dword [esp + eax*4 + 0xe4]
comiss xmm1, xmm0
jbe 0x529bb7
movaps xmm0, xmm1
lea edx, [eax + 1]
movss xmm1, dword [esp + eax*4 + 0xe8]
comiss xmm1, xmm0
jbe 0x529bcb
movaps xmm0, xmm1
lea edx, [eax + 2]
movss xmm1, dword [esp + eax*4 + 0xec]
comiss xmm1, xmm0
jbe 0x529bdf
movaps xmm0, xmm1
lea edx, [eax + 3]
add eax, 4
cmp eax, esi
jl 0x529b90
cmp eax, ecx
jge 0x529c08
lea ebx, [ebx]
movss xmm1, dword [esp + eax*4 + 0xe0]
comiss xmm1, xmm0
jbe 0x529c03
movaps xmm0, xmm1
mov edx, eax
inc eax
cmp eax, ecx
jl 0x529bf0
lea eax, [esp + 0xc0]
push eax
push edx
push edi
lea edx, [esp + 0x10c]
push edx
push ecx
call fcn.005279c0
add esp, 0x14
xor esi, esi
test edi, edi
jle 0x529ce6
mov edi, dword [esp + 0x2c]
mov ebx, dword [ebp + 0x20]
mov ecx, dword [esp + esi*4 + 0xc0]
lea eax, [ecx + ecx*2]
add eax, eax
add eax, eax
movss xmm0, dword [esp + eax + 0x140]
addss xmm0, dword [edi]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + eax + 0x144]
addss xmm0, dword [edi + 4]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esp + eax + 0x148]
addss xmm0, dword [edi + 8]
mov eax, dword [ebp + 0x38]
mov edx, dword [eax]
mov edx, dword [edx + 8]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [0x5652f8]
movaps xmm1, xmm0
subss xmm1, dword [ebx]
movss dword [esp + 0x50], xmm1
movaps xmm1, xmm0
subss xmm1, dword [ebx + 4]
push ecx
movss dword [esp + 0x58], xmm1
movaps xmm1, xmm0
subss xmm0, dword [esp + ecx*4 + 0xe4]
subss xmm1, dword [ebx + 8]
movss dword [esp], xmm0
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x58]
movss dword [esp + 0x60], xmm1
xorps xmm1, xmm1
push ecx
mov ecx, eax
movss dword [esp + 0x68], xmm1
call edx
inc esi
cmp esi, dword [ebp + 0x2c]
jl 0x529c34
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x4c], eax
mov ecx, dword [ebp + 0x28]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x4c]
mov dword [ecx], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret