// File: /workspace/github_c_makefile_star2_O2/AlexCharlton[P]Hyperscene/hypermath/src/hypermath.c
// Function: hpmInverse
void hpmInverse(const float *mat, float *result){
    HPMmat4 *m = (HPMmat4 *) mat;
    HPMmat4 inv;
    float det;
    int i;

    inv._11 = m->_22  * m->_33 * m->_44 - 
        m->_22  * m->_34 * m->_43 - 
        m->_32  * m->_23  * m->_44 + 
        m->_32  * m->_24  * m->_43 +
        m->_42 * m->_23  * m->_34 - 
        m->_42 * m->_24  * m->_33;

    inv._21 = -m->_21  * m->_33 * m->_44 + 
        m->_21  * m->_34 * m->_43 + 
        m->_31  * m->_23  * m->_44 - 
        m->_31  * m->_24  * m->_43 - 
        m->_41 * m->_23  * m->_34 + 
        m->_41 * m->_24  * m->_33;

    inv._31 = m->_21  * m->_32 * m->_44 - 
        m->_21  * m->_34 * m->_42 - 
        m->_31  * m->_22 * m->_44 + 
        m->_31  * m->_24 * m->_42 + 
        m->_41 * m->_22 * m->_34 - 
        m->_41 * m->_24 * m->_32;

    inv._41 = -m->_21  * m->_32 * m->_43 + 
        m->_21  * m->_33 * m->_42 +
        m->_31  * m->_22 * m->_43 - 
        m->_31  * m->_23 * m->_42 - 
        m->_41 * m->_22 * m->_33 + 
        m->_41 * m->_23 * m->_32;

    inv._12 = -m->_12  * m->_33 * m->_44 + 
        m->_12  * m->_34 * m->_43 + 
        m->_32  * m->_13 * m->_44 - 
        m->_32  * m->_14 * m->_43 - 
        m->_42 * m->_13 * m->_34 + 
        m->_42 * m->_14 * m->_33;

    inv._22 = m->_11  * m->_33 * m->_44 - 
        m->_11  * m->_34 * m->_43 - 
        m->_31  * m->_13 * m->_44 + 
        m->_31  * m->_14 * m->_43 + 
        m->_41 * m->_13 * m->_34 - 
        m->_41 * m->_14 * m->_33;

    inv._32 = -m->_11  * m->_32 * m->_44 + 
        m->_11  * m->_34 * m->_42 + 
        m->_31  * m->_12 * m->_44 - 
        m->_31  * m->_14 * m->_42 - 
        m->_41 * m->_12 * m->_34 + 
        m->_41 * m->_14 * m->_32;

    inv._42 = m->_11  * m->_32 * m->_43 - 
        m->_11  * m->_33 * m->_42 - 
        m->_31  * m->_12 * m->_43 + 
        m->_31  * m->_13 * m->_42 + 
        m->_41 * m->_12 * m->_33 - 
        m->_41 * m->_13 * m->_32;

    inv._13 = m->_12  * m->_23 * m->_44 - 
        m->_12  * m->_24 * m->_43 - 
        m->_22  * m->_13 * m->_44 + 
        m->_22  * m->_14 * m->_43 + 
        m->_42 * m->_13 * m->_24 - 
        m->_42 * m->_14 * m->_23;

    inv._23 = -m->_11  * m->_23 * m->_44 + 
        m->_11  * m->_24 * m->_43 + 
        m->_21  * m->_13 * m->_44 - 
        m->_21  * m->_14 * m->_43 - 
        m->_41 * m->_13 * m->_24 + 
        m->_41 * m->_14 * m->_23;

    inv._33 = m->_11  * m->_22 * m->_44 - 
        m->_11  * m->_24 * m->_42 - 
        m->_21  * m->_12 * m->_44 + 
        m->_21  * m->_14 * m->_42 + 
        m->_41 * m->_12 * m->_24 - 
        m->_41 * m->_14 * m->_22;

    inv._43 = -m->_11  * m->_22 * m->_43 + 
        m->_11  * m->_23 * m->_42 + 
        m->_21  * m->_12 * m->_43 - 
        m->_21  * m->_13 * m->_42 - 
        m->_41 * m->_12 * m->_23 + 
        m->_41 * m->_13 * m->_22;

    inv._14 = -m->_12 * m->_23 * m->_34 + 
        m->_12 * m->_24 * m->_33 + 
        m->_22 * m->_13 * m->_34 - 
        m->_22 * m->_14 * m->_33 - 
        m->_32 * m->_13 * m->_24 + 
        m->_32 * m->_14 * m->_23;

    inv._24 = m->_11 * m->_23 * m->_34 - 
        m->_11 * m->_24 * m->_33 - 
        m->_21 * m->_13 * m->_34 + 
        m->_21 * m->_14 * m->_33 + 
        m->_31 * m->_13 * m->_24 - 
        m->_31 * m->_14 * m->_23;

    inv._34 = -m->_11 * m->_22 * m->_34 + 
        m->_11 * m->_24 * m->_32 + 
        m->_21 * m->_12 * m->_34 - 
        m->_21 * m->_14 * m->_32 - 
        m->_31 * m->_12 * m->_24 + 
        m->_31 * m->_14 * m->_22;

    inv._44 = m->_11 * m->_22 * m->_33 - 
        m->_11 * m->_23 * m->_32 - 
        m->_21 * m->_12 * m->_33 + 
        m->_21 * m->_13 * m->_32 + 
        m->_31 * m->_12 * m->_23 - 
        m->_31 * m->_13 * m->_22;

    det = m->_11 * inv._11 + m->_12 * inv._21 + m->_13 * inv._31 + m->_14 * inv._41;
    det = 1.0 / det;

    float *in = (float *) &inv;

    if (det == 0){
        for (i = 0; i < 16; i++)
            result[i] = 0;
    } else {
        for (i = 0; i < 16; i++)
            result[i] = in[i] * det;
    }
}

// Assembly:
subq $0x188, %rsp            # imm = 0x188
movss 0x14(%rdi), %xmm12
movss 0x18(%rdi), %xmm1
movaps %xmm1, (%rsp)
movss 0x24(%rdi), %xmm9
movss 0x34(%rdi), %xmm15
movaps 0x4008(%rip), %xmm8     # 0xa040
movss 0x4(%rdi), %xmm0
movss 0x8(%rdi), %xmm6
movaps %xmm12, %xmm4
unpcklps %xmm0, %xmm4            # xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]
movaps %xmm0, %xmm13
movaps %xmm0, -0x50(%rsp)
movaps %xmm4, %xmm2
xorps %xmm8, %xmm2
movaps %xmm2, %xmm10
movaps %xmm1, %xmm3
unpcklps %xmm6, %xmm3            # xmm3 = xmm3[0],xmm6[0],xmm3[1],xmm6[1]
movaps %xmm6, %xmm11
movaps %xmm6, 0x20(%rsp)
movaps %xmm3, %xmm7
xorps %xmm8, %xmm7
movss 0x28(%rdi), %xmm0
movaps %xmm0, %xmm6
movaps %xmm0, 0x10(%rsp)
unpcklps %xmm1, %xmm6            # xmm6 = xmm6[0],xmm1[0],xmm6[1],xmm1[1]
movlhps %xmm6, %xmm4            # xmm4 = xmm4[0],xmm6[0]
movaps %xmm6, %xmm2
shufps $0x4, %xmm13, %xmm2     # xmm2 = xmm2[0,1],xmm13[0,0]
movaps %xmm6, %xmm1
movaps %xmm10, -0x70(%rsp)
shufps $0x54, %xmm10, %xmm1    # xmm1 = xmm1[0,1],xmm10[1,1]
mulps %xmm4, %xmm1
movss 0x38(%rdi), %xmm4
unpcklps %xmm0, %xmm4            # xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]
shufps $0x40, %xmm4, %xmm4     # xmm4 = xmm4[0,0,0,1]
movsd %xmm10, %xmm2           # xmm2 = xmm10[0],xmm2[1]
mulps %xmm4, %xmm2
movaps %xmm4, %xmm0
movaps %xmm4, 0x110(%rsp)
movaps %xmm9, %xmm4
movlhps %xmm15, %xmm4           # xmm4 = xmm4[0],xmm15[0]
shufps $0x24, %xmm4, %xmm3     # xmm3 = xmm3[0,1],xmm4[2,0]
movaps %xmm15, %xmm4
shufps $0x50, %xmm7, %xmm4     # xmm4 = xmm4[0,0],xmm7[1,1]
mulps %xmm3, %xmm4
movss 0x2c(%rdi), %xmm3
movss 0x3c(%rdi), %xmm5
unpcklps %xmm3, %xmm5            # xmm5 = xmm5[0],xmm3[0],xmm5[1],xmm3[1]
movaps %xmm3, -0x20(%rsp)
shufps $0x40, %xmm5, %xmm5     # xmm5 = xmm5[0,0,0,1]
movaps %xmm5, %xmm10
movaps %xmm5, -0x10(%rsp)
movsd 0x1c(%rdi), %xmm5
unpcklps %xmm5, %xmm3            # xmm3 = xmm3[0],xmm5[0],xmm3[1],xmm5[1]
movlhps %xmm3, %xmm3            # xmm3 = xmm3[0,0]
mulps %xmm3, %xmm2
mulps %xmm10, %xmm1
addps %xmm2, %xmm1
movaps %xmm9, %xmm14
unpcklps %xmm12, %xmm14          # xmm14 = xmm14[0],xmm12[0],xmm14[1],xmm12[1]
movlhps %xmm14, %xmm14          # xmm14 = xmm14[0,0]
movaps %xmm14, 0x130(%rsp)
movaps %xmm7, %xmm2
shufps $0x4, %xmm11, %xmm2     # xmm2 = xmm2[0,1],xmm11[0,0]
mulps %xmm14, %xmm2
mulps %xmm10, %xmm2
addps %xmm1, %xmm2
mulps %xmm4, %xmm3
addps %xmm2, %xmm3
movss 0xc(%rdi), %xmm2
movaps %xmm2, %xmm1
movaps %xmm2, %xmm11
movaps %xmm2, -0x30(%rsp)
movlhps %xmm5, %xmm1            # xmm1 = xmm1[0],xmm5[0]
movaps %xmm1, %xmm2
shufps $0xe2, %xmm5, %xmm2     # xmm2 = xmm2[2,0],xmm5[2,3]
xorps %xmm8, %xmm2
movaps %xmm2, %xmm10
movaps %xmm12, %xmm2
movlhps %xmm9, %xmm2            # xmm2 = xmm2[0],xmm9[0]
shufps $0x22, %xmm2, %xmm1     # xmm1 = xmm1[2,0],xmm2[2,0]
movaps %xmm2, %xmm4
shufps $0x52, %xmm10, %xmm2    # xmm2 = xmm2[2,0],xmm10[1,1]
movaps %xmm10, -0x80(%rsp)
mulps %xmm1, %xmm2
mulps %xmm0, %xmm2
addps %xmm3, %xmm2
movaps %xmm15, %xmm0
unpcklps %xmm9, %xmm0            # xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]
shufps $0x40, %xmm0, %xmm0     # xmm0 = xmm0[0,0,0,1]
movaps %xmm0, 0x30(%rsp)
movlhps %xmm6, %xmm6            # xmm6 = xmm6[0,0]
movaps %xmm6, 0x120(%rsp)
shufps $0x2, %xmm11, %xmm4     # xmm4 = xmm4[2,0],xmm11[0,0]
movsd %xmm10, %xmm4           # xmm4 = xmm10[0],xmm4[1]
mulps %xmm0, %xmm4
mulps %xmm6, %xmm4
addps %xmm2, %xmm4
movaps %xmm4, %xmm1
movaps %xmm4, %xmm14
shufps $0xd8, %xmm4, %xmm1     # xmm1 = xmm1[0,2],xmm4[1,3]
movss 0x10(%rdi), %xmm13
movaps %xmm1, 0x140(%rsp)
movss (%rdi), %xmm1
movaps %xmm1, -0x40(%rsp)
movaps %xmm13, %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
xorps %xmm8, %xmm2
pshufd $0x55, %xmm2, %xmm11    # xmm11 = xmm2[1,1,1,1]
punpckldq %xmm13, %xmm11  # xmm11 = xmm11[0],xmm13[0],xmm11[1],xmm13[1]
movaps %xmm1, %xmm0
shufps $0x54, %xmm2, %xmm0     # xmm0 = xmm0[0,1],xmm2[1,1]
shufps $0x84, %xmm0, %xmm11    # xmm11 = xmm11[0,1],xmm0[0,2]
movaps %xmm1, %xmm0
shufps $0x40, %xmm2, %xmm0     # xmm0 = xmm0[0,0],xmm2[0,1]
movaps %xmm0, -0x60(%rsp)
movaps %xmm5, %xmm6
shufps $0x55, %xmm5, %xmm6     # xmm6 = xmm6[1,1],xmm5[1,1]
movaps %xmm5, %xmm0
mulss %xmm6, %xmm0
movaps %xmm0, 0x100(%rsp)
movaps %xmm2, %xmm3
mulss %xmm9, %xmm2
movaps %xmm2, 0xd0(%rsp)
shufps $0x0, %xmm12, %xmm9     # xmm9 = xmm9[0,0],xmm12[0,0]
movaps %xmm9, 0x90(%rsp)
movss 0x30(%rdi), %xmm1
movaps %xmm1, %xmm2
movaps %xmm1, %xmm8
unpcklps %xmm12, %xmm2           # xmm2 = xmm2[0],xmm12[0],xmm2[1],xmm12[1]
mulss %xmm6, %xmm12
movaps %xmm12, 0xe0(%rsp)
movaps %xmm7, %xmm4
movaps %xmm7, %xmm10
mulss %xmm6, %xmm7
movaps %xmm7, 0xf0(%rsp)
movaps %xmm14, %xmm7
movaps %xmm14, 0x80(%rsp)
movaps %xmm14, %xmm0
shufps $0x55, %xmm14, %xmm0    # xmm0 = xmm0[1,1],xmm14[1,1]
mulss %xmm6, %xmm0
movaps %xmm0, 0xc0(%rsp)
movaps %xmm6, %xmm0
movaps (%rsp), %xmm14
unpcklps %xmm14, %xmm0           # xmm0 = xmm0[0],xmm14[0],xmm0[1],xmm14[1]
movaps %xmm13, %xmm1
unpcklpd 0x20(%rsp), %xmm1       # xmm1 = xmm1[0],mem[0]
shufps $0x24, %xmm1, %xmm0     # xmm0 = xmm0[0,1],xmm1[2,0]
shufps $0x55, %xmm5, %xmm4     # xmm4 = xmm4[1,1],xmm5[1,1]
movaps %xmm8, %xmm12
movaps %xmm8, 0x50(%rsp)
movlhps %xmm8, %xmm10           # xmm10 = xmm10[0],xmm8[0]
shufps $0x82, %xmm4, %xmm10    # xmm10 = xmm10[2,0],xmm4[0,2]
movaps %xmm4, %xmm6
shufps $0x8, %xmm13, %xmm6     # xmm6 = xmm6[0,2],xmm13[0,0]
shufps $0x24, %xmm6, %xmm6     # xmm6 = xmm6[0,1,2,0]
mulps %xmm0, %xmm6
mulss %xmm13, %xmm15
movaps %xmm15, 0xa0(%rsp)
movaps %xmm7, %xmm0
unpckhpd %xmm7, %xmm0            # xmm0 = xmm0[1],xmm7[1]
mulss %xmm13, %xmm0
movaps %xmm0, 0xb0(%rsp)
movaps %xmm13, %xmm0
movaps %xmm5, %xmm4
movaps -0x30(%rsp), %xmm8
movss %xmm8, %xmm4            # xmm4 = xmm8[0],xmm4[1,2,3]
shufps $0xf4, %xmm5, %xmm0     # xmm0 = xmm0[0,1],xmm5[3,3]
shufps $0x84, %xmm0, %xmm4     # xmm4 = xmm4[0,1],xmm0[0,2]
movaps %xmm4, %xmm1
shufps $0x24, %xmm4, %xmm1     # xmm1 = xmm1[0,1],xmm4[2,0]
shufps $0x49, -0x80(%rsp), %xmm4 # xmm4 = xmm4[1,2],mem[0,1]
shufps $0x78, %xmm4, %xmm4     # xmm4 = xmm4[0,2,3,1]
mulps %xmm1, %xmm4
movaps %xmm5, %xmm13
movaps -0x50(%rsp), %xmm7
movss %xmm7, %xmm13           # xmm13 = xmm7[0],xmm13[1,2,3]
shufps $0x84, %xmm0, %xmm13    # xmm13 = xmm13[0,1],xmm0[0,2]
movaps %xmm13, %xmm0
shufps $0x24, %xmm13, %xmm0    # xmm0 = xmm0[0,1],xmm13[2,0]
movaps -0x70(%rsp), %xmm1
shufps $0x49, %xmm1, %xmm13    # xmm13 = xmm13[1,2],xmm1[0,1]
shufps $0x78, %xmm13, %xmm13   # xmm13 = xmm13[0,2,3,1]
mulps %xmm0, %xmm13
movaps -0x20(%rsp), %xmm0
shufps $0x0, %xmm5, %xmm0      # xmm0 = xmm0[0,0],xmm5[0,0]
movaps %xmm0, -0x20(%rsp)
movaps %xmm12, %xmm15
unpcklps %xmm5, %xmm15           # xmm15 = xmm15[0],xmm5[0],xmm15[1],xmm5[1]
movaps %xmm15, 0x70(%rsp)
shufps $0xd4, %xmm5, %xmm8     # xmm8 = xmm8[0,1],xmm5[1,3]
movaps %xmm8, -0x30(%rsp)
shufps $0xc5, %xmm7, %xmm5     # xmm5 = xmm5[1,1],xmm7[0,3]
shufps $0x24, %xmm5, %xmm2     # xmm2 = xmm2[0,1],xmm5[2,0]
movaps %xmm12, %xmm5
shufps $0x50, %xmm1, %xmm5     # xmm5 = xmm5[0,0],xmm1[1,1]
shufps $0xd2, %xmm5, %xmm5     # xmm5 = xmm5[2,0,1,3]
mulps %xmm2, %xmm5
movaps %xmm11, 0x40(%rsp)
movaps %xmm11, %xmm2
shufps $0x24, %xmm11, %xmm2    # xmm2 = xmm2[0,1],xmm11[2,0]
mulps %xmm9, %xmm2
movaps -0x40(%rsp), %xmm12
movlhps %xmm12, %xmm3           # xmm3 = xmm3[0],xmm12[0]
shufps $0x82, %xmm11, %xmm3    # xmm3 = xmm3[2,0],xmm11[0,2]
mulps 0x30(%rsp), %xmm3
movaps %xmm0, %xmm1
mulps %xmm3, %xmm1
movaps %xmm1, 0x60(%rsp)
movaps %xmm3, %xmm0
movsd %xmm2, %xmm0            # xmm0 = xmm2[0],xmm0[1]
movapd %xmm0, -0x50(%rsp)
movaps %xmm3, %xmm11
shufps $0x23, %xmm2, %xmm3     # xmm3 = xmm3[3,0],xmm2[2,0]
movaps %xmm2, %xmm15
shufps $0x8c, %xmm3, %xmm2     # xmm2 = xmm2[0,3],xmm3[0,2]
movaps 0xd0(%rsp), %xmm0
movss %xmm0, %xmm2            # xmm2 = xmm0[0],xmm2[1,2,3]
movaps %xmm14, %xmm3
movaps 0x10(%rsp), %xmm1
shufps $0x0, %xmm14, %xmm1     # xmm1 = xmm1[0,0],xmm14[0,0]
movaps %xmm1, 0x10(%rsp)
movaps -0x60(%rsp), %xmm9
shufps $0x78, %xmm9, %xmm9     # xmm9 = xmm9[0,2,3,1]
mulps %xmm1, %xmm9
movaps -0x10(%rsp), %xmm7
mulps %xmm7, %xmm9
movaps %xmm6, %xmm1
mulps %xmm7, %xmm1
mulps %xmm7, %xmm15
mulps %xmm13, %xmm7
movaps %xmm7, -0x10(%rsp)
movaps %xmm5, %xmm0
shufps $0x23, %xmm13, %xmm0    # xmm0 = xmm0[3,0],xmm13[2,0]
movaps %xmm5, %xmm7
movsd %xmm13, %xmm7           # xmm7 = xmm13[0],xmm7[1]
movapd %xmm7, -0x60(%rsp)
shufps $0x8c, %xmm0, %xmm13    # xmm13 = xmm13[0,3],xmm0[0,2]
movaps 0xe0(%rsp), %xmm0
movss %xmm0, %xmm13           # xmm13 = xmm0[0],xmm13[1,2,3]
movaps %xmm4, %xmm7
movaps 0x110(%rsp), %xmm8
mulps %xmm8, %xmm7
mulps %xmm8, %xmm2
mulps %xmm8, %xmm13
mulps 0x40(%rsp), %xmm8
movaps -0x20(%rsp), %xmm14
mulps %xmm14, %xmm8
addps %xmm8, %xmm9
addps %xmm9, %xmm1
movaps 0x50(%rsp), %xmm9
movaps %xmm9, %xmm8
movaps -0x80(%rsp), %xmm0
shufps $0x50, %xmm0, %xmm8     # xmm8 = xmm8[0,0],xmm0[1,1]
mulss %xmm9, %xmm0
movaps %xmm0, -0x80(%rsp)
movaps -0x70(%rsp), %xmm0
mulss %xmm9, %xmm0
movaps %xmm0, -0x70(%rsp)
mulss %xmm9, %xmm3
movaps %xmm3, (%rsp)
movaps 0x80(%rsp), %xmm3
mulss %xmm3, %xmm12
movaps %xmm12, -0x40(%rsp)
shufps $0xff, %xmm3, %xmm3     # xmm3 = xmm3[3,3,3,3]
mulss %xmm9, %xmm3
movaps %xmm9, %xmm12
unpcklps 0x20(%rsp), %xmm12      # xmm12 = xmm12[0],mem[0],xmm12[1],mem[1]
shufps $0x41, %xmm12, %xmm12   # xmm12 = xmm12[1,0,0,1]
mulps %xmm12, %xmm10
movaps %xmm10, %xmm12
mulps %xmm14, %xmm12
addps %xmm1, %xmm12
addps %xmm12, %xmm7
movaps 0x70(%rsp), %xmm0
shufps $0x84, -0x30(%rsp), %xmm0 # xmm0 = xmm0[0,1],mem[0,2]
shufps $0xd2, %xmm8, %xmm8     # xmm8 = xmm8[2,0,1,3]
mulps %xmm0, %xmm8
movaps 0x10(%rsp), %xmm1
mulps %xmm8, %xmm1
addps %xmm7, %xmm1
shufps $0xe1, %xmm1, %xmm1     # xmm1 = xmm1[1,0,2,3]
movaps %xmm1, 0x150(%rsp)
addps 0x60(%rsp), %xmm15
movaps -0x10(%rsp), %xmm1
addps %xmm15, %xmm1
mulps %xmm5, %xmm14
addps %xmm1, %xmm14
movaps 0x100(%rsp), %xmm1
shufps $0xf4, %xmm8, %xmm1     # xmm1 = xmm1[0,1],xmm8[3,3]
shufps $0xb2, %xmm4, %xmm1     # xmm1 = xmm1[2,0],xmm4[3,2]
movaps 0x30(%rsp), %xmm7
mulps %xmm7, %xmm1
addps %xmm14, %xmm1
movlhps %xmm8, %xmm4            # xmm4 = xmm4[0],xmm8[0]
movaps -0x80(%rsp), %xmm0
shufps $0xe4, %xmm8, %xmm0     # xmm0 = xmm0[0,1],xmm8[2,3]
shufps $0x22, %xmm4, %xmm0     # xmm0 = xmm0[2,0],xmm4[2,0]
mulps 0x90(%rsp), %xmm0
addps %xmm1, %xmm0
shufps $0xe1, %xmm0, %xmm0     # xmm0 = xmm0[1,0,2,3]
movaps %xmm0, 0x160(%rsp)
shufps $0x20, -0x50(%rsp), %xmm11 # xmm11 = xmm11[0,0],mem[2,0]
movaps 0xa0(%rsp), %xmm0
movss %xmm0, %xmm11           # xmm11 = xmm0[0],xmm11[1,2,3]
movaps 0x120(%rsp), %xmm0
mulps %xmm0, %xmm11
addps %xmm11, %xmm2
addps %xmm2, %xmm13
shufps $0x20, -0x60(%rsp), %xmm5 # xmm5 = xmm5[0,0],mem[2,0]
movaps -0x70(%rsp), %xmm1
movss %xmm1, %xmm5            # xmm5 = xmm1[0],xmm5[1,2,3]
mulps %xmm0, %xmm5
addps %xmm13, %xmm5
movaps %xmm10, %xmm0
shufps $0x23, %xmm6, %xmm0     # xmm0 = xmm0[3,0],xmm6[2,0]
movaps %xmm10, %xmm1
movsd %xmm6, %xmm1            # xmm1 = xmm6[0],xmm1[1]
shufps $0x8c, %xmm0, %xmm6     # xmm6 = xmm6[0,3],xmm0[0,2]
movaps 0xf0(%rsp), %xmm0
movss %xmm0, %xmm6            # xmm6 = xmm0[0],xmm6[1,2,3]
mulps %xmm7, %xmm6
addps %xmm5, %xmm6
shufps $0x20, %xmm1, %xmm10    # xmm10 = xmm10[0,0],xmm1[2,0]
movaps (%rsp), %xmm0
movss %xmm0, %xmm10           # xmm10 = xmm0[0],xmm10[1,2,3]
mulps 0x130(%rsp), %xmm10
addps %xmm6, %xmm10
shufps $0xd8, %xmm10, %xmm10   # xmm10 = xmm10[0,2,1,3]
movaps %xmm10, 0x170(%rsp)
movaps -0x40(%rsp), %xmm0
addss 0xb0(%rsp), %xmm0
movaps 0xc0(%rsp), %xmm1
addss %xmm0, %xmm1
addss %xmm1, %xmm3
movss 0x3a0e(%rip), %xmm0     # 0xa030
divss %xmm3, %xmm0
xorps %xmm1, %xmm1
xorl %eax, %eax
ucomiss %xmm1, %xmm0
jne 0x6632
jnp 0x6656
cmpq $0x10, %rax
je 0x665c
movss 0x140(%rsp,%rax,4), %xmm1
mulss %xmm0, %xmm1
movss %xmm1, (%rsi,%rax,4)
incq %rax
jmp 0x6632
andl $0x0, (%rsi,%rax,4)
incq %rax
cmpq $0x10, %rax
jne 0x664f
addq $0x188, %rsp            # imm = 0x188
retq