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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x84
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
xorps xmm7, xmm7
movss xmm2, dword [edx]
movss xmm6, dword [eax]
movss xmm4, dword [edx + 4]
movss xmm3, dword [edx + 8]
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
movss xmm0, dword [edi]
movss xmm1, dword [edi + 4]
movss xmm5, dword [edi + 8]
subss xmm2, xmm0
subss xmm4, xmm1
subss xmm0, xmm6
movss dword [esp + 0x70], xmm0
movss xmm0, dword [eax + 4]
subss xmm1, xmm0
movss dword [esp + 0x74], xmm1
movss xmm1, dword [eax + 8]
movss dword [esp + 0x6c], xmm7
movss dword [esp + 0x7c], xmm7
movss xmm7, dword [edx]
subss xmm6, xmm7
movss xmm7, dword [esp + 0x70]
subss xmm3, xmm5
subss xmm5, xmm1
movss dword [esp + 0x80], xmm6
movss xmm6, dword [edx + 4]
subss xmm0, xmm6
xorps xmm6, xmm6
movss dword [esp + 0x84], xmm0
movss xmm0, dword [edx + 8]
subss xmm1, xmm0
movss dword [esp + 0x88], xmm1
movaps xmm1, xmm3
mulss xmm1, dword [esp + 0x74]
movaps xmm0, xmm5
mulss xmm0, xmm4
subss xmm0, xmm1
movss dword [esp + 0x68], xmm3
mulss xmm3, xmm7
movaps xmm1, xmm5
mulss xmm1, xmm2
subss xmm3, xmm1
movss xmm1, dword [esp + 0x74]
mulss xmm1, xmm2
mulss xmm7, xmm4
movss dword [esp + 0x60], xmm2
movss dword [esp + 0x64], xmm4
subss xmm1, xmm7
movaps xmm4, xmm1
mulss xmm4, xmm1
movaps xmm2, xmm3
mulss xmm2, xmm3
addss xmm4, xmm2
movaps xmm2, xmm0
mulss xmm2, xmm0
addss xmm4, xmm2
comiss xmm4, xmm6
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], eax
movss dword [esp + 0x78], xmm5
movss dword [esp + 0x8c], xmm6
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x44], xmm3
movss dword [esp + 0x48], xmm1
movss dword [esp + 0x20], xmm4
jbe 0x520f38
movss xmm2, dword [0x565338]
mov ebx, dword [ebp + 0x14]
lea ecx, [esp + 0x64]
movss dword [esp + 0x14], xmm2
mov dword [esp + 0x1c], 1
mov dword [esp + 0x18], ecx
xor esi, esi
movss xmm7, dword [ecx]
movss xmm6, dword [ecx + 4]
mov eax, dword [esp + esi + 0x34]
movaps xmm2, xmm1
mulss xmm2, xmm7
movaps xmm7, xmm3
mulss xmm7, xmm6
subss xmm2, xmm7
movss xmm7, dword [ecx - 4]
movss dword [esp + 0x50], xmm2
movaps xmm2, xmm0
mulss xmm2, xmm6
movaps xmm6, xmm1
mulss xmm6, xmm7
subss xmm2, xmm6
movaps xmm6, xmm3
mulss xmm6, xmm7
movss dword [esp + 0x24], xmm6
movss xmm6, dword [ecx]
movaps xmm7, xmm0
mulss xmm7, xmm6
movss xmm6, dword [esp + 0x24]
subss xmm6, xmm7
movss xmm7, dword [eax + 8]
mulss xmm7, xmm6
movss xmm6, dword [eax + 4]
mulss xmm6, xmm2
movss xmm2, dword [eax]
mulss xmm2, dword [esp + 0x50]
addss xmm7, xmm6
addss xmm7, xmm2
xorps xmm2, xmm2
comiss xmm7, xmm2
jbe 0x520d61
mov edi, dword [esi + 0x5933f4]
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [esp + edi*4 + 0x38]
lea edx, [esp + 0x30]
push edx
push ecx
push eax
call fcn.00520930
fstp dword [esp + 0x34]
xorps xmm2, xmm2
movss xmm6, dword [esp + 0x24]
movss xmm0, dword [esp + 0x34]
add esp, 0x10
comiss xmm2, xmm6
ja 0x520cdf
comiss xmm6, xmm0
jbe 0x520d37
mov cl, byte [esp + 0x28]
mov dl, cl
and dl, 1
movzx eax, dl
neg eax
sbb eax, eax
and eax, dword [esp + 0x1c]
movaps xmm6, xmm0
movss dword [esp + 0x14], xmm6
test cl, 2
je 0x520d0c
mov edx, 1
mov ecx, edi
shl edx, cl
jmp 0x520d0e
xor edx, edx
movss xmm0, dword [esp + 0x2c]
add edx, eax
mov eax, dword [ebp + 0x18]
mov dword [eax], edx
movss dword [esi + ebx], xmm0
movss xmm0, dword [esp + 0x30]
movss dword [ebx + edi*4], xmm0
mov ecx, dword [edi*4 + 0x5933f4]
movss dword [ebx + ecx*4], xmm2
movss xmm0, dword [esp + 0x40]
movss xmm5, dword [esp + 0x78]
movss xmm3, dword [esp + 0x44]
movss xmm1, dword [esp + 0x48]
movss xmm4, dword [esp + 0x20]
mov edx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
jmp 0x520d67
movss xmm6, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
add ecx, 0x10
add esi, 4
rol eax, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
cmp esi, 0xc
jb 0x520c16
comiss xmm2, xmm6
jbe 0x520f2d
movss xmm6, dword [edx + 4]
mov ecx, dword [ebp + 0x18]
sqrtss xmm2, xmm4
movss dword [esp + 0x28], xmm2
movss xmm2, dword [edx]
mulss xmm2, xmm0
mulss xmm6, xmm3
addss xmm2, xmm6
movaps xmm6, xmm1
mulss xmm6, dword [edx + 8]
addss xmm2, xmm6
divss xmm2, xmm4
mulss xmm0, xmm2
mulss xmm3, xmm2
mulss xmm1, xmm2
mov eax, dword [ebp + 0x10]
movaps xmm2, xmm1
mulss xmm2, xmm1
movaps xmm4, xmm3
mulss xmm4, xmm3
addss xmm2, xmm4
movaps xmm4, xmm0
mulss xmm4, xmm0
addss xmm2, xmm4
movss dword [esp + 0x14], xmm2
mov dword [ecx], 7
movss xmm2, dword [edi]
movss xmm4, dword [edi + 8]
subss xmm2, xmm0
movss dword [esp + 0x40], xmm2
movss xmm2, dword [edi + 4]
subss xmm2, xmm3
movaps xmm7, xmm2
mulss xmm7, xmm5
mulss xmm5, dword [esp + 0x40]
subss xmm4, xmm1
movaps xmm6, xmm4
mulss xmm6, dword [esp + 0x74]
subss xmm6, xmm7
movss xmm7, dword [esp + 0x70]
mulss xmm2, xmm7
mulss xmm4, xmm7
subss xmm5, xmm4
movss xmm4, dword [esp + 0x74]
mulss xmm4, dword [esp + 0x40]
subss xmm2, xmm4
movss xmm4, dword [0x5652d0]
divss xmm4, dword [esp + 0x28]
movaps xmm7, xmm2
mulss xmm7, xmm2
movaps xmm2, xmm5
mulss xmm2, xmm5
addss xmm7, xmm2
movaps xmm2, xmm6
mulss xmm2, xmm6
addss xmm7, xmm2
sqrtss xmm5, xmm7
mulss xmm5, xmm4
movss dword [ebx], xmm5
movss xmm6, dword [eax]
movss xmm2, dword [eax + 8]
subss xmm6, xmm0
movss xmm0, dword [eax + 4]
subss xmm2, xmm1
subss xmm0, xmm3
movss xmm3, dword [esp + 0x88]
movaps xmm1, xmm2
mulss xmm1, dword [esp + 0x84]
movaps xmm7, xmm0
mulss xmm7, xmm3
subss xmm1, xmm7
movss xmm7, dword [esp + 0x80]
mulss xmm2, xmm7
mulss xmm3, xmm6
subss xmm3, xmm2
movss xmm2, dword [esp + 0x84]
mulss xmm2, xmm6
mulss xmm0, xmm7
subss xmm0, xmm2
movaps xmm2, xmm0
mulss xmm2, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm3
addss xmm2, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm1
movss xmm1, dword [0x5652d0]
addss xmm2, xmm0
sqrtss xmm0, xmm2
mulss xmm0, xmm4
movss dword [ebx + 4], xmm0
addss xmm0, xmm5
subss xmm1, xmm0
movss dword [ebx + 8], xmm1
fld dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fld dword [0x565338]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret