void matrix_transform(int s[32][3], int ss, float *d, int dp) {
  float t01, t02, t03, t04, t05, t06, t07, t08, t09, t10, t11, t12, t13, t14,
      t15, t16, t17, t18, t19, t20, t21, t22, t23, t24, t25, t26, t27, t28, t29,
      t30, t31, t32, t33;
  t01 = s[0][ss] + s[31][ss];
  t02 = (float)(s[0][ss] - s[31][ss]) * 0.500602998235;
  t03 = s[1][ss] + s[30][ss];
  t04 = (float)(s[1][ss] - s[30][ss]) * 0.505470959898;
  t05 = s[2][ss] + s[29][ss];
  t06 = (float)(s[2][ss] - s[29][ss]) * 0.515447309923;
  t07 = s[3][ss] + s[28][ss];
  t08 = (float)(s[3][ss] - s[28][ss]) * 0.53104259109;
  t09 = s[4][ss] + s[27][ss];
  t10 = (float)(s[4][ss] - s[27][ss]) * 0.553103896034;
  t11 = s[5][ss] + s[26][ss];
  t12 = (float)(s[5][ss] - s[26][ss]) * 0.582934968206;
  t13 = s[6][ss] + s[25][ss];
  t14 = (float)(s[6][ss] - s[25][ss]) * 0.622504123036;
  t15 = s[7][ss] + s[24][ss];
  t16 = (float)(s[7][ss] - s[24][ss]) * 0.674808341455;
  t17 = s[8][ss] + s[23][ss];
  t18 = (float)(s[8][ss] - s[23][ss]) * 0.744536271002;
  t19 = s[9][ss] + s[22][ss];
  t20 = (float)(s[9][ss] - s[22][ss]) * 0.839349645416;
  t21 = s[10][ss] + s[21][ss];
  t22 = (float)(s[10][ss] - s[21][ss]) * 0.972568237862;
  t23 = s[11][ss] + s[20][ss];
  t24 = (float)(s[11][ss] - s[20][ss]) * 1.16943993343;
  t25 = s[12][ss] + s[19][ss];
  t26 = (float)(s[12][ss] - s[19][ss]) * 1.48416461631;
  t27 = s[13][ss] + s[18][ss];
  t28 = (float)(s[13][ss] - s[18][ss]) * 2.05778100995;
  t29 = s[14][ss] + s[17][ss];
  t30 = (float)(s[14][ss] - s[17][ss]) * 3.40760841847;
  t31 = s[15][ss] + s[16][ss];
  t32 = (float)(s[15][ss] - s[16][ss]) * 10.1900081235;
  t33 = t01 + t31;
  t31 = (t01 - t31) * 0.502419286188;
  t01 = t03 + t29;
  t29 = (t03 - t29) * 0.52249861494;
  t03 = t05 + t27;
  t27 = (t05 - t27) * 0.566944034816;
  t05 = t07 + t25;
  t25 = (t07 - t25) * 0.64682178336;
  t07 = t09 + t23;
  t23 = (t09 - t23) * 0.788154623451;
  t09 = t11 + t21;
  t21 = (t11 - t21) * 1.06067768599;
  t11 = t13 + t19;
  t19 = (t13 - t19) * 1.72244709824;
  t13 = t15 + t17;
  t17 = (t15 - t17) * 5.10114861869;
  t15 = t33 + t13;
  t13 = (t33 - t13) * 0.509795579104;
  t33 = t01 + t11;
  t01 = (t01 - t11) * 0.601344886935;
  t11 = t03 + t09;
  t09 = (t03 - t09) * 0.899976223136;
  t03 = t05 + t07;
  t07 = (t05 - t07) * 2.56291544774;
  t05 = t15 + t03;
  t15 = (t15 - t03) * 0.541196100146;
  t03 = t33 + t11;
  t11 = (t33 - t11) * 1.30656296488;
  t33 = t05 + t03;
  t05 = (t05 - t03) * 0.707106781187;
  t03 = t15 + t11;
  t15 = (t15 - t11) * 0.707106781187;
  t03 += t15;
  t11 = t13 + t07;
  t13 = (t13 - t07) * 0.541196100146;
  t07 = t01 + t09;
  t09 = (t01 - t09) * 1.30656296488;
  t01 = t11 + t07;
  t07 = (t11 - t07) * 0.707106781187;
  t11 = t13 + t09;
  t13 = (t13 - t09) * 0.707106781187;
  t11 += t13;
  t01 += t11;
  t11 += t07;
  t07 += t13;
  t09 = t31 + t17;
  t31 = (t31 - t17) * 0.509795579104;
  t17 = t29 + t19;
  t29 = (t29 - t19) * 0.601344886935;
  t19 = t27 + t21;
  t21 = (t27 - t21) * 0.899976223136;
  t27 = t25 + t23;
  t23 = (t25 - t23) * 2.56291544774;
  t25 = t09 + t27;
  t09 = (t09 - t27) * 0.541196100146;
  t27 = t17 + t19;
  t19 = (t17 - t19) * 1.30656296488;
  t17 = t25 + t27;
  t27 = (t25 - t27) * 0.707106781187;
  t25 = t09 + t19;
  t19 = (t09 - t19) * 0.707106781187;
  t25 += t19;
  t09 = t31 + t23;
  t31 = (t31 - t23) * 0.541196100146;
  t23 = t29 + t21;
  t21 = (t29 - t21) * 1.30656296488;
  t29 = t09 + t23;
  t23 = (t09 - t23) * 0.707106781187;
  t09 = t31 + t21;
  t31 = (t31 - t21) * 0.707106781187;
  t09 += t31;
  t29 += t09;
  t09 += t23;
  t23 += t31;
  t17 += t29;
  t29 += t25;
  t25 += t09;
  t09 += t27;
  t27 += t23;
  t23 += t19;
  t19 += t31;
  t21 = t02 + t32;
  t02 = (t02 - t32) * 0.502419286188;
  t32 = t04 + t30;
  t04 = (t04 - t30) * 0.52249861494;
  t30 = t06 + t28;
  t28 = (t06 - t28) * 0.566944034816;
  t06 = t08 + t26;
  t08 = (t08 - t26) * 0.64682178336;
  t26 = t10 + t24;
  t10 = (t10 - t24) * 0.788154623451;
  t24 = t12 + t22;
  t22 = (t12 - t22) * 1.06067768599;
  t12 = t14 + t20;
  t20 = (t14 - t20) * 1.72244709824;
  t14 = t16 + t18;
  t16 = (t16 - t18) * 5.10114861869;
  t18 = t21 + t14;
  t14 = (t21 - t14) * 0.509795579104;
  t21 = t32 + t12;
  t32 = (t32 - t12) * 0.601344886935;
  t12 = t30 + t24;
  t24 = (t30 - t24) * 0.899976223136;
  t30 = t06 + t26;
  t26 = (t06 - t26) * 2.56291544774;
  t06 = t18 + t30;
  t18 = (t18 - t30) * 0.541196100146;
  t30 = t21 + t12;
  t12 = (t21 - t12) * 1.30656296488;
  t21 = t06 + t30;
  t30 = (t06 - t30) * 0.707106781187;
  t06 = t18 + t12;
  t12 = (t18 - t12) * 0.707106781187;
  t06 += t12;
  t18 = t14 + t26;
  t26 = (t14 - t26) * 0.541196100146;
  t14 = t32 + t24;
  t24 = (t32 - t24) * 1.30656296488;
  t32 = t18 + t14;
  t14 = (t18 - t14) * 0.707106781187;
  t18 = t26 + t24;
  t24 = (t26 - t24) * 0.707106781187;
  t18 += t24;
  t32 += t18;
  t18 += t14;
  t26 = t14 + t24;
  t14 = t02 + t16;
  t02 = (t02 - t16) * 0.509795579104;
  t16 = t04 + t20;
  t04 = (t04 - t20) * 0.601344886935;
  t20 = t28 + t22;
  t22 = (t28 - t22) * 0.899976223136;
  t28 = t08 + t10;
  t10 = (t08 - t10) * 2.56291544774;
  t08 = t14 + t28;
  t14 = (t14 - t28) * 0.541196100146;
  t28 = t16 + t20;
  t20 = (t16 - t20) * 1.30656296488;
  t16 = t08 + t28;
  t28 = (t08 - t28) * 0.707106781187;
  t08 = t14 + t20;
  t20 = (t14 - t20) * 0.707106781187;
  t08 += t20;
  t14 = t02 + t10;
  t02 = (t02 - t10) * 0.541196100146;
  t10 = t04 + t22;
  t22 = (t04 - t22) * 1.30656296488;
  t04 = t14 + t10;
  t10 = (t14 - t10) * 0.707106781187;
  t14 = t02 + t22;
  t02 = (t02 - t22) * 0.707106781187;
  t14 += t02;
  t04 += t14;
  t14 += t10;
  t10 += t02;
  t16 += t04;
  t04 += t08;
  t08 += t14;
  t14 += t28;
  t28 += t10;
  t10 += t20;
  t20 += t02;
  t21 += t16;
  t16 += t32;
  t32 += t04;
  t04 += t06;
  t06 += t08;
  t08 += t18;
  t18 += t14;
  t14 += t30;
  t30 += t28;
  t28 += t26;
  t26 += t10;
  t10 += t12;
  t12 += t20;
  t20 += t24;
  t24 += t02;
  d[dp + 48] = -t33;
  d[dp + 49] = d[dp + 47] = -t21;
  d[dp + 50] = d[dp + 46] = -t17;
  d[dp + 51] = d[dp + 45] = -t16;
  d[dp + 52] = d[dp + 44] = -t01;
  d[dp + 53] = d[dp + 43] = -t32;
  d[dp + 54] = d[dp + 42] = -t29;
  d[dp + 55] = d[dp + 41] = -t04;
  d[dp + 56] = d[dp + 40] = -t03;
  d[dp + 57] = d[dp + 39] = -t06;
  d[dp + 58] = d[dp + 38] = -t25;
  d[dp + 59] = d[dp + 37] = -t08;
  d[dp + 60] = d[dp + 36] = -t11;
  d[dp + 61] = d[dp + 35] = -t18;
  d[dp + 62] = d[dp + 34] = -t09;
  d[dp + 63] = d[dp + 33] = -t14;
  d[dp + 32] = -t05;
  d[dp + 0] = t05;
  d[dp + 31] = -t30;
  d[dp + 1] = t30;
  d[dp + 30] = -t27;
  d[dp + 2] = t27;
  d[dp + 29] = -t28;
  d[dp + 3] = t28;
  d[dp + 28] = -t07;
  d[dp + 4] = t07;
  d[dp + 27] = -t26;
  d[dp + 5] = t26;
  d[dp + 26] = -t23;
  d[dp + 6] = t23;
  d[dp + 25] = -t10;
  d[dp + 7] = t10;
  d[dp + 24] = -t15;
  d[dp + 8] = t15;
  d[dp + 23] = -t12;
  d[dp + 9] = t12;
  d[dp + 22] = -t19;
  d[dp + 10] = t19;
  d[dp + 21] = -t20;
  d[dp + 11] = t20;
  d[dp + 20] = -t13;
  d[dp + 12] = t13;
  d[dp + 19] = -t24;
  d[dp + 13] = t24;
  d[dp + 18] = -t31;
  d[dp + 14] = t31;
  d[dp + 17] = -t02;
  d[dp + 15] = t02;
  d[dp + 16] = 0.0;
}


x86 assembly (clang, -O0):
<matrix_transform>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %ecx,-0x1c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x174(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x20(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x174(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1f8d(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x24(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xc(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x168(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x28(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xc(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x168(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1f29(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x2c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x18(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x15c(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x30(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x18(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x15c(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1ec5(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x34(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x24(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x150(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x38(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x24(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x150(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1e61(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x3c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x30(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x144(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x40(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x30(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x144(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1dfd(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x44(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x3c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x138(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x48(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x3c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x138(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1d99(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x4c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x48(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x12c(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x50(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x48(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x12c(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1d35(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x54(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x120(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x54(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x120(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1cd1(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x60(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x114(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x60(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x60(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x114(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1c6d(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x6c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0x108(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x6c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0x108(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1c09(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x78(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xfc(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x70(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x78(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xfc(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1ba5(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x74(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x84(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xf0(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x78(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x84(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xf0(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1b3b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x7c(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x90(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xe4(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x80(%rbp)
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x90(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xe4(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1ad1(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x84(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x9c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xd8(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0x9c(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xd8(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1a61(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xa8(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xcc(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x90(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xa8(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xcc(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x19f1(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x94(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xb4(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
add    0xc0(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x98(%rbp)
ff
mov    -0x8(%rbp),%rax
movslq -0xc(%rbp),%rcx
mov    0xb4(%rax,%rcx,4),%eax
mov    -0x8(%rbp),%rcx
movslq -0xc(%rbp),%rdx
sub    0xc0(%rcx,%rdx,4),%eax
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1981(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x20(%rbp),%xmm0
addss  -0x98(%rbp),%xmm0
ff
movss  %xmm0,-0xa0(%rbp)
ff
movss  -0x20(%rbp),%xmm0
subss  -0x98(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x193b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x98(%rbp)
ff
movss  -0x28(%rbp),%xmm0
addss  -0x90(%rbp),%xmm0
ff
movss  %xmm0,-0x20(%rbp)
movss  -0x28(%rbp),%xmm0
subss  -0x90(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x18f8(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x90(%rbp)
ff
movss  -0x30(%rbp),%xmm0
addss  -0x88(%rbp),%xmm0
ff
movss  %xmm0,-0x28(%rbp)
movss  -0x30(%rbp),%xmm0
subss  -0x88(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x18b5(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x38(%rbp),%xmm0
addss  -0x80(%rbp),%xmm0
movss  %xmm0,-0x30(%rbp)
movss  -0x38(%rbp),%xmm0
subss  -0x80(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1878(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x40(%rbp),%xmm0
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x40(%rbp),%xmm0
subss  -0x78(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x183e(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x48(%rbp),%xmm0
addss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x48(%rbp),%xmm0
subss  -0x70(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1804(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x50(%rbp),%xmm0
addss  -0x68(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x50(%rbp),%xmm0
subss  -0x68(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x17ca(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x58(%rbp),%xmm0
addss  -0x60(%rbp),%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x58(%rbp),%xmm0
subss  -0x60(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1790(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0xa0(%rbp),%xmm0
ff
addss  -0x50(%rbp),%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0xa0(%rbp),%xmm0
ff
subss  -0x50(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1750(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x20(%rbp),%xmm0
addss  -0x48(%rbp),%xmm0
movss  %xmm0,-0xa0(%rbp)
ff
movss  -0x20(%rbp),%xmm0
subss  -0x48(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1713(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x20(%rbp)
movss  -0x28(%rbp),%xmm0
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x28(%rbp),%xmm0
subss  -0x40(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x16d9(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x30(%rbp),%xmm0
addss  -0x38(%rbp),%xmm0
movss  %xmm0,-0x28(%rbp)
movss  -0x30(%rbp),%xmm0
subss  -0x38(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x169f(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x58(%rbp),%xmm0
addss  -0x28(%rbp),%xmm0
movss  %xmm0,-0x30(%rbp)
movss  -0x58(%rbp),%xmm0
subss  -0x28(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1665(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0xa0(%rbp),%xmm0
ff
addss  -0x48(%rbp),%xmm0
movss  %xmm0,-0x28(%rbp)
movss  -0xa0(%rbp),%xmm0
ff
subss  -0x48(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1625(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x30(%rbp),%xmm0
addss  -0x28(%rbp),%xmm0
movss  %xmm0,-0xa0(%rbp)
ff
movss  -0x30(%rbp),%xmm0
subss  -0x28(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x15e8(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x30(%rbp)
movss  -0x58(%rbp),%xmm0
addss  -0x48(%rbp),%xmm0
movss  %xmm0,-0x28(%rbp)
movss  -0x58(%rbp),%xmm0
subss  -0x48(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x15b6(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0x58(%rbp),%xmm0
addss  -0x28(%rbp),%xmm0
movss  %xmm0,-0x28(%rbp)
movss  -0x50(%rbp),%xmm0
addss  -0x38(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x50(%rbp),%xmm0
subss  -0x38(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1585(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x20(%rbp),%xmm0
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x20(%rbp),%xmm0
subss  -0x40(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x154b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x48(%rbp),%xmm0
addss  -0x38(%rbp),%xmm0
movss  %xmm0,-0x20(%rbp)
movss  -0x48(%rbp),%xmm0
subss  -0x38(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1511(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x50(%rbp),%xmm0
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x50(%rbp),%xmm0
subss  -0x40(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x14df(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x50(%rbp),%xmm0
addss  -0x48(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x48(%rbp),%xmm0
addss  -0x20(%rbp),%xmm0
movss  %xmm0,-0x20(%rbp)
movss  -0x38(%rbp),%xmm0
addss  -0x48(%rbp),%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x50(%rbp),%xmm0
addss  -0x38(%rbp),%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x98(%rbp),%xmm0
ff
addss  -0x60(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x98(%rbp),%xmm0
ff
subss  -0x60(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x149b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x98(%rbp)
ff
movss  -0x90(%rbp),%xmm0
ff
addss  -0x68(%rbp),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x90(%rbp),%xmm0
ff
subss  -0x68(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1458(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x90(%rbp)
ff
movss  -0x88(%rbp),%xmm0
ff
addss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x88(%rbp),%xmm0
ff
subss  -0x70(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1415(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x80(%rbp),%xmm0
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x80(%rbp),%xmm0
subss  -0x78(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x13d8(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x40(%rbp),%xmm0
addss  -0x88(%rbp),%xmm0
ff
movss  %xmm0,-0x80(%rbp)
movss  -0x40(%rbp),%xmm0
subss  -0x88(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x1398(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x60(%rbp),%xmm0
addss  -0x68(%rbp),%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x60(%rbp),%xmm0
subss  -0x68(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x135b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x80(%rbp),%xmm0
addss  -0x88(%rbp),%xmm0
ff
movss  %xmm0,-0x60(%rbp)
movss  -0x80(%rbp),%xmm0
subss  -0x88(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x131b(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x40(%rbp),%xmm0
addss  -0x68(%rbp),%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x40(%rbp),%xmm0
subss  -0x68(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x12e6(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x68(%rbp),%xmm0
addss  -0x80(%rbp),%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x98(%rbp),%xmm0
ff
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x98(%rbp),%xmm0
ff
subss  -0x78(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x12af(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x98(%rbp)
ff
movss  -0x90(%rbp),%xmm0
ff
addss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x90(%rbp),%xmm0
ff
subss  -0x70(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x126c(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x40(%rbp),%xmm0
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x90(%rbp)
ff
movss  -0x40(%rbp),%xmm0
subss  -0x78(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x122f(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x98(%rbp),%xmm0
ff
addss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x98(%rbp),%xmm0
ff
subss  -0x70(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x11f7(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x98(%rbp)
ff
movss  -0x98(%rbp),%xmm0
ff
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x40(%rbp),%xmm0
addss  -0x90(%rbp),%xmm0
ff
movss  %xmm0,-0x90(%rbp)
ff
movss  -0x78(%rbp),%xmm0
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x98(%rbp),%xmm0
ff
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x90(%rbp),%xmm0
ff
addss  -0x60(%rbp),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x80(%rbp),%xmm0
addss  -0x90(%rbp),%xmm0
ff
movss  %xmm0,-0x90(%rbp)
ff
movss  -0x40(%rbp),%xmm0
addss  -0x80(%rbp),%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x88(%rbp),%xmm0
ff
addss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x78(%rbp),%xmm0
addss  -0x88(%rbp),%xmm0
ff
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x68(%rbp),%xmm0
addss  -0x78(%rbp),%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x98(%rbp),%xmm0
ff
addss  -0x68(%rbp),%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x9c(%rbp),%xmm0
ff
movss  %xmm0,-0x70(%rbp)
movss  -0x24(%rbp),%xmm0
subss  -0x9c(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x1166(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x24(%rbp)
movss  -0x2c(%rbp),%xmm0
addss  -0x94(%rbp),%xmm0
ff
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x2c(%rbp),%xmm0
subss  -0x94(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x1123(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x34(%rbp),%xmm0
addss  -0x8c(%rbp),%xmm0
ff
movss  %xmm0,-0x94(%rbp)
ff
movss  -0x34(%rbp),%xmm0
subss  -0x8c(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x10e0(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x3c(%rbp),%xmm0
addss  -0x84(%rbp),%xmm0
ff
movss  %xmm0,-0x34(%rbp)
movss  -0x3c(%rbp),%xmm0
subss  -0x84(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0x109d(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x44(%rbp),%xmm0
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x44(%rbp),%xmm0
subss  -0x7c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1060(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x4c(%rbp),%xmm0
addss  -0x74(%rbp),%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x4c(%rbp),%xmm0
subss  -0x74(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1026(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x54(%rbp),%xmm0
subss  -0x6c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xfec(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x5c(%rbp),%xmm0
addss  -0x64(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm0
subss  -0x64(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xfb2(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x70(%rbp),%xmm0
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x70(%rbp),%xmm0
subss  -0x54(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xf78(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x9c(%rbp),%xmm0
ff
addss  -0x4c(%rbp),%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x9c(%rbp),%xmm0
ff
subss  -0x4c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xf38(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x94(%rbp),%xmm0
ff
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x94(%rbp),%xmm0
ff
subss  -0x7c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xef5(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x34(%rbp),%xmm0
addss  -0x84(%rbp),%xmm0
ff
movss  %xmm0,-0x94(%rbp)
ff
movss  -0x34(%rbp),%xmm0
subss  -0x84(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xeb2(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x64(%rbp),%xmm0
addss  -0x94(%rbp),%xmm0
ff
movss  %xmm0,-0x34(%rbp)
movss  -0x64(%rbp),%xmm0
subss  -0x94(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xe6f(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x70(%rbp),%xmm0
addss  -0x4c(%rbp),%xmm0
movss  %xmm0,-0x94(%rbp)
ff
movss  -0x70(%rbp),%xmm0
subss  -0x4c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xe32(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x34(%rbp),%xmm0
addss  -0x94(%rbp),%xmm0
ff
movss  %xmm0,-0x70(%rbp)
movss  -0x34(%rbp),%xmm0
subss  -0x94(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xdf2(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x94(%rbp)
ff
movss  -0x64(%rbp),%xmm0
addss  -0x4c(%rbp),%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x64(%rbp),%xmm0
subss  -0x4c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xdbd(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x4c(%rbp),%xmm0
addss  -0x34(%rbp),%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x84(%rbp),%xmm0
ff
movss  %xmm0,-0x64(%rbp)
movss  -0x54(%rbp),%xmm0
subss  -0x84(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xd86(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x9c(%rbp),%xmm0
ff
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x9c(%rbp),%xmm0
ff
subss  -0x7c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xd43(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x64(%rbp),%xmm0
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x64(%rbp),%xmm0
subss  -0x54(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xd06(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x84(%rbp),%xmm0
ff
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x84(%rbp),%xmm0
ff
subss  -0x7c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xcce(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x7c(%rbp),%xmm0
addss  -0x64(%rbp),%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x64(%rbp),%xmm0
addss  -0x9c(%rbp),%xmm0
ff
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x54(%rbp),%xmm0
addss  -0x64(%rbp),%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x24(%rbp),%xmm0
addss  -0x5c(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x24(%rbp),%xmm0
subss  -0x5c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xc87(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x24(%rbp)
movss  -0x2c(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x2c(%rbp),%xmm0
subss  -0x6c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xc4d(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x8c(%rbp),%xmm0
ff
addss  -0x74(%rbp),%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x8c(%rbp),%xmm0
ff
subss  -0x74(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xc0d(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x3c(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x3c(%rbp),%xmm0
subss  -0x44(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xbd0(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x8c(%rbp),%xmm0
ff
movss  %xmm0,-0x3c(%rbp)
movss  -0x54(%rbp),%xmm0
subss  -0x8c(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xb90(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x5c(%rbp),%xmm0
subss  -0x6c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xb53(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x3c(%rbp),%xmm0
addss  -0x8c(%rbp),%xmm0
ff
movss  %xmm0,-0x5c(%rbp)
movss  -0x3c(%rbp),%xmm0
subss  -0x8c(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
movsd  0xb13(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x54(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x54(%rbp),%xmm0
subss  -0x6c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xade(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x6c(%rbp),%xmm0
addss  -0x3c(%rbp),%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x24(%rbp),%xmm0
subss  -0x44(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xaad(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x24(%rbp)
movss  -0x2c(%rbp),%xmm0
addss  -0x74(%rbp),%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x2c(%rbp),%xmm0
subss  -0x74(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xa73(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x54(%rbp),%xmm0
subss  -0x44(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xa39(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x74(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x24(%rbp),%xmm0
subss  -0x74(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0xa07(%rip),%xmm1
mulsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,-0x24(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x2c(%rbp),%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x44(%rbp),%xmm0
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x2c(%rbp),%xmm0
addss  -0x5c(%rbp),%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x3c(%rbp),%xmm0
addss  -0x2c(%rbp),%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x3c(%rbp),%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x8c(%rbp),%xmm0
ff
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x44(%rbp),%xmm0
addss  -0x8c(%rbp),%xmm0
ff
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x6c(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x5c(%rbp),%xmm0
addss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x9c(%rbp),%xmm0
ff
addss  -0x5c(%rbp),%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x2c(%rbp),%xmm0
addss  -0x9c(%rbp),%xmm0
ff
movss  %xmm0,-0x9c(%rbp)
ff
movss  -0x34(%rbp),%xmm0
addss  -0x2c(%rbp),%xmm0
movss  %xmm0,-0x2c(%rbp)
movss  -0x3c(%rbp),%xmm0
addss  -0x34(%rbp),%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x64(%rbp),%xmm0
addss  -0x3c(%rbp),%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x54(%rbp),%xmm0
addss  -0x64(%rbp),%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x94(%rbp),%xmm0
ff
addss  -0x54(%rbp),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x8c(%rbp),%xmm0
ff
addss  -0x94(%rbp),%xmm0
ff
movss  %xmm0,-0x94(%rbp)
ff
movss  -0x84(%rbp),%xmm0
ff
addss  -0x8c(%rbp),%xmm0
ff
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x44(%rbp),%xmm0
addss  -0x84(%rbp),%xmm0
ff
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x4c(%rbp),%xmm0
addss  -0x44(%rbp),%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x6c(%rbp),%xmm0
addss  -0x4c(%rbp),%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x7c(%rbp),%xmm0
addss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x24(%rbp),%xmm0
addss  -0x7c(%rbp),%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0xa0(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x30,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x70(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2f,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x31,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x60(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2e,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x32,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x5c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2d,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x33,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x20(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2c,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x34,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x9c(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2b,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x35,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x90(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2a,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x36,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x2c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x29,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x37,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x28(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x28,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x38,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x34(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x27,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x39,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x80(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x26,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3a,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x3c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x25,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3b,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x48(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x24,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3c,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x64(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x23,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3d,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x40(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x22,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3e,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x54(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x21,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3f,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x30(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x20,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x30(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x0,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x94(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1f,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x94(%rbp),%xmm0
ff
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x88(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1e,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x88(%rbp),%xmm0
ff
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x8c(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1d,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x8c(%rbp),%xmm0
ff
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x38(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1c,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x38(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x4,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x84(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1b,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x84(%rbp),%xmm0
ff
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x5,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x78(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x1a,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x78(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x6,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x44(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x19,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x44(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x7,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x58(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x18,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x58(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x8,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x4c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x17,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x4c(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x9,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x68(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x16,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x68(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xa,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x6c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x15,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x6c(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xb,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x50(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x14,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x50(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xc,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x7c(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x13,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x7c(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xd,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x98(%rbp),%xmm0
ff
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x12,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x98(%rbp),%xmm0
ff
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xe,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x24(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x11,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
movss  -0x24(%rbp),%xmm0
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0xf,%ecx
movslq %ecx,%rcx
movss  %xmm0,(%rax,%rcx,4)
mov    -0x18(%rbp),%rax
mov    -0x1c(%rbp),%ecx
add    $0x10,%ecx
movslq %ecx,%rcx
xorps  %xmm0,%xmm0
movss  %xmm0,(%rax,%rcx,4)
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<matrix_transform>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x118,%rsp
movslq %esi,%rax
mov    0x174(%rdi,%rax,4),%esi
mov    %rsi,-0x70(%rsp)
mov    (%rdi,%rax,4),%r12d
mov    0xc(%rdi,%rax,4),%ebp
mov    %rbp,0x70(%rsp)
lea    (%rsi,%r12,1),%esi
cvtsi2ss %esi,%xmm5
mov    0x168(%rdi,%rax,4),%esi
mov    %rsi,0x80(%rsp)
lea    (%rsi,%rbp,1),%esi
cvtsi2ss %esi,%xmm10
mov    0x18(%rdi,%rax,4),%ebp
mov    %rbp,-0x78(%rsp)
mov    0x15c(%rdi,%rax,4),%esi
mov    %rsi,0x40(%rsp)
lea    (%rsi,%rbp,1),%esi
cvtsi2ss %esi,%xmm12
mov    0x24(%rdi,%rax,4),%ebp
mov    %rbp,0x20(%rsp)
mov    0x150(%rdi,%rax,4),%esi
mov    %rsi,0x30(%rsp)
lea    (%rsi,%rbp,1),%esi
cvtsi2ss %esi,%xmm11
mov    0x30(%rdi,%rax,4),%ebp
mov    %rbp,-0x10(%rsp)
mov    0x144(%rdi,%rax,4),%esi
mov    %rsi,0x10(%rsp)
lea    (%rsi,%rbp,1),%esi
cvtsi2ss %esi,%xmm13
mov    0x3c(%rdi,%rax,4),%ebp
mov    %rbp,-0x18(%rsp)
mov    0x138(%rdi,%rax,4),%esi
mov    %rsi,-0x80(%rsp)
lea    (%rsi,%rbp,1),%esi
cvtsi2ss %esi,%xmm9
mov    0x48(%rdi,%rax,4),%r15d
mov    0x12c(%rdi,%rax,4),%esi
mov    %rsi,-0x28(%rsp)
lea    (%rsi,%r15,1),%esi
cvtsi2ss %esi,%xmm8
mov    0x54(%rdi,%rax,4),%r13d
mov    0x120(%rdi,%rax,4),%esi
mov    %rsi,-0x20(%rsp)
lea    (%rsi,%r13,1),%esi
cvtsi2ss %esi,%xmm14
mov    0x6c(%rdi,%rax,4),%r14d
mov    0x108(%rdi,%rax,4),%esi
mov    %rsi,-0x30(%rsp)
lea    (%rsi,%r14,1),%esi
cvtsi2ss %esi,%xmm6
mov    0x78(%rdi,%rax,4),%ebx
mov    0xfc(%rdi,%rax,4),%esi
mov    %rsi,-0x48(%rsp)
lea    (%rsi,%rbx,1),%esi
cvtsi2ss %esi,%xmm15
mov    0x84(%rdi,%rax,4),%r11d
mov    0xf0(%rdi,%rax,4),%esi
mov    %rsi,0xd8(%rsp)
lea    (%rsi,%r11,1),%esi
cvtsi2ss %esi,%xmm2
mov    0x90(%rdi,%rax,4),%r10d
mov    0xe4(%rdi,%rax,4),%esi
mov    %rsi,0xd0(%rsp)
lea    (%rsi,%r10,1),%esi
cvtsi2ss %esi,%xmm1
mov    0x9c(%rdi,%rax,4),%r8d
mov    0xd8(%rdi,%rax,4),%esi
mov    %rsi,-0x50(%rsp)
lea    (%rsi,%r8,1),%esi
cvtsi2ss %esi,%xmm7
mov    0xa8(%rdi,%rax,4),%esi
mov    0xcc(%rdi,%rax,4),%ebp
mov    %rbp,0xc8(%rsp)
lea    0x0(%rbp,%rsi,1),%ebp
cvtsi2ss %ebp,%xmm3
mov    %ecx,0x90(%rsp)
mov    0xb4(%rdi,%rax,4),%ecx
mov    0xc0(%rdi,%rax,4),%ebp
mov    %rbp,-0x58(%rsp)
lea    0x0(%rbp,%rcx,1),%ebp
cvtsi2ss %ebp,%xmm4
mov    0x60(%rdi,%rax,4),%r9d
mov    0x114(%rdi,%rax,4),%edi
movaps %xmm5,%xmm0
addss  %xmm4,%xmm0
subss  %xmm4,%xmm5
movss  %xmm5,0x50(%rsp)
movaps %xmm10,%xmm4
addss  %xmm3,%xmm4
subss  %xmm3,%xmm10
movaps %xmm12,%xmm3
addss  %xmm7,%xmm3
subss  %xmm7,%xmm12
movss  %xmm12,0x60(%rsp)
movaps %xmm11,%xmm7
addss  %xmm1,%xmm7
subss  %xmm1,%xmm11
movaps %xmm13,%xmm1
addss  %xmm2,%xmm1
subss  %xmm2,%xmm13
movaps %xmm9,%xmm12
addss  %xmm15,%xmm12
subss  %xmm15,%xmm9
movaps %xmm8,%xmm15
addss  %xmm6,%xmm15
subss  %xmm6,%xmm8
lea    (%rdi,%r9,1),%eax
xorps  %xmm2,%xmm2
cvtsi2ss %eax,%xmm2
movaps %xmm14,%xmm5
addss  %xmm2,%xmm5
subss  %xmm2,%xmm14
movaps %xmm5,%xmm2
addss  %xmm0,%xmm2
subss  %xmm5,%xmm0
movaps %xmm15,%xmm5
addss  %xmm4,%xmm5
subss  %xmm15,%xmm4
movaps %xmm12,%xmm15
addss  %xmm3,%xmm15
subss  %xmm12,%xmm3
movaps %xmm1,%xmm6
addss  %xmm7,%xmm6
subss  %xmm1,%xmm7
movaps %xmm6,%xmm1
addss  %xmm2,%xmm1
subss  %xmm6,%xmm2
movaps %xmm15,%xmm6
addss  %xmm5,%xmm6
subss  %xmm15,%xmm5
cvtss2sd %xmm0,%xmm0
mulsd  0x1d20(%rip),%xmm0
xorps  %xmm15,%xmm15
cvtsd2ss %xmm0,%xmm15
movaps %xmm6,%xmm0
addss  %xmm1,%xmm0
movaps %xmm0,0x100(%rsp)
subss  %xmm6,%xmm1
movss  %xmm1,-0x38(%rsp)
xorps  %xmm0,%xmm0
cvtss2sd %xmm2,%xmm0
movsd  0x1d0e(%rip),%xmm12
mulsd  %xmm12,%xmm0
xorps  %xmm1,%xmm1
cvtsd2ss %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtss2sd %xmm5,%xmm0
movsd  0x1cfb(%rip),%xmm2
mulsd  %xmm2,%xmm0
movapd %xmm2,%xmm5
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm2
addss  %xmm1,%xmm2
movaps %xmm2,0xb0(%rsp)
subss  %xmm0,%xmm1
movss  %xmm1,-0x40(%rsp)
xorps  %xmm0,%xmm0
cvtss2sd %xmm4,%xmm0
mulsd  0x1ca7(%rip),%xmm0
cvtsd2ss %xmm0,%xmm0
xorps  %xmm2,%xmm2
cvtss2sd %xmm7,%xmm2
movsd  0x1ca4(%rip),%xmm6
mulsd  %xmm6,%xmm2
cvtsd2ss %xmm2,%xmm2
movaps %xmm2,%xmm1
addss  %xmm15,%xmm1
subss  %xmm2,%xmm15
xorps  %xmm2,%xmm2
cvtss2sd %xmm3,%xmm2
mulsd  0x1c78(%rip),%xmm2
cvtsd2ss %xmm2,%xmm2
movaps %xmm2,%xmm3
addss  %xmm0,%xmm3
subss  %xmm2,%xmm0
movaps %xmm3,%xmm2
addss  %xmm1,%xmm2
movaps %xmm2,0xa0(%rsp)
subss  %xmm3,%xmm1
movss  %xmm1,0xc(%rsp)
movss  0x50(%rsp),%xmm1
xorps  %xmm2,%xmm2
cvtss2sd %xmm1,%xmm2
mulsd  0x1beb(%rip),%xmm2
xorps  %xmm7,%xmm7
cvtsd2ss %xmm2,%xmm7
xorps  %xmm1,%xmm1
cvtss2sd %xmm15,%xmm1
mulsd  %xmm12,%xmm1
xorps  %xmm2,%xmm2
cvtsd2ss %xmm1,%xmm2
cvtss2sd %xmm0,%xmm0
mulsd  %xmm5,%xmm0
movapd %xmm5,%xmm15
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm1
addss  %xmm2,%xmm1
movaps %xmm1,0xf0(%rsp)
subss  %xmm0,%xmm2
movss  %xmm2,0x8(%rsp)
xorps  %xmm0,%xmm0
cvtss2sd %xmm10,%xmm0
mulsd  0x1b9e(%rip),%xmm0
xorps  %xmm2,%xmm2
cvtsd2ss %xmm0,%xmm2
xorps  %xmm0,%xmm0
cvtss2sd %xmm14,%xmm0
mulsd  0x1bb7(%rip),%xmm0
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm3
addss  %xmm7,%xmm3
subss  %xmm0,%xmm7
movss  0x60(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  0x1b6d(%rip),%xmm10
mulsd  %xmm10,%xmm0
cvtsd2ss %xmm0,%xmm4
xorps  %xmm0,%xmm0
cvtss2sd %xmm8,%xmm0
mulsd  0x1b74(%rip),%xmm0
xorps  %xmm5,%xmm5
cvtsd2ss %xmm0,%xmm5
movaps %xmm5,%xmm0
addss  %xmm2,%xmm0
subss  %xmm5,%xmm2
xorps  %xmm5,%xmm5
cvtss2sd %xmm11,%xmm5
movsd  0x1b39(%rip),%xmm8
mulsd  %xmm8,%xmm5
cvtsd2ss %xmm5,%xmm11
xorps  %xmm5,%xmm5
cvtss2sd %xmm9,%xmm5
mulsd  0x1b2f(%rip),%xmm5
cvtsd2ss %xmm5,%xmm5
movaps %xmm5,%xmm9
addss  %xmm4,%xmm9
subss  %xmm5,%xmm4
xorps  %xmm5,%xmm5
cvtss2sd %xmm13,%xmm5
movsd  0x1b05(%rip),%xmm14
mulsd  %xmm14,%xmm5
cvtsd2ss %xmm5,%xmm13
movaps %xmm13,%xmm5
addss  %xmm11,%xmm5
subss  %xmm13,%xmm11
movaps %xmm5,%xmm1
addss  %xmm3,%xmm1
subss  %xmm5,%xmm3
movaps %xmm9,%xmm13
addss  %xmm0,%xmm13
subss  %xmm9,%xmm0
movaps %xmm13,%xmm5
addss  %xmm1,%xmm5
movaps %xmm5,0xe0(%rsp)
subss  %xmm13,%xmm1
movss  %xmm1,0x4(%rsp)
cvtss2sd %xmm3,%xmm3
mulsd  %xmm12,%xmm3
xorps  %xmm1,%xmm1
cvtsd2ss %xmm3,%xmm1
cvtss2sd %xmm0,%xmm0
mulsd  %xmm15,%xmm0
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm3
addss  %xmm1,%xmm3
movaps %xmm3,0x60(%rsp)
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
xorps  %xmm0,%xmm0
cvtss2sd %xmm7,%xmm0
mulsd  0x1a98(%rip),%xmm0
xorps  %xmm3,%xmm3
cvtsd2ss %xmm0,%xmm3
xorps  %xmm0,%xmm0
cvtss2sd %xmm11,%xmm0
mulsd  %xmm6,%xmm0
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm5
addss  %xmm3,%xmm5
subss  %xmm0,%xmm3
xorps  %xmm0,%xmm0
cvtss2sd %xmm2,%xmm0
mulsd  0x1a6f(%rip),%xmm0
xorps  %xmm2,%xmm2
cvtsd2ss %xmm0,%xmm2
xorps  %xmm0,%xmm0
cvtss2sd %xmm4,%xmm0
mulsd  0x1a61(%rip),%xmm0
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm1
addss  %xmm2,%xmm1
subss  %xmm0,%xmm2
movaps %xmm1,%xmm0
addss  %xmm5,%xmm0
movaps %xmm0,0x50(%rsp)
subss  %xmm1,%xmm5
movss  %xmm5,-0x4(%rsp)
sub    -0x70(%rsp),%r12d
sub    -0x58(%rsp),%ecx
xorps  %xmm0,%xmm0
cvtsi2ss %r12d,%xmm0
cvtss2sd %xmm0,%xmm0
mulsd  0x194f(%rip),%xmm0
cvtsd2ss %xmm0,%xmm0
xorps  %xmm1,%xmm1
cvtss2sd %xmm3,%xmm1
mulsd  %xmm12,%xmm1
xorps  %xmm3,%xmm3
cvtsd2ss %xmm1,%xmm3
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm15,%xmm1
cvtsd2ss %xmm1,%xmm1
movaps %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps %xmm2,-0x70(%rsp)
xorps  %xmm2,%xmm2
cvtsi2ss %ecx,%xmm2
subss  %xmm1,%xmm3
movss  %xmm3,-0x58(%rsp)
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  0x1974(%rip),%xmm1
cvtsd2ss %xmm1,%xmm1
movaps %xmm0,%xmm11
addss  %xmm1,%xmm11
subss  %xmm1,%xmm0
cvtss2sd %xmm0,%xmm0
mulsd  0x195f(%rip),%xmm0
movsd  %xmm0,0xc0(%rsp)
mov    0x70(%rsp),%rax
sub    0x80(%rsp),%eax
sub    0xc8(%rsp),%esi
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
cvtss2sd %xmm0,%xmm0
mulsd  0x18b8(%rip),%xmm0
xorps  %xmm1,%xmm1
cvtsd2ss %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2ss %esi,%xmm0
cvtss2sd %xmm0,%xmm0
mulsd  0x1906(%rip),%xmm0
xorps  %xmm2,%xmm2
cvtsd2ss %xmm0,%xmm2
movaps %xmm1,%xmm0
addss  %xmm2,%xmm0
subss  %xmm2,%xmm1
mov    -0x78(%rsp),%rax
sub    0x40(%rsp),%eax
sub    -0x50(%rsp),%r8d
xorps  %xmm2,%xmm2
cvtsi2ss %eax,%xmm2
cvtss2sd %xmm2,%xmm2
mulsd  0x1873(%rip),%xmm2
cvtsd2ss %xmm2,%xmm2
xorps  %xmm3,%xmm3
cvtss2sd %xmm1,%xmm3
xorps  %xmm1,%xmm1
cvtsi2ss %r8d,%xmm1
mulsd  0x18d0(%rip),%xmm3
movsd  %xmm3,-0x50(%rsp)
cvtss2sd %xmm1,%xmm1
mulsd  0x189e(%rip),%xmm1
cvtsd2ss %xmm1,%xmm1
movaps %xmm2,%xmm12
addss  %xmm1,%xmm12
subss  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm10,%xmm1
movsd  %xmm1,0x40(%rsp)
mov    0x20(%rsp),%rax
sub    0x30(%rsp),%eax
sub    0xd0(%rsp),%r10d
xorps  %xmm1,%xmm1
cvtsi2ss %eax,%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  0x1807(%rip),%xmm1
cvtsd2ss %xmm1,%xmm1
xorps  %xmm2,%xmm2
cvtsi2ss %r10d,%xmm2
cvtss2sd %xmm2,%xmm2
mulsd  0x1837(%rip),%xmm2
cvtsd2ss %xmm2,%xmm2
movaps %xmm1,%xmm10
addss  %xmm2,%xmm10
subss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm8,%xmm1
movsd  %xmm1,-0x78(%rsp)
mov    -0x10(%rsp),%rax
sub    0x10(%rsp),%eax
mov    -0x18(%rsp),%rcx
sub    -0x80(%rsp),%ecx
sub    -0x28(%rsp),%r15d
sub    0xd8(%rsp),%r11d
xorps  %xmm1,%xmm1
cvtsi2ss %eax,%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  0x17a5(%rip),%xmm1
cvtsd2ss %xmm1,%xmm1
xorps  %xmm2,%xmm2
cvtsi2ss %ecx,%xmm2
cvtss2sd %xmm2,%xmm2
mulsd  0x1796(%rip),%xmm2
cvtsd2ss %xmm2,%xmm2
xorps  %xmm3,%xmm3
cvtsi2ss %r11d,%xmm3
cvtss2sd %xmm3,%xmm3
mulsd  0x17ae(%rip),%xmm3
cvtsd2ss %xmm3,%xmm3
movaps %xmm1,%xmm6
addss  %xmm3,%xmm6
cvtsi2ss %r15d,%xmm5
subss  %xmm3,%xmm1
xorps  %xmm3,%xmm3
cvtss2sd %xmm5,%xmm3
mulsd  0x1763(%rip),%xmm3
sub    -0x48(%rsp),%ebx
xorps  %xmm5,%xmm5
cvtsi2ss %ebx,%xmm5
cvtss2sd %xmm5,%xmm5
mulsd  0x176c(%rip),%xmm5
cvtss2sd %xmm1,%xmm13
mulsd  %xmm14,%xmm13
xorps  %xmm1,%xmm1
cvtsd2ss %xmm5,%xmm1
movaps %xmm2,%xmm8
addss  %xmm1,%xmm8
subss  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtsd2ss %xmm3,%xmm1
sub    -0x30(%rsp),%r14d
cvtss2sd %xmm2,%xmm9
xorps  %xmm2,%xmm2
cvtsi2ss %r14d,%xmm2
mulsd  0x1784(%rip),%xmm9
cvtss2sd %xmm2,%xmm2
mulsd  0x1718(%rip),%xmm2
cvtsd2ss %xmm2,%xmm4
movaps %xmm1,%xmm2
addss  %xmm4,%xmm2
subss  %xmm4,%xmm1
sub    -0x20(%rsp),%r13d
xorps  %xmm4,%xmm4
cvtsi2ss %r13d,%xmm4
cvtss2sd %xmm4,%xmm4
mulsd  0x16e0(%rip),%xmm4
xorps  %xmm3,%xmm3
cvtss2sd %xmm1,%xmm3
mulsd  0x1749(%rip),%xmm3
cvtsd2ss %xmm4,%xmm4
sub    %edi,%r9d
cvtsi2ss %r9d,%xmm7
cvtss2sd %xmm7,%xmm7
mulsd  0x16c1(%rip),%xmm7
xorps  %xmm5,%xmm5
cvtsd2ss %xmm7,%xmm5
movaps %xmm4,%xmm7
addss  %xmm5,%xmm7
subss  %xmm5,%xmm4
xorps  %xmm1,%xmm1
cvtss2sd %xmm4,%xmm1
mulsd  0x1718(%rip),%xmm1
movaps %xmm7,%xmm5
addss  %xmm11,%xmm5
subss  %xmm7,%xmm11
movaps %xmm2,%xmm4
addss  %xmm0,%xmm4
subss  %xmm2,%xmm0
movaps %xmm8,%xmm2
addss  %xmm12,%xmm2
subss  %xmm8,%xmm12
movaps %xmm6,%xmm7
addss  %xmm10,%xmm7
subss  %xmm6,%xmm10
movaps %xmm7,%xmm6
addss  %xmm5,%xmm6
subss  %xmm7,%xmm5
movaps %xmm2,%xmm7
addss  %xmm4,%xmm7
subss  %xmm2,%xmm4
movaps %xmm7,%xmm2
addss  %xmm6,%xmm2
movaps %xmm2,0x70(%rsp)
subss  %xmm7,%xmm6
movss  %xmm6,0x30(%rsp)
xorps  %xmm2,%xmm2
cvtss2sd %xmm5,%xmm2
movsd  0x16d1(%rip),%xmm8
mulsd  %xmm8,%xmm2
xorps  %xmm5,%xmm5
cvtsd2ss %xmm2,%xmm5
xorps  %xmm2,%xmm2
cvtss2sd %xmm4,%xmm2
movsd  0x16bd(%rip),%xmm14
mulsd  %xmm14,%xmm2
cvtsd2ss %xmm2,%xmm2
movaps %xmm2,%xmm4
addss  %xmm5,%xmm4
movaps %xmm4,0x80(%rsp)
subss  %xmm2,%xmm5
movss  %xmm5,0x20(%rsp)
xorps  %xmm2,%xmm2
cvtss2sd %xmm11,%xmm2
movsd  0x1662(%rip),%xmm11
mulsd  %xmm11,%xmm2
cvtsd2ss %xmm2,%xmm2
xorps  %xmm4,%xmm4
cvtss2sd %xmm10,%xmm4
movsd  0x1661(%rip),%xmm5
mulsd  %xmm5,%xmm4
cvtsd2ss %xmm4,%xmm4
movaps %xmm4,%xmm6
addss  %xmm2,%xmm6
subss  %xmm4,%xmm2
cvtss2sd %xmm0,%xmm0
movsd  0x1631(%rip),%xmm10
mulsd  %xmm10,%xmm0
cvtsd2ss %xmm0,%xmm0
xorps  %xmm4,%xmm4
cvtss2sd %xmm12,%xmm4
movsd  0x1620(%rip),%xmm5
mulsd  %xmm5,%xmm4
cvtsd2ss %xmm4,%xmm4
movaps %xmm4,%xmm7
addss  %xmm0,%xmm7
subss  %xmm4,%xmm0
movaps %xmm7,%xmm15
addss  %xmm6,%xmm15
subss  %xmm7,%xmm6
movss  %xmm6,0x10(%rsp)
cvtss2sd %xmm2,%xmm2
mulsd  %xmm8,%xmm2
cvtsd2ss %xmm2,%xmm2
cvtss2sd %xmm0,%xmm0
mulsd  %xmm14,%xmm0
movapd %xmm14,%xmm6
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm14
addss  %xmm2,%xmm14
subss  %xmm0,%xmm2
movss  %xmm2,-0x80(%rsp)
movsd  0xc0(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
xorps  %xmm4,%xmm4
cvtsd2ss %xmm1,%xmm4
movaps %xmm4,%xmm2
addss  %xmm0,%xmm2
subss  %xmm4,%xmm0
xorps  %xmm5,%xmm5
cvtss2sd %xmm0,%xmm5
mulsd  %xmm11,%xmm5
movsd  -0x50(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
cvtsd2ss %xmm3,%xmm1
movaps %xmm1,%xmm7
addss  %xmm0,%xmm7
subss  %xmm1,%xmm0
cvtss2sd %xmm0,%xmm12
mulsd  %xmm10,%xmm12
movsd  0x40(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
xorps  %xmm1,%xmm1
cvtsd2ss %xmm9,%xmm1
movaps %xmm1,%xmm3
addss  %xmm0,%xmm3
subss  %xmm1,%xmm0
cvtss2sd %xmm0,%xmm0
mulsd  0x1551(%rip),%xmm0
movsd  -0x78(%rsp),%xmm1
cvtsd2ss %xmm1,%xmm1
cvtsd2ss %xmm13,%xmm9
movaps %xmm9,%xmm4
addss  %xmm1,%xmm4
subss  %xmm9,%xmm1
xorps  %xmm9,%xmm9
cvtss2sd %xmm1,%xmm9
mulsd  0x152b(%rip),%xmm9
movaps %xmm4,%xmm13
addss  %xmm2,%xmm13
subss  %xmm4,%xmm2
movaps %xmm3,%xmm4
addss  %xmm7,%xmm4
subss  %xmm3,%xmm7
movaps %xmm4,%xmm3
addss  %xmm13,%xmm3
subss  %xmm4,%xmm13
cvtss2sd %xmm2,%xmm2
movapd %xmm8,%xmm4
mulsd  %xmm8,%xmm2
cvtsd2ss %xmm2,%xmm8
xorps  %xmm2,%xmm2
cvtss2sd %xmm7,%xmm2
mulsd  %xmm6,%xmm2
cvtsd2ss %xmm2,%xmm2
movaps %xmm2,%xmm10
addss  %xmm8,%xmm10
subss  %xmm2,%xmm8
xorps  %xmm7,%xmm7
cvtsd2ss %xmm5,%xmm7
xorps  %xmm1,%xmm1
cvtsd2ss %xmm9,%xmm1
movaps %xmm1,%xmm9
addss  %xmm7,%xmm9
subss  %xmm1,%xmm7
xorps  %xmm1,%xmm1
cvtss2sd %xmm7,%xmm1
mulsd  %xmm4,%xmm1
xorps  %xmm7,%xmm7
cvtsd2ss %xmm12,%xmm7
cvtsd2ss %xmm0,%xmm0
movaps %xmm0,%xmm12
addss  %xmm7,%xmm12
subss  %xmm0,%xmm7
cvtss2sd %xmm7,%xmm7
mulsd  %xmm6,%xmm7
movaps %xmm12,%xmm0
addss  %xmm9,%xmm0
subss  %xmm12,%xmm9
cvtsd2ss %xmm1,%xmm6
xorps  %xmm1,%xmm1
cvtsd2ss %xmm7,%xmm1
movaps %xmm1,%xmm11
addss  %xmm6,%xmm11
subss  %xmm1,%xmm6
movss  -0x38(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  0x146e(%rip),%xmm5
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x78(%rsp)
movss  -0x40(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x40(%rsp)
movss  0xc(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x20(%rsp)
movss  0x8(%rsp),%xmm1
xorps  %xmm4,%xmm4
cvtss2sd %xmm1,%xmm4
mulsd  %xmm5,%xmm4
movss  0x4(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x18(%rsp)
movss  (%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x48(%rsp)
movss  -0x4(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x28(%rsp)
movss  -0x58(%rsp),%xmm1
xorps  %xmm2,%xmm2
cvtss2sd %xmm1,%xmm2
mulsd  %xmm5,%xmm2
movss  0x30(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x10(%rsp)
movss  0x20(%rsp),%xmm1
xorps  %xmm12,%xmm12
cvtss2sd %xmm1,%xmm12
mulsd  %xmm5,%xmm12
movss  0x10(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
movsd  %xmm1,-0x30(%rsp)
movss  -0x80(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm5,%xmm1
xorps  %xmm7,%xmm7
cvtss2sd %xmm13,%xmm7
mulsd  %xmm5,%xmm7
movsd  %xmm7,-0x80(%rsp)
cvtss2sd %xmm8,%xmm8
mulsd  %xmm5,%xmm8
xorps  %xmm7,%xmm7
cvtss2sd %xmm9,%xmm7
mulsd  %xmm5,%xmm7
movsd  %xmm7,-0x38(%rsp)
cvtss2sd %xmm6,%xmm6
mulsd  %xmm5,%xmm6
cvtsd2ss %xmm4,%xmm4
movaps %xmm4,0x40(%rsp)
movaps 0xf0(%rsp),%xmm7
addss  %xmm4,%xmm7
movaps 0xa0(%rsp),%xmm4
addss  %xmm7,%xmm4
xorps  %xmm5,%xmm5
cvtsd2ss %xmm2,%xmm5
movaps %xmm5,0x30(%rsp)
movaps -0x70(%rsp),%xmm2
addss  %xmm5,%xmm2
movaps %xmm2,-0x70(%rsp)
movaps 0x50(%rsp),%xmm5
addss  %xmm2,%xmm5
movaps %xmm5,0x50(%rsp)
movaps 0xe0(%rsp),%xmm9
addss  %xmm5,%xmm9
cvtsd2ss %xmm1,%xmm1
movaps %xmm1,0x20(%rsp)
addss  %xmm1,%xmm14
addss  %xmm14,%xmm15
xorps  %xmm1,%xmm1
cvtsd2ss %xmm6,%xmm1
movaps %xmm1,0x10(%rsp)
addss  %xmm1,%xmm11
addss  %xmm11,%xmm0
addss  %xmm0,%xmm3
movaps 0x70(%rsp),%xmm2
addss  %xmm3,%xmm2
addss  %xmm15,%xmm3
movaps 0x12d6(%rip),%xmm5
xorps  %xmm5,%xmm2
xorps  %xmm5,%xmm3
xorps  %xmm5,%xmm4
movaps %xmm4,0xa0(%rsp)
movaps %xmm3,%xmm1
unpcklps %xmm4,%xmm1
movaps %xmm9,%xmm6
xorps  %xmm5,%xmm6
movaps %xmm2,%xmm4
unpcklps %xmm6,%xmm2
movlhps %xmm1,%xmm2
movslq 0x90(%rsp),%rax
movups %xmm2,0xc4(%rdx,%rax,4)
unpcklps %xmm6,%xmm3
movaps 0x100(%rsp),%xmm1
xorps  %xmm5,%xmm1
unpcklps %xmm1,%xmm4
movlhps %xmm4,%xmm3
movups %xmm3,0xb4(%rdx,%rax,4)
movsd  -0x40(%rsp),%xmm1
cvtsd2ss %xmm1,%xmm1
movaps %xmm1,0x90(%rsp)
movsd  -0x48(%rsp),%xmm2
cvtsd2ss %xmm2,%xmm13
movaps 0xb0(%rsp),%xmm3
addss  %xmm1,%xmm3
movaps 0x60(%rsp),%xmm1
addss  %xmm13,%xmm1
movaps %xmm1,0x60(%rsp)
cvtsd2ss %xmm12,%xmm12
movaps 0x50(%rsp),%xmm4
addss  %xmm1,%xmm4
movaps 0x80(%rsp),%xmm6
addss  %xmm12,%xmm6
xorps  %xmm9,%xmm9
cvtsd2ss %xmm8,%xmm9
addss  %xmm9,%xmm10
addss  %xmm10,%xmm0
addss  %xmm0,%xmm15
addss  %xmm6,%xmm0
xorps  %xmm5,%xmm15
xorps  %xmm5,%xmm4
movaps %xmm15,%xmm1
unpcklps %xmm4,%xmm1
xorps  %xmm5,%xmm0
xorps  %xmm5,%xmm3
movaps %xmm3,0xb0(%rsp)
movaps %xmm0,%xmm2
unpcklps %xmm3,%xmm2
movlhps %xmm2,%xmm1
movups %xmm1,0xd4(%rdx,%rax,4)
unpcklps %xmm4,%xmm0
unpcklps 0xa0(%rsp),%xmm15
movlhps %xmm15,%xmm0
movups %xmm0,0xa4(%rdx,%rax,4)
movsd  -0x20(%rsp),%xmm0
xorps  %xmm15,%xmm15
cvtsd2ss %xmm0,%xmm15
movsd  -0x28(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm8
addss  %xmm15,%xmm7
movaps -0x70(%rsp),%xmm0
addss  %xmm8,%xmm0
movaps %xmm0,-0x70(%rsp)
movsd  -0x30(%rsp),%xmm1
cvtsd2ss %xmm1,%xmm1
movaps 0x60(%rsp),%xmm3
addss  %xmm0,%xmm3
addss  %xmm1,%xmm14
movsd  -0x38(%rsp),%xmm0
xorps  %xmm4,%xmm4
cvtsd2ss %xmm0,%xmm4
addss  %xmm4,%xmm11
addss  %xmm11,%xmm10
addss  %xmm10,%xmm6
addss  %xmm14,%xmm10
xorps  %xmm5,%xmm6
movaps %xmm6,%xmm0
xorps  %xmm5,%xmm3
movaps %xmm6,%xmm2
unpcklps %xmm3,%xmm2
movaps %xmm3,%xmm6
xorps  %xmm5,%xmm10
xorps  %xmm5,%xmm7
movaps %xmm10,%xmm3
unpcklps %xmm7,%xmm3
movlhps %xmm3,%xmm2
movups %xmm2,0xe4(%rdx,%rax,4)
unpcklps %xmm6,%xmm10
unpcklps 0xb0(%rsp),%xmm0
movlhps %xmm0,%xmm10
movups %xmm10,0x94(%rdx,%rax,4)
movsd  -0x18(%rsp),%xmm0
xorps  %xmm10,%xmm10
cvtsd2ss %xmm0,%xmm10
movsd  -0x80(%rsp),%xmm0
xorps  %xmm3,%xmm3
cvtsd2ss %xmm0,%xmm3
addss  %xmm3,%xmm11
addss  %xmm11,%xmm14
xorps  %xmm5,%xmm14
movss  %xmm14,0xf4(%rdx,%rax,4)
unpcklps %xmm7,%xmm14
movaps -0x70(%rsp),%xmm2
addss  %xmm10,%xmm2
movsd  -0x10(%rsp),%xmm0
xorps  %xmm6,%xmm6
cvtsd2ss %xmm0,%xmm6
addss  %xmm6,%xmm11
xorps  %xmm5,%xmm2
movss  %xmm2,0xf8(%rdx,%rax,4)
xorps  %xmm5,%xmm11
movaps %xmm11,%xmm7
unpcklps %xmm2,%xmm7
movlhps %xmm14,%xmm7
movups %xmm7,0x84(%rdx,%rax,4)
movss  %xmm11,0xfc(%rdx,%rax,4)
movsd  -0x78(%rsp),%xmm0
xorps  %xmm7,%xmm7
cvtsd2ss %xmm0,%xmm7
movaps 0x10(%rsp),%xmm14
addss  %xmm14,%xmm4
addss  %xmm4,%xmm3
addss  %xmm3,%xmm6
movss  %xmm7,(%rdx,%rax,4)
xorps  %xmm5,%xmm7
movss  %xmm6,0x4(%rdx,%rax,4)
xorps  %xmm5,%xmm6
unpcklps %xmm7,%xmm6
movaps 0x30(%rsp),%xmm0
addss  %xmm0,%xmm8
addss  %xmm8,%xmm10
movaps 0x20(%rsp),%xmm11
addss  %xmm11,%xmm1
addss  %xmm1,%xmm3
movss  %xmm10,0x8(%rdx,%rax,4)
xorps  %xmm5,%xmm10
movaps %xmm3,%xmm7
xorps  %xmm5,%xmm7
unpcklps %xmm10,%xmm7
movlhps %xmm6,%xmm7
movups %xmm7,0x74(%rdx,%rax,4)
movss  %xmm3,0xc(%rdx,%rax,4)
movaps 0x40(%rsp),%xmm6
addss  %xmm6,%xmm15
addss  %xmm13,%xmm8
addss  %xmm9,%xmm4
addss  %xmm4,%xmm1
addss  %xmm12,%xmm4
movss  %xmm15,0x10(%rdx,%rax,4)
xorps  %xmm5,%xmm15
movss  %xmm1,0x14(%rdx,%rax,4)
xorps  %xmm5,%xmm1
unpcklps %xmm15,%xmm1
movss  %xmm8,0x18(%rdx,%rax,4)
xorps  %xmm5,%xmm8
movaps %xmm4,%xmm2
xorps  %xmm5,%xmm2
unpcklps %xmm8,%xmm2
movlhps %xmm1,%xmm2
movups %xmm2,0x64(%rdx,%rax,4)
movss  %xmm4,0x1c(%rdx,%rax,4)
addss  %xmm0,%xmm13
movaps %xmm0,%xmm3
movaps %xmm14,%xmm2
addss  %xmm14,%xmm9
addss  %xmm9,%xmm12
addss  %xmm11,%xmm9
movaps %xmm11,%xmm4
movaps 0x90(%rsp),%xmm0
movss  %xmm0,0x20(%rdx,%rax,4)
xorps  %xmm5,%xmm0
movss  %xmm12,0x24(%rdx,%rax,4)
xorps  %xmm5,%xmm12
unpcklps %xmm0,%xmm12
movss  %xmm13,0x28(%rdx,%rax,4)
xorps  %xmm5,%xmm13
movaps %xmm9,%xmm0
xorps  %xmm5,%xmm0
unpcklps %xmm13,%xmm0
movlhps %xmm12,%xmm0
movups %xmm0,0x54(%rdx,%rax,4)
movss  %xmm9,0x2c(%rdx,%rax,4)
addss  %xmm2,%xmm4
movaps %xmm6,%xmm0
movss  %xmm6,0x30(%rdx,%rax,4)
xorps  %xmm5,%xmm0
movaps %xmm0,%xmm1
movss  %xmm4,0x34(%rdx,%rax,4)
movaps %xmm4,%xmm0
xorps  %xmm5,%xmm0
unpcklps %xmm1,%xmm0
movaps %xmm3,%xmm1
movss  %xmm3,0x38(%rdx,%rax,4)
xorps  %xmm5,%xmm1
xorps  %xmm2,%xmm5
unpcklps %xmm1,%xmm5
movlhps %xmm0,%xmm5
movups %xmm5,0x44(%rdx,%rax,4)
movss  %xmm2,0x3c(%rdx,%rax,4)
movl   $0x0,0x40(%rdx,%rax,4)
add    $0x118,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define void @matrix_transform([3 x i32]* %0, i32 %1, float* %2, i32 %3) {
%5 = alloca [3 x i32]*
%6 = alloca i32
%7 = alloca float*
%8 = alloca i32
%9 = alloca float
%10 = alloca float
%11 = alloca float
%12 = alloca float
%13 = alloca float
%14 = alloca float
%15 = alloca float
%16 = alloca float
%17 = alloca float
%18 = alloca float
%19 = alloca float
%20 = alloca float
%21 = alloca float
%22 = alloca float
%23 = alloca float
%24 = alloca float
%25 = alloca float
%26 = alloca float
%27 = alloca float
%28 = alloca float
%29 = alloca float
%30 = alloca float
%31 = alloca float
%32 = alloca float
%33 = alloca float
%34 = alloca float
%35 = alloca float
%36 = alloca float
%37 = alloca float
%38 = alloca float
%39 = alloca float
%40 = alloca float
%41 = alloca float
store [3 x i32]* %0, [3 x i32]** %5
store i32 %1, i32* %6
store float* %2, float** %7
store i32 %3, i32* %8
%42 = load [3 x i32]*, [3 x i32]** %5
%43 = getelementptr inbounds [3 x i32], [3 x i32]* %42, i64 0
%44 = load i32, i32* %6
%45 = sext i32 %44 to i64
%46 = getelementptr inbounds [3 x i32], [3 x i32]* %43, i64 0, i64 %45
%47 = load i32, i32* %46
%48 = load [3 x i32]*, [3 x i32]** %5
%49 = getelementptr inbounds [3 x i32], [3 x i32]* %48, i64 31
%50 = load i32, i32* %6
%51 = sext i32 %50 to i64
%52 = getelementptr inbounds [3 x i32], [3 x i32]* %49, i64 0, i64 %51
%53 = load i32, i32* %52
%54 = add nsw i32 %47, %53
%55 = sitofp i32 %54 to float
store float %55, float* %9
%56 = load [3 x i32]*, [3 x i32]** %5
%57 = getelementptr inbounds [3 x i32], [3 x i32]* %56, i64 0
%58 = load i32, i32* %6
%59 = sext i32 %58 to i64
%60 = getelementptr inbounds [3 x i32], [3 x i32]* %57, i64 0, i64 %59
%61 = load i32, i32* %60
%62 = load [3 x i32]*, [3 x i32]** %5
%63 = getelementptr inbounds [3 x i32], [3 x i32]* %62, i64 31
%64 = load i32, i32* %6
%65 = sext i32 %64 to i64
%66 = getelementptr inbounds [3 x i32], [3 x i32]* %63, i64 0, i64 %65
%67 = load i32, i32* %66
%68 = sub nsw i32 %61, %67
%69 = sitofp i32 %68 to float
%70 = fpext float %69 to double
%71 = fmul double %70, 0x3FE004F094365D26
%72 = fptrunc double %71 to float
store float %72, float* %10
%73 = load [3 x i32]*, [3 x i32]** %5
%74 = getelementptr inbounds [3 x i32], [3 x i32]* %73, i64 1
%75 = load i32, i32* %6
%76 = sext i32 %75 to i64
%77 = getelementptr inbounds [3 x i32], [3 x i32]* %74, i64 0, i64 %76
%78 = load i32, i32* %77
%79 = load [3 x i32]*, [3 x i32]** %5
%80 = getelementptr inbounds [3 x i32], [3 x i32]* %79, i64 30
%81 = load i32, i32* %6
%82 = sext i32 %81 to i64
%83 = getelementptr inbounds [3 x i32], [3 x i32]* %80, i64 0, i64 %82
%84 = load i32, i32* %83
%85 = add nsw i32 %78, %84
%86 = sitofp i32 %85 to float
store float %86, float* %11
%87 = load [3 x i32]*, [3 x i32]** %5
%88 = getelementptr inbounds [3 x i32], [3 x i32]* %87, i64 1
%89 = load i32, i32* %6
%90 = sext i32 %89 to i64
%91 = getelementptr inbounds [3 x i32], [3 x i32]* %88, i64 0, i64 %90
%92 = load i32, i32* %91
%93 = load [3 x i32]*, [3 x i32]** %5
%94 = getelementptr inbounds [3 x i32], [3 x i32]* %93, i64 30
%95 = load i32, i32* %6
%96 = sext i32 %95 to i64
%97 = getelementptr inbounds [3 x i32], [3 x i32]* %94, i64 0, i64 %96
%98 = load i32, i32* %97
%99 = sub nsw i32 %92, %98
%100 = sitofp i32 %99 to float
%101 = fpext float %100 to double
%102 = fmul double %101, 0x3FE02CD16F3ADE4F
%103 = fptrunc double %102 to float
store float %103, float* %12
%104 = load [3 x i32]*, [3 x i32]** %5
%105 = getelementptr inbounds [3 x i32], [3 x i32]* %104, i64 2
%106 = load i32, i32* %6
%107 = sext i32 %106 to i64
%108 = getelementptr inbounds [3 x i32], [3 x i32]* %105, i64 0, i64 %107
%109 = load i32, i32* %108
%110 = load [3 x i32]*, [3 x i32]** %5
%111 = getelementptr inbounds [3 x i32], [3 x i32]* %110, i64 29
%112 = load i32, i32* %6
%113 = sext i32 %112 to i64
%114 = getelementptr inbounds [3 x i32], [3 x i32]* %111, i64 0, i64 %113
%115 = load i32, i32* %114
%116 = add nsw i32 %109, %115
%117 = sitofp i32 %116 to float
store float %117, float* %13
%118 = load [3 x i32]*, [3 x i32]** %5
%119 = getelementptr inbounds [3 x i32], [3 x i32]* %118, i64 2
%120 = load i32, i32* %6
%121 = sext i32 %120 to i64
%122 = getelementptr inbounds [3 x i32], [3 x i32]* %119, i64 0, i64 %121
%123 = load i32, i32* %122
%124 = load [3 x i32]*, [3 x i32]** %5
%125 = getelementptr inbounds [3 x i32], [3 x i32]* %124, i64 29
%126 = load i32, i32* %6
%127 = sext i32 %126 to i64
%128 = getelementptr inbounds [3 x i32], [3 x i32]* %125, i64 0, i64 %127
%129 = load i32, i32* %128
%130 = sub nsw i32 %123, %129
%131 = sitofp i32 %130 to float
%132 = fpext float %131 to double
%133 = fmul double %132, 0x3FE07E8B5B5DC657
%134 = fptrunc double %133 to float
store float %134, float* %14
%135 = load [3 x i32]*, [3 x i32]** %5
%136 = getelementptr inbounds [3 x i32], [3 x i32]* %135, i64 3
%137 = load i32, i32* %6
%138 = sext i32 %137 to i64
%139 = getelementptr inbounds [3 x i32], [3 x i32]* %136, i64 0, i64 %138
%140 = load i32, i32* %139
%141 = load [3 x i32]*, [3 x i32]** %5
%142 = getelementptr inbounds [3 x i32], [3 x i32]* %141, i64 28
%143 = load i32, i32* %6
%144 = sext i32 %143 to i64
%145 = getelementptr inbounds [3 x i32], [3 x i32]* %142, i64 0, i64 %144
%146 = load i32, i32* %145
%147 = add nsw i32 %140, %146
%148 = sitofp i32 %147 to float
store float %148, float* %15
%149 = load [3 x i32]*, [3 x i32]** %5
%150 = getelementptr inbounds [3 x i32], [3 x i32]* %149, i64 3
%151 = load i32, i32* %6
%152 = sext i32 %151 to i64
%153 = getelementptr inbounds [3 x i32], [3 x i32]* %150, i64 0, i64 %152
%154 = load i32, i32* %153
%155 = load [3 x i32]*, [3 x i32]** %5
%156 = getelementptr inbounds [3 x i32], [3 x i32]* %155, i64 28
%157 = load i32, i32* %6
%158 = sext i32 %157 to i64
%159 = getelementptr inbounds [3 x i32], [3 x i32]* %156, i64 0, i64 %158
%160 = load i32, i32* %159
%161 = sub nsw i32 %154, %160
%162 = sitofp i32 %161 to float
%163 = fpext float %162 to double
%164 = fmul double %163, 0x3FE0FE4D08307805
%165 = fptrunc double %164 to float
store float %165, float* %16
%166 = load [3 x i32]*, [3 x i32]** %5
%167 = getelementptr inbounds [3 x i32], [3 x i32]* %166, i64 4
%168 = load i32, i32* %6
%169 = sext i32 %168 to i64
%170 = getelementptr inbounds [3 x i32], [3 x i32]* %167, i64 0, i64 %169
%171 = load i32, i32* %170
%172 = load [3 x i32]*, [3 x i32]** %5
%173 = getelementptr inbounds [3 x i32], [3 x i32]* %172, i64 27
%174 = load i32, i32* %6
%175 = sext i32 %174 to i64
%176 = getelementptr inbounds [3 x i32], [3 x i32]* %173, i64 0, i64 %175
%177 = load i32, i32* %176
%178 = add nsw i32 %171, %177
%179 = sitofp i32 %178 to float
store float %179, float* %17
%180 = load [3 x i32]*, [3 x i32]** %5
%181 = getelementptr inbounds [3 x i32], [3 x i32]* %180, i64 4
%182 = load i32, i32* %6
%183 = sext i32 %182 to i64
%184 = getelementptr inbounds [3 x i32], [3 x i32]* %181, i64 0, i64 %183
%185 = load i32, i32* %184
%186 = load [3 x i32]*, [3 x i32]** %5
%187 = getelementptr inbounds [3 x i32], [3 x i32]* %186, i64 27
%188 = load i32, i32* %6
%189 = sext i32 %188 to i64
%190 = getelementptr inbounds [3 x i32], [3 x i32]* %187, i64 0, i64 %189
%191 = load i32, i32* %190
%192 = sub nsw i32 %185, %191
%193 = sitofp i32 %192 to float
%194 = fpext float %193 to double
%195 = fmul double %194, 0x3FE1B306F11832E8
%196 = fptrunc double %195 to float
store float %196, float* %18
%197 = load [3 x i32]*, [3 x i32]** %5
%198 = getelementptr inbounds [3 x i32], [3 x i32]* %197, i64 5
%199 = load i32, i32* %6
%200 = sext i32 %199 to i64
%201 = getelementptr inbounds [3 x i32], [3 x i32]* %198, i64 0, i64 %200
%202 = load i32, i32* %201
%203 = load [3 x i32]*, [3 x i32]** %5
%204 = getelementptr inbounds [3 x i32], [3 x i32]* %203, i64 26
%205 = load i32, i32* %6
%206 = sext i32 %205 to i64
%207 = getelementptr inbounds [3 x i32], [3 x i32]* %204, i64 0, i64 %206
%208 = load i32, i32* %207
%209 = add nsw i32 %202, %208
%210 = sitofp i32 %209 to float
store float %210, float* %19
%211 = load [3 x i32]*, [3 x i32]** %5
%212 = getelementptr inbounds [3 x i32], [3 x i32]* %211, i64 5
%213 = load i32, i32* %6
%214 = sext i32 %213 to i64
%215 = getelementptr inbounds [3 x i32], [3 x i32]* %212, i64 0, i64 %214
%216 = load i32, i32* %215
%217 = load [3 x i32]*, [3 x i32]** %5
%218 = getelementptr inbounds [3 x i32], [3 x i32]* %217, i64 26
%219 = load i32, i32* %6
%220 = sext i32 %219 to i64
%221 = getelementptr inbounds [3 x i32], [3 x i32]* %218, i64 0, i64 %220
%222 = load i32, i32* %221
%223 = sub nsw i32 %216, %222
%224 = sitofp i32 %223 to float
%225 = fpext float %224 to double
%226 = fmul double %225, 0x3FE2A7673C04775B
%227 = fptrunc double %226 to float
store float %227, float* %20
%228 = load [3 x i32]*, [3 x i32]** %5
%229 = getelementptr inbounds [3 x i32], [3 x i32]* %228, i64 6
%230 = load i32, i32* %6
%231 = sext i32 %230 to i64
%232 = getelementptr inbounds [3 x i32], [3 x i32]* %229, i64 0, i64 %231
%233 = load i32, i32* %232
%234 = load [3 x i32]*, [3 x i32]** %5
%235 = getelementptr inbounds [3 x i32], [3 x i32]* %234, i64 25
%236 = load i32, i32* %6
%237 = sext i32 %236 to i64
%238 = getelementptr inbounds [3 x i32], [3 x i32]* %235, i64 0, i64 %237
%239 = load i32, i32* %238
%240 = add nsw i32 %233, %239
%241 = sitofp i32 %240 to float
store float %241, float* %21
%242 = load [3 x i32]*, [3 x i32]** %5
%243 = getelementptr inbounds [3 x i32], [3 x i32]* %242, i64 6
%244 = load i32, i32* %6
%245 = sext i32 %244 to i64
%246 = getelementptr inbounds [3 x i32], [3 x i32]* %243, i64 0, i64 %245
%247 = load i32, i32* %246
%248 = load [3 x i32]*, [3 x i32]** %5
%249 = getelementptr inbounds [3 x i32], [3 x i32]* %248, i64 25
%250 = load i32, i32* %6
%251 = sext i32 %250 to i64
%252 = getelementptr inbounds [3 x i32], [3 x i32]* %249, i64 0, i64 %251
%253 = load i32, i32* %252
%254 = sub nsw i32 %247, %253
%255 = sitofp i32 %254 to float
%256 = fpext float %255 to double
%257 = fmul double %256, 0x3FE3EB8DC44212AE
%258 = fptrunc double %257 to float
store float %258, float* %22
%259 = load [3 x i32]*, [3 x i32]** %5
%260 = getelementptr inbounds [3 x i32], [3 x i32]* %259, i64 7
%261 = load i32, i32* %6
%262 = sext i32 %261 to i64
%263 = getelementptr inbounds [3 x i32], [3 x i32]* %260, i64 0, i64 %262
%264 = load i32, i32* %263
%265 = load [3 x i32]*, [3 x i32]** %5
%266 = getelementptr inbounds [3 x i32], [3 x i32]* %265, i64 24
%267 = load i32, i32* %6
%268 = sext i32 %267 to i64
%269 = getelementptr inbounds [3 x i32], [3 x i32]* %266, i64 0, i64 %268
%270 = load i32, i32* %269
%271 = add nsw i32 %264, %270
%272 = sitofp i32 %271 to float
store float %272, float* %23
%273 = load [3 x i32]*, [3 x i32]** %5
%274 = getelementptr inbounds [3 x i32], [3 x i32]* %273, i64 7
%275 = load i32, i32* %6
%276 = sext i32 %275 to i64
%277 = getelementptr inbounds [3 x i32], [3 x i32]* %274, i64 0, i64 %276
%278 = load i32, i32* %277
%279 = load [3 x i32]*, [3 x i32]** %5
%280 = getelementptr inbounds [3 x i32], [3 x i32]* %279, i64 24
%281 = load i32, i32* %6
%282 = sext i32 %281 to i64
%283 = getelementptr inbounds [3 x i32], [3 x i32]* %280, i64 0, i64 %282
%284 = load i32, i32* %283
%285 = sub nsw i32 %278, %284
%286 = sitofp i32 %285 to float
%287 = fpext float %286 to double
%288 = fmul double %287, 0x3FE59807A9B3C051
%289 = fptrunc double %288 to float
store float %289, float* %24
%290 = load [3 x i32]*, [3 x i32]** %5
%291 = getelementptr inbounds [3 x i32], [3 x i32]* %290, i64 8
%292 = load i32, i32* %6
%293 = sext i32 %292 to i64
%294 = getelementptr inbounds [3 x i32], [3 x i32]* %291, i64 0, i64 %293
%295 = load i32, i32* %294
%296 = load [3 x i32]*, [3 x i32]** %5
%297 = getelementptr inbounds [3 x i32], [3 x i32]* %296, i64 23
%298 = load i32, i32* %6
%299 = sext i32 %298 to i64
%300 = getelementptr inbounds [3 x i32], [3 x i32]* %297, i64 0, i64 %299
%301 = load i32, i32* %300
%302 = add nsw i32 %295, %301
%303 = sitofp i32 %302 to float
store float %303, float* %25
%304 = load [3 x i32]*, [3 x i32]** %5
%305 = getelementptr inbounds [3 x i32], [3 x i32]* %304, i64 8
%306 = load i32, i32* %6
%307 = sext i32 %306 to i64
%308 = getelementptr inbounds [3 x i32], [3 x i32]* %305, i64 0, i64 %307
%309 = load i32, i32* %308
%310 = load [3 x i32]*, [3 x i32]** %5
%311 = getelementptr inbounds [3 x i32], [3 x i32]* %310, i64 23
%312 = load i32, i32* %6
%313 = sext i32 %312 to i64
%314 = getelementptr inbounds [3 x i32], [3 x i32]* %311, i64 0, i64 %313
%315 = load i32, i32* %314
%316 = sub nsw i32 %309, %315
%317 = sitofp i32 %316 to float
%318 = fpext float %317 to double
%319 = fmul double %318, 0x3FE7D33DBAD475D4
%320 = fptrunc double %319 to float
store float %320, float* %26
%321 = load [3 x i32]*, [3 x i32]** %5
%322 = getelementptr inbounds [3 x i32], [3 x i32]* %321, i64 9
%323 = load i32, i32* %6
%324 = sext i32 %323 to i64
%325 = getelementptr inbounds [3 x i32], [3 x i32]* %322, i64 0, i64 %324
%326 = load i32, i32* %325
%327 = load [3 x i32]*, [3 x i32]** %5
%328 = getelementptr inbounds [3 x i32], [3 x i32]* %327, i64 22
%329 = load i32, i32* %6
%330 = sext i32 %329 to i64
%331 = getelementptr inbounds [3 x i32], [3 x i32]* %328, i64 0, i64 %330
%332 = load i32, i32* %331
%333 = add nsw i32 %326, %332
%334 = sitofp i32 %333 to float
store float %334, float* %27
%335 = load [3 x i32]*, [3 x i32]** %5
%336 = getelementptr inbounds [3 x i32], [3 x i32]* %335, i64 9
%337 = load i32, i32* %6
%338 = sext i32 %337 to i64
%339 = getelementptr inbounds [3 x i32], [3 x i32]* %336, i64 0, i64 %338
%340 = load i32, i32* %339
%341 = load [3 x i32]*, [3 x i32]** %5
%342 = getelementptr inbounds [3 x i32], [3 x i32]* %341, i64 22
%343 = load i32, i32* %6
%344 = sext i32 %343 to i64
%345 = getelementptr inbounds [3 x i32], [3 x i32]* %342, i64 0, i64 %344
%346 = load i32, i32* %345
%347 = sub nsw i32 %340, %346
%348 = sitofp i32 %347 to float
%349 = fpext float %348 to double
%350 = fmul double %349, 0x3FEADBF3C99F11BF
%351 = fptrunc double %350 to float
store float %351, float* %28
%352 = load [3 x i32]*, [3 x i32]** %5
%353 = getelementptr inbounds [3 x i32], [3 x i32]* %352, i64 10
%354 = load i32, i32* %6
%355 = sext i32 %354 to i64
%356 = getelementptr inbounds [3 x i32], [3 x i32]* %353, i64 0, i64 %355
%357 = load i32, i32* %356
%358 = load [3 x i32]*, [3 x i32]** %5
%359 = getelementptr inbounds [3 x i32], [3 x i32]* %358, i64 21
%360 = load i32, i32* %6
%361 = sext i32 %360 to i64
%362 = getelementptr inbounds [3 x i32], [3 x i32]* %359, i64 0, i64 %361
%363 = load i32, i32* %362
%364 = add nsw i32 %357, %363
%365 = sitofp i32 %364 to float
store float %365, float* %29
%366 = load [3 x i32]*, [3 x i32]** %5
%367 = getelementptr inbounds [3 x i32], [3 x i32]* %366, i64 10
%368 = load i32, i32* %6
%369 = sext i32 %368 to i64
%370 = getelementptr inbounds [3 x i32], [3 x i32]* %367, i64 0, i64 %369
%371 = load i32, i32* %370
%372 = load [3 x i32]*, [3 x i32]** %5
%373 = getelementptr inbounds [3 x i32], [3 x i32]* %372, i64 21
%374 = load i32, i32* %6
%375 = sext i32 %374 to i64
%376 = getelementptr inbounds [3 x i32], [3 x i32]* %373, i64 0, i64 %375
%377 = load i32, i32* %376
%378 = sub nsw i32 %371, %377
%379 = sitofp i32 %378 to float
%380 = fpext float %379 to double
%381 = fmul double %380, 0x3FEF1F476CD7DC46
%382 = fptrunc double %381 to float
store float %382, float* %30
%383 = load [3 x i32]*, [3 x i32]** %5
%384 = getelementptr inbounds [3 x i32], [3 x i32]* %383, i64 11
%385 = load i32, i32* %6
%386 = sext i32 %385 to i64
%387 = getelementptr inbounds [3 x i32], [3 x i32]* %384, i64 0, i64 %386
%388 = load i32, i32* %387
%389 = load [3 x i32]*, [3 x i32]** %5
%390 = getelementptr inbounds [3 x i32], [3 x i32]* %389, i64 20
%391 = load i32, i32* %6
%392 = sext i32 %391 to i64
%393 = getelementptr inbounds [3 x i32], [3 x i32]* %390, i64 0, i64 %392
%394 = load i32, i32* %393
%395 = add nsw i32 %388, %394
%396 = sitofp i32 %395 to float
store float %396, float* %31
%397 = load [3 x i32]*, [3 x i32]** %5
%398 = getelementptr inbounds [3 x i32], [3 x i32]* %397, i64 11
%399 = load i32, i32* %6
%400 = sext i32 %399 to i64
%401 = getelementptr inbounds [3 x i32], [3 x i32]* %398, i64 0, i64 %400
%402 = load i32, i32* %401
%403 = load [3 x i32]*, [3 x i32]** %5
%404 = getelementptr inbounds [3 x i32], [3 x i32]* %403, i64 20
%405 = load i32, i32* %6
%406 = sext i32 %405 to i64
%407 = getelementptr inbounds [3 x i32], [3 x i32]* %404, i64 0, i64 %406
%408 = load i32, i32* %407
%409 = sub nsw i32 %402, %408
%410 = sitofp i32 %409 to float
%411 = fpext float %410 to double
%412 = fmul double %411, 0x3FF2B606A5CB7E06
%413 = fptrunc double %412 to float
store float %413, float* %32
%414 = load [3 x i32]*, [3 x i32]** %5
%415 = getelementptr inbounds [3 x i32], [3 x i32]* %414, i64 12
%416 = load i32, i32* %6
%417 = sext i32 %416 to i64
%418 = getelementptr inbounds [3 x i32], [3 x i32]* %415, i64 0, i64 %417
%419 = load i32, i32* %418
%420 = load [3 x i32]*, [3 x i32]** %5
%421 = getelementptr inbounds [3 x i32], [3 x i32]* %420, i64 19
%422 = load i32, i32* %6
%423 = sext i32 %422 to i64
%424 = getelementptr inbounds [3 x i32], [3 x i32]* %421, i64 0, i64 %423
%425 = load i32, i32* %424
%426 = add nsw i32 %419, %425
%427 = sitofp i32 %426 to float
store float %427, float* %33
%428 = load [3 x i32]*, [3 x i32]** %5
%429 = getelementptr inbounds [3 x i32], [3 x i32]* %428, i64 12
%430 = load i32, i32* %6
%431 = sext i32 %430 to i64
%432 = getelementptr inbounds [3 x i32], [3 x i32]* %429, i64 0, i64 %431
%433 = load i32, i32* %432
%434 = load [3 x i32]*, [3 x i32]** %5
%435 = getelementptr inbounds [3 x i32], [3 x i32]* %434, i64 19
%436 = load i32, i32* %6
%437 = sext i32 %436 to i64
%438 = getelementptr inbounds [3 x i32], [3 x i32]* %435, i64 0, i64 %437
%439 = load i32, i32* %438
%440 = sub nsw i32 %433, %439
%441 = sitofp i32 %440 to float
%442 = fpext float %441 to double
%443 = fmul double %442, 0x3FF7BF23658EE8CF
%444 = fptrunc double %443 to float
store float %444, float* %34
%445 = load [3 x i32]*, [3 x i32]** %5
%446 = getelementptr inbounds [3 x i32], [3 x i32]* %445, i64 13
%447 = load i32, i32* %6
%448 = sext i32 %447 to i64
%449 = getelementptr inbounds [3 x i32], [3 x i32]* %446, i64 0, i64 %448
%450 = load i32, i32* %449
%451 = load [3 x i32]*, [3 x i32]** %5
%452 = getelementptr inbounds [3 x i32], [3 x i32]* %451, i64 18
%453 = load i32, i32* %6
%454 = sext i32 %453 to i64
%455 = getelementptr inbounds [3 x i32], [3 x i32]* %452, i64 0, i64 %454
%456 = load i32, i32* %455
%457 = add nsw i32 %450, %456
%458 = sitofp i32 %457 to float
store float %458, float* %35
%459 = load [3 x i32]*, [3 x i32]** %5
%460 = getelementptr inbounds [3 x i32], [3 x i32]* %459, i64 13
%461 = load i32, i32* %6
%462 = sext i32 %461 to i64
%463 = getelementptr inbounds [3 x i32], [3 x i32]* %460, i64 0, i64 %462
%464 = load i32, i32* %463
%465 = load [3 x i32]*, [3 x i32]** %5
%466 = getelementptr inbounds [3 x i32], [3 x i32]* %465, i64 18
%467 = load i32, i32* %6
%468 = sext i32 %467 to i64
%469 = getelementptr inbounds [3 x i32], [3 x i32]* %466, i64 0, i64 %468
%470 = load i32, i32* %469
%471 = sub nsw i32 %464, %470
%472 = sitofp i32 %471 to float
%473 = fpext float %472 to double
%474 = fmul double %473, 0x40007655E3E08553
%475 = fptrunc double %474 to float
store float %475, float* %36
%476 = load [3 x i32]*, [3 x i32]** %5
%477 = getelementptr inbounds [3 x i32], [3 x i32]* %476, i64 14
%478 = load i32, i32* %6
%479 = sext i32 %478 to i64
%480 = getelementptr inbounds [3 x i32], [3 x i32]* %477, i64 0, i64 %479
%481 = load i32, i32* %480
%482 = load [3 x i32]*, [3 x i32]** %5
%483 = getelementptr inbounds [3 x i32], [3 x i32]* %482, i64 17
%484 = load i32, i32* %6
%485 = sext i32 %484 to i64
%486 = getelementptr inbounds [3 x i32], [3 x i32]* %483, i64 0, i64 %485
%487 = load i32, i32* %486
%488 = add nsw i32 %481, %487
%489 = sitofp i32 %488 to float
store float %489, float* %37
%490 = load [3 x i32]*, [3 x i32]** %5
%491 = getelementptr inbounds [3 x i32], [3 x i32]* %490, i64 14
%492 = load i32, i32* %6
%493 = sext i32 %492 to i64
%494 = getelementptr inbounds [3 x i32], [3 x i32]* %491, i64 0, i64 %493
%495 = load i32, i32* %494
%496 = load [3 x i32]*, [3 x i32]** %5
%497 = getelementptr inbounds [3 x i32], [3 x i32]* %496, i64 17
%498 = load i32, i32* %6
%499 = sext i32 %498 to i64
%500 = getelementptr inbounds [3 x i32], [3 x i32]* %497, i64 0, i64 %499
%501 = load i32, i32* %500
%502 = sub nsw i32 %495, %501
%503 = sitofp i32 %502 to float
%504 = fpext float %503 to double
%505 = fmul double %504, 0x400B42C833D73935
%506 = fptrunc double %505 to float
store float %506, float* %38
%507 = load [3 x i32]*, [3 x i32]** %5
%508 = getelementptr inbounds [3 x i32], [3 x i32]* %507, i64 15
%509 = load i32, i32* %6
%510 = sext i32 %509 to i64
%511 = getelementptr inbounds [3 x i32], [3 x i32]* %508, i64 0, i64 %510
%512 = load i32, i32* %511
%513 = load [3 x i32]*, [3 x i32]** %5
%514 = getelementptr inbounds [3 x i32], [3 x i32]* %513, i64 16
%515 = load i32, i32* %6
%516 = sext i32 %515 to i64
%517 = getelementptr inbounds [3 x i32], [3 x i32]* %514, i64 0, i64 %516
%518 = load i32, i32* %517
%519 = add nsw i32 %512, %518
%520 = sitofp i32 %519 to float
store float %520, float* %39
%521 = load [3 x i32]*, [3 x i32]** %5
%522 = getelementptr inbounds [3 x i32], [3 x i32]* %521, i64 15
%523 = load i32, i32* %6
%524 = sext i32 %523 to i64
%525 = getelementptr inbounds [3 x i32], [3 x i32]* %522, i64 0, i64 %524
%526 = load i32, i32* %525
%527 = load [3 x i32]*, [3 x i32]** %5
%528 = getelementptr inbounds [3 x i32], [3 x i32]* %527, i64 16
%529 = load i32, i32* %6
%530 = sext i32 %529 to i64
%531 = getelementptr inbounds [3 x i32], [3 x i32]* %528, i64 0, i64 %530
%532 = load i32, i32* %531
%533 = sub nsw i32 %526, %532
%534 = sitofp i32 %533 to float
%535 = fpext float %534 to double
%536 = fmul double %535, 0x40246148BEA8D04C
%537 = fptrunc double %536 to float
store float %537, float* %40
%538 = load float, float* %9
%539 = load float, float* %39
%540 = fadd float %538, %539
store float %540, float* %41
%541 = load float, float* %9
%542 = load float, float* %39
%543 = fsub float %541, %542
%544 = fpext float %543 to double
%545 = fmul double %544, 0x3FE013D19C61D3F7
%546 = fptrunc double %545 to float
store float %546, float* %39
%547 = load float, float* %11
%548 = load float, float* %37
%549 = fadd float %547, %548
store float %549, float* %9
%550 = load float, float* %11
%551 = load float, float* %37
%552 = fsub float %550, %551
%553 = fpext float %552 to double
%554 = fmul double %553, 0x3FE0B84F03EBEC51
%555 = fptrunc double %554 to float
store float %555, float* %37
%556 = load float, float* %13
%557 = load float, float* %35
%558 = fadd float %556, %557
store float %558, float* %11
%559 = load float, float* %13
%560 = load float, float* %35
%561 = fsub float %559, %560
%562 = fpext float %561 to double
%563 = fmul double %562, 0x3FE22467D1064DDE
%564 = fptrunc double %563 to float
store float %564, float* %35
%565 = load float, float* %15
%566 = load float, float* %33
%567 = fadd float %565, %566
store float %567, float* %13
%568 = load float, float* %15
%569 = load float, float* %33
%570 = fsub float %568, %569
%571 = fpext float %570 to double
%572 = fmul double %571, 0x3FE4B2C398BBE41F
%573 = fptrunc double %572 to float
store float %573, float* %33
%574 = load float, float* %17
%575 = load float, float* %31
%576 = fadd float %574, %575
store float %576, float* %15
%577 = load float, float* %17
%578 = load float, float* %31
%579 = fsub float %577, %578
%580 = fpext float %579 to double
%581 = fmul double %580, 0x3FE938900B7D3942
%582 = fptrunc double %581 to float
store float %582, float* %31
%583 = load float, float* %19
%584 = load float, float* %29
%585 = fadd float %583, %584
store float %585, float* %17
%586 = load float, float* %19
%587 = load float, float* %29
%588 = fsub float %586, %587
%589 = fpext float %588 to double
%590 = fmul double %589, 0x3FF0F8892A4EC8BC
%591 = fptrunc double %590 to float
store float %591, float* %29
%592 = load float, float* %21
%593 = load float, float* %27
%594 = fadd float %592, %593
store float %594, float* %19
%595 = load float, float* %21
%596 = load float, float* %27
%597 = fsub float %595, %596
%598 = fpext float %597 to double
%599 = fmul double %598, 0x3FFB8F24B0407E90
%600 = fptrunc double %599 to float
store float %600, float* %27
%601 = load float, float* %23
%602 = load float, float* %25
%603 = fadd float %601, %602
store float %603, float* %21
%604 = load float, float* %23
%605 = load float, float* %25
%606 = fsub float %604, %605
%607 = fpext float %606 to double
%608 = fmul double %607, 0x4014679380E53C8B
%609 = fptrunc double %608 to float
store float %609, float* %25
%610 = load float, float* %41
%611 = load float, float* %21
%612 = fadd float %610, %611
store float %612, float* %23
%613 = load float, float* %41
%614 = load float, float* %21
%615 = fsub float %613, %614
%616 = fpext float %615 to double
%617 = fmul double %616, 0x3FE0503ED17CB4B9
%618 = fptrunc double %617 to float
store float %618, float* %21
%619 = load float, float* %9
%620 = load float, float* %19
%621 = fadd float %619, %620
store float %621, float* %41
%622 = load float, float* %9
%623 = load float, float* %19
%624 = fsub float %622, %623
%625 = fpext float %624 to double
%626 = fmul double %625, 0x3FE33E37A1E015A6
%627 = fptrunc double %626 to float
store float %627, float* %9
%628 = load float, float* %11
%629 = load float, float* %17
%630 = fadd float %628, %629
store float %630, float* %19
%631 = load float, float* %11
%632 = load float, float* %17
%633 = fsub float %631, %632
%634 = fpext float %633 to double
%635 = fmul double %634, 0x3FECCC9AEFB17EB8
%636 = fptrunc double %635 to float
store float %636, float* %17
%637 = load float, float* %13
%638 = load float, float* %15
%639 = fadd float %637, %638
store float %639, float* %11
%640 = load float, float* %13
%641 = load float, float* %15
%642 = fsub float %640, %641
%643 = fpext float %642 to double
%644 = fmul double %643, 0x400480D9D073A6E8
%645 = fptrunc double %644 to float
store float %645, float* %15
%646 = load float, float* %23
%647 = load float, float* %11
%648 = fadd float %646, %647
store float %648, float* %13
%649 = load float, float* %23
%650 = load float, float* %11
%651 = fsub float %649, %650
%652 = fpext float %651 to double
%653 = fmul double %652, 0x3FE1517A7BDB31A6
%654 = fptrunc double %653 to float
store float %654, float* %23
%655 = load float, float* %41
%656 = load float, float* %19
%657 = fadd float %655, %656
store float %657, float* %11
%658 = load float, float* %41
%659 = load float, float* %19
%660 = fsub float %658, %659
%661 = fpext float %660 to double
%662 = fmul double %661, 0x3FF4E7AE914530BA
%663 = fptrunc double %662 to float
store float %663, float* %19
%664 = load float, float* %13
%665 = load float, float* %11
%666 = fadd float %664, %665
store float %666, float* %41
%667 = load float, float* %13
%668 = load float, float* %11
%669 = fsub float %667, %668
%670 = fpext float %669 to double
%671 = fmul double %670, 0x3FE6A09E667F4BB8
%672 = fptrunc double %671 to float
store float %672, float* %13
%673 = load float, float* %23
%674 = load float, float* %19
%675 = fadd float %673, %674
store float %675, float* %11
%676 = load float, float* %23
%677 = load float, float* %19
%678 = fsub float %676, %677
%679 = fpext float %678 to double
%680 = fmul double %679, 0x3FE6A09E667F4BB8
%681 = fptrunc double %680 to float
store float %681, float* %23
%682 = load float, float* %23
%683 = load float, float* %11
%684 = fadd float %683, %682
store float %684, float* %11
%685 = load float, float* %21
%686 = load float, float* %15
%687 = fadd float %685, %686
store float %687, float* %19
%688 = load float, float* %21
%689 = load float, float* %15
%690 = fsub float %688, %689
%691 = fpext float %690 to double
%692 = fmul double %691, 0x3FE1517A7BDB31A6
%693 = fptrunc double %692 to float
store float %693, float* %21
%694 = load float, float* %9
%695 = load float, float* %17
%696 = fadd float %694, %695
store float %696, float* %15
%697 = load float, float* %9
%698 = load float, float* %17
%699 = fsub float %697, %698
%700 = fpext float %699 to double
%701 = fmul double %700, 0x3FF4E7AE914530BA
%702 = fptrunc double %701 to float
store float %702, float* %17
%703 = load float, float* %19
%704 = load float, float* %15
%705 = fadd float %703, %704
store float %705, float* %9
%706 = load float, float* %19
%707 = load float, float* %15
%708 = fsub float %706, %707
%709 = fpext float %708 to double
%710 = fmul double %709, 0x3FE6A09E667F4BB8
%711 = fptrunc double %710 to float
store float %711, float* %15
%712 = load float, float* %21
%713 = load float, float* %17
%714 = fadd float %712, %713
store float %714, float* %19
%715 = load float, float* %21
%716 = load float, float* %17
%717 = fsub float %715, %716
%718 = fpext float %717 to double
%719 = fmul double %718, 0x3FE6A09E667F4BB8
%720 = fptrunc double %719 to float
store float %720, float* %21
%721 = load float, float* %21
%722 = load float, float* %19
%723 = fadd float %722, %721
store float %723, float* %19
%724 = load float, float* %19
%725 = load float, float* %9
%726 = fadd float %725, %724
store float %726, float* %9
%727 = load float, float* %15
%728 = load float, float* %19
%729 = fadd float %728, %727
store float %729, float* %19
%730 = load float, float* %21
%731 = load float, float* %15
%732 = fadd float %731, %730
store float %732, float* %15
%733 = load float, float* %39
%734 = load float, float* %25
%735 = fadd float %733, %734
store float %735, float* %17
%736 = load float, float* %39
%737 = load float, float* %25
%738 = fsub float %736, %737
%739 = fpext float %738 to double
%740 = fmul double %739, 0x3FE0503ED17CB4B9
%741 = fptrunc double %740 to float
store float %741, float* %39
%742 = load float, float* %37
%743 = load float, float* %27
%744 = fadd float %742, %743
store float %744, float* %25
%745 = load float, float* %37
%746 = load float, float* %27
%747 = fsub float %745, %746
%748 = fpext float %747 to double
%749 = fmul double %748, 0x3FE33E37A1E015A6
%750 = fptrunc double %749 to float
store float %750, float* %37
%751 = load float, float* %35
%752 = load float, float* %29
%753 = fadd float %751, %752
store float %753, float* %27
%754 = load float, float* %35
%755 = load float, float* %29
%756 = fsub float %754, %755
%757 = fpext float %756 to double
%758 = fmul double %757, 0x3FECCC9AEFB17EB8
%759 = fptrunc double %758 to float
store float %759, float* %29
%760 = load float, float* %33
%761 = load float, float* %31
%762 = fadd float %760, %761
store float %762, float* %35
%763 = load float, float* %33
%764 = load float, float* %31
%765 = fsub float %763, %764
%766 = fpext float %765 to double
%767 = fmul double %766, 0x400480D9D073A6E8
%768 = fptrunc double %767 to float
store float %768, float* %31
%769 = load float, float* %17
%770 = load float, float* %35
%771 = fadd float %769, %770
store float %771, float* %33
%772 = load float, float* %17
%773 = load float, float* %35
%774 = fsub float %772, %773
%775 = fpext float %774 to double
%776 = fmul double %775, 0x3FE1517A7BDB31A6
%777 = fptrunc double %776 to float
store float %777, float* %17
%778 = load float, float* %25
%779 = load float, float* %27
%780 = fadd float %778, %779
store float %780, float* %35
%781 = load float, float* %25
%782 = load float, float* %27
%783 = fsub float %781, %782
%784 = fpext float %783 to double
%785 = fmul double %784, 0x3FF4E7AE914530BA
%786 = fptrunc double %785 to float
store float %786, float* %27
%787 = load float, float* %33
%788 = load float, float* %35
%789 = fadd float %787, %788
store float %789, float* %25
%790 = load float, float* %33
%791 = load float, float* %35
%792 = fsub float %790, %791
%793 = fpext float %792 to double
%794 = fmul double %793, 0x3FE6A09E667F4BB8
%795 = fptrunc double %794 to float
store float %795, float* %35
%796 = load float, float* %17
%797 = load float, float* %27
%798 = fadd float %796, %797
store float %798, float* %33
%799 = load float, float* %17
%800 = load float, float* %27
%801 = fsub float %799, %800
%802 = fpext float %801 to double
%803 = fmul double %802, 0x3FE6A09E667F4BB8
%804 = fptrunc double %803 to float
store float %804, float* %27
%805 = load float, float* %27
%806 = load float, float* %33
%807 = fadd float %806, %805
store float %807, float* %33
%808 = load float, float* %39
%809 = load float, float* %31
%810 = fadd float %808, %809
store float %810, float* %17
%811 = load float, float* %39
%812 = load float, float* %31
%813 = fsub float %811, %812
%814 = fpext float %813 to double
%815 = fmul double %814, 0x3FE1517A7BDB31A6
%816 = fptrunc double %815 to float
store float %816, float* %39
%817 = load float, float* %37
%818 = load float, float* %29
%819 = fadd float %817, %818
store float %819, float* %31
%820 = load float, float* %37
%821 = load float, float* %29
%822 = fsub float %820, %821
%823 = fpext float %822 to double
%824 = fmul double %823, 0x3FF4E7AE914530BA
%825 = fptrunc double %824 to float
store float %825, float* %29
%826 = load float, float* %17
%827 = load float, float* %31
%828 = fadd float %826, %827
store float %828, float* %37
%829 = load float, float* %17
%830 = load float, float* %31
%831 = fsub float %829, %830
%832 = fpext float %831 to double
%833 = fmul double %832, 0x3FE6A09E667F4BB8
%834 = fptrunc double %833 to float
store float %834, float* %31
%835 = load float, float* %39
%836 = load float, float* %29
%837 = fadd float %835, %836
store float %837, float* %17
%838 = load float, float* %39
%839 = load float, float* %29
%840 = fsub float %838, %839
%841 = fpext float %840 to double
%842 = fmul double %841, 0x3FE6A09E667F4BB8
%843 = fptrunc double %842 to float
store float %843, float* %39
%844 = load float, float* %39
%845 = load float, float* %17
%846 = fadd float %845, %844
store float %846, float* %17
%847 = load float, float* %17
%848 = load float, float* %37
%849 = fadd float %848, %847
store float %849, float* %37
%850 = load float, float* %31
%851 = load float, float* %17
%852 = fadd float %851, %850
store float %852, float* %17
%853 = load float, float* %39
%854 = load float, float* %31
%855 = fadd float %854, %853
store float %855, float* %31
%856 = load float, float* %37
%857 = load float, float* %25
%858 = fadd float %857, %856
store float %858, float* %25
%859 = load float, float* %33
%860 = load float, float* %37
%861 = fadd float %860, %859
store float %861, float* %37
%862 = load float, float* %17
%863 = load float, float* %33
%864 = fadd float %863, %862
store float %864, float* %33
%865 = load float, float* %35
%866 = load float, float* %17
%867 = fadd float %866, %865
store float %867, float* %17
%868 = load float, float* %31
%869 = load float, float* %35
%870 = fadd float %869, %868
store float %870, float* %35
%871 = load float, float* %27
%872 = load float, float* %31
%873 = fadd float %872, %871
store float %873, float* %31
%874 = load float, float* %39
%875 = load float, float* %27
%876 = fadd float %875, %874
store float %876, float* %27
%877 = load float, float* %10
%878 = load float, float* %40
%879 = fadd float %877, %878
store float %879, float* %29
%880 = load float, float* %10
%881 = load float, float* %40
%882 = fsub float %880, %881
%883 = fpext float %882 to double
%884 = fmul double %883, 0x3FE013D19C61D3F7
%885 = fptrunc double %884 to float
store float %885, float* %10
%886 = load float, float* %12
%887 = load float, float* %38
%888 = fadd float %886, %887
store float %888, float* %40
%889 = load float, float* %12
%890 = load float, float* %38
%891 = fsub float %889, %890
%892 = fpext float %891 to double
%893 = fmul double %892, 0x3FE0B84F03EBEC51
%894 = fptrunc double %893 to float
store float %894, float* %12
%895 = load float, float* %14
%896 = load float, float* %36
%897 = fadd float %895, %896
store float %897, float* %38
%898 = load float, float* %14
%899 = load float, float* %36
%900 = fsub float %898, %899
%901 = fpext float %900 to double
%902 = fmul double %901, 0x3FE22467D1064DDE
%903 = fptrunc double %902 to float
store float %903, float* %36
%904 = load float, float* %16
%905 = load float, float* %34
%906 = fadd float %904, %905
store float %906, float* %14
%907 = load float, float* %16
%908 = load float, float* %34
%909 = fsub float %907, %908
%910 = fpext float %909 to double
%911 = fmul double %910, 0x3FE4B2C398BBE41F
%912 = fptrunc double %911 to float
store float %912, float* %16
%913 = load float, float* %18
%914 = load float, float* %32
%915 = fadd float %913, %914
store float %915, float* %34
%916 = load float, float* %18
%917 = load float, float* %32
%918 = fsub float %916, %917
%919 = fpext float %918 to double
%920 = fmul double %919, 0x3FE938900B7D3942
%921 = fptrunc double %920 to float
store float %921, float* %18
%922 = load float, float* %20
%923 = load float, float* %30
%924 = fadd float %922, %923
store float %924, float* %32
%925 = load float, float* %20
%926 = load float, float* %30
%927 = fsub float %925, %926
%928 = fpext float %927 to double
%929 = fmul double %928, 0x3FF0F8892A4EC8BC
%930 = fptrunc double %929 to float
store float %930, float* %30
%931 = load float, float* %22
%932 = load float, float* %28
%933 = fadd float %931, %932
store float %933, float* %20
%934 = load float, float* %22
%935 = load float, float* %28
%936 = fsub float %934, %935
%937 = fpext float %936 to double
%938 = fmul double %937, 0x3FFB8F24B0407E90
%939 = fptrunc double %938 to float
store float %939, float* %28
%940 = load float, float* %24
%941 = load float, float* %26
%942 = fadd float %940, %941
store float %942, float* %22
%943 = load float, float* %24
%944 = load float, float* %26
%945 = fsub float %943, %944
%946 = fpext float %945 to double
%947 = fmul double %946, 0x4014679380E53C8B
%948 = fptrunc double %947 to float
store float %948, float* %24
%949 = load float, float* %29
%950 = load float, float* %22
%951 = fadd float %949, %950
store float %951, float* %26
%952 = load float, float* %29
%953 = load float, float* %22
%954 = fsub float %952, %953
%955 = fpext float %954 to double
%956 = fmul double %955, 0x3FE0503ED17CB4B9
%957 = fptrunc double %956 to float
store float %957, float* %22
%958 = load float, float* %40
%959 = load float, float* %20
%960 = fadd float %958, %959
store float %960, float* %29
%961 = load float, float* %40
%962 = load float, float* %20
%963 = fsub float %961, %962
%964 = fpext float %963 to double
%965 = fmul double %964, 0x3FE33E37A1E015A6
%966 = fptrunc double %965 to float
store float %966, float* %40
%967 = load float, float* %38
%968 = load float, float* %32
%969 = fadd float %967, %968
store float %969, float* %20
%970 = load float, float* %38
%971 = load float, float* %32
%972 = fsub float %970, %971
%973 = fpext float %972 to double
%974 = fmul double %973, 0x3FECCC9AEFB17EB8
%975 = fptrunc double %974 to float
store float %975, float* %32
%976 = load float, float* %14
%977 = load float, float* %34
%978 = fadd float %976, %977
store float %978, float* %38
%979 = load float, float* %14
%980 = load float, float* %34
%981 = fsub float %979, %980
%982 = fpext float %981 to double
%983 = fmul double %982, 0x400480D9D073A6E8
%984 = fptrunc double %983 to float
store float %984, float* %34
%985 = load float, float* %26
%986 = load float, float* %38
%987 = fadd float %985, %986
store float %987, float* %14
%988 = load float, float* %26
%989 = load float, float* %38
%990 = fsub float %988, %989
%991 = fpext float %990 to double
%992 = fmul double %991, 0x3FE1517A7BDB31A6
%993 = fptrunc double %992 to float
store float %993, float* %26
%994 = load float, float* %29
%995 = load float, float* %20
%996 = fadd float %994, %995
store float %996, float* %38
%997 = load float, float* %29
%998 = load float, float* %20
%999 = fsub float %997, %998
%1000 = fpext float %999 to double
%1001 = fmul double %1000, 0x3FF4E7AE914530BA
%1002 = fptrunc double %1001 to float
store float %1002, float* %20
%1003 = load float, float* %14
%1004 = load float, float* %38
%1005 = fadd float %1003, %1004
store float %1005, float* %29
%1006 = load float, float* %14
%1007 = load float, float* %38
%1008 = fsub float %1006, %1007
%1009 = fpext float %1008 to double
%1010 = fmul double %1009, 0x3FE6A09E667F4BB8
%1011 = fptrunc double %1010 to float
store float %1011, float* %38
%1012 = load float, float* %26
%1013 = load float, float* %20
%1014 = fadd float %1012, %1013
store float %1014, float* %14
%1015 = load float, float* %26
%1016 = load float, float* %20
%1017 = fsub float %1015, %1016
%1018 = fpext float %1017 to double
%1019 = fmul double %1018, 0x3FE6A09E667F4BB8
%1020 = fptrunc double %1019 to float
store float %1020, float* %20
%1021 = load float, float* %20
%1022 = load float, float* %14
%1023 = fadd float %1022, %1021
store float %1023, float* %14
%1024 = load float, float* %22
%1025 = load float, float* %34
%1026 = fadd float %1024, %1025
store float %1026, float* %26
%1027 = load float, float* %22
%1028 = load float, float* %34
%1029 = fsub float %1027, %1028
%1030 = fpext float %1029 to double
%1031 = fmul double %1030, 0x3FE1517A7BDB31A6
%1032 = fptrunc double %1031 to float
store float %1032, float* %34
%1033 = load float, float* %40
%1034 = load float, float* %32
%1035 = fadd float %1033, %1034
store float %1035, float* %22
%1036 = load float, float* %40
%1037 = load float, float* %32
%1038 = fsub float %1036, %1037
%1039 = fpext float %1038 to double
%1040 = fmul double %1039, 0x3FF4E7AE914530BA
%1041 = fptrunc double %1040 to float
store float %1041, float* %32
%1042 = load float, float* %26
%1043 = load float, float* %22
%1044 = fadd float %1042, %1043
store float %1044, float* %40
%1045 = load float, float* %26
%1046 = load float, float* %22
%1047 = fsub float %1045, %1046
%1048 = fpext float %1047 to double
%1049 = fmul double %1048, 0x3FE6A09E667F4BB8
%1050 = fptrunc double %1049 to float
store float %1050, float* %22
%1051 = load float, float* %34
%1052 = load float, float* %32
%1053 = fadd float %1051, %1052
store float %1053, float* %26
%1054 = load float, float* %34
%1055 = load float, float* %32
%1056 = fsub float %1054, %1055
%1057 = fpext float %1056 to double
%1058 = fmul double %1057, 0x3FE6A09E667F4BB8
%1059 = fptrunc double %1058 to float
store float %1059, float* %32
%1060 = load float, float* %32
%1061 = load float, float* %26
%1062 = fadd float %1061, %1060
store float %1062, float* %26
%1063 = load float, float* %26
%1064 = load float, float* %40
%1065 = fadd float %1064, %1063
store float %1065, float* %40
%1066 = load float, float* %22
%1067 = load float, float* %26
%1068 = fadd float %1067, %1066
store float %1068, float* %26
%1069 = load float, float* %22
%1070 = load float, float* %32
%1071 = fadd float %1069, %1070
store float %1071, float* %34
%1072 = load float, float* %10
%1073 = load float, float* %24
%1074 = fadd float %1072, %1073
store float %1074, float* %22
%1075 = load float, float* %10
%1076 = load float, float* %24
%1077 = fsub float %1075, %1076
%1078 = fpext float %1077 to double
%1079 = fmul double %1078, 0x3FE0503ED17CB4B9
%1080 = fptrunc double %1079 to float
store float %1080, float* %10
%1081 = load float, float* %12
%1082 = load float, float* %28
%1083 = fadd float %1081, %1082
store float %1083, float* %24
%1084 = load float, float* %12
%1085 = load float, float* %28
%1086 = fsub float %1084, %1085
%1087 = fpext float %1086 to double
%1088 = fmul double %1087, 0x3FE33E37A1E015A6
%1089 = fptrunc double %1088 to float
store float %1089, float* %12
%1090 = load float, float* %36
%1091 = load float, float* %30
%1092 = fadd float %1090, %1091
store float %1092, float* %28
%1093 = load float, float* %36
%1094 = load float, float* %30
%1095 = fsub float %1093, %1094
%1096 = fpext float %1095 to double
%1097 = fmul double %1096, 0x3FECCC9AEFB17EB8
%1098 = fptrunc double %1097 to float
store float %1098, float* %30
%1099 = load float, float* %16
%1100 = load float, float* %18
%1101 = fadd float %1099, %1100
store float %1101, float* %36
%1102 = load float, float* %16
%1103 = load float, float* %18
%1104 = fsub float %1102, %1103
%1105 = fpext float %1104 to double
%1106 = fmul double %1105, 0x400480D9D073A6E8
%1107 = fptrunc double %1106 to float
store float %1107, float* %18
%1108 = load float, float* %22
%1109 = load float, float* %36
%1110 = fadd float %1108, %1109
store float %1110, float* %16
%1111 = load float, float* %22
%1112 = load float, float* %36
%1113 = fsub float %1111, %1112
%1114 = fpext float %1113 to double
%1115 = fmul double %1114, 0x3FE1517A7BDB31A6
%1116 = fptrunc double %1115 to float
store float %1116, float* %22
%1117 = load float, float* %24
%1118 = load float, float* %28
%1119 = fadd float %1117, %1118
store float %1119, float* %36
%1120 = load float, float* %24
%1121 = load float, float* %28
%1122 = fsub float %1120, %1121
%1123 = fpext float %1122 to double
%1124 = fmul double %1123, 0x3FF4E7AE914530BA
%1125 = fptrunc double %1124 to float
store float %1125, float* %28
%1126 = load float, float* %16
%1127 = load float, float* %36
%1128 = fadd float %1126, %1127
store float %1128, float* %24
%1129 = load float, float* %16
%1130 = load float, float* %36
%1131 = fsub float %1129, %1130
%1132 = fpext float %1131 to double
%1133 = fmul double %1132, 0x3FE6A09E667F4BB8
%1134 = fptrunc double %1133 to float
store float %1134, float* %36
%1135 = load float, float* %22
%1136 = load float, float* %28
%1137 = fadd float %1135, %1136
store float %1137, float* %16
%1138 = load float, float* %22
%1139 = load float, float* %28
%1140 = fsub float %1138, %1139
%1141 = fpext float %1140 to double
%1142 = fmul double %1141, 0x3FE6A09E667F4BB8
%1143 = fptrunc double %1142 to float
store float %1143, float* %28
%1144 = load float, float* %28
%1145 = load float, float* %16
%1146 = fadd float %1145, %1144
store float %1146, float* %16
%1147 = load float, float* %10
%1148 = load float, float* %18
%1149 = fadd float %1147, %1148
store float %1149, float* %22
%1150 = load float, float* %10
%1151 = load float, float* %18
%1152 = fsub float %1150, %1151
%1153 = fpext float %1152 to double
%1154 = fmul double %1153, 0x3FE1517A7BDB31A6
%1155 = fptrunc double %1154 to float
store float %1155, float* %10
%1156 = load float, float* %12
%1157 = load float, float* %30
%1158 = fadd float %1156, %1157
store float %1158, float* %18
%1159 = load float, float* %12
%1160 = load float, float* %30
%1161 = fsub float %1159, %1160
%1162 = fpext float %1161 to double
%1163 = fmul double %1162, 0x3FF4E7AE914530BA
%1164 = fptrunc double %1163 to float
store float %1164, float* %30
%1165 = load float, float* %22
%1166 = load float, float* %18
%1167 = fadd float %1165, %1166
store float %1167, float* %12
%1168 = load float, float* %22
%1169 = load float, float* %18
%1170 = fsub float %1168, %1169
%1171 = fpext float %1170 to double
%1172 = fmul double %1171, 0x3FE6A09E667F4BB8
%1173 = fptrunc double %1172 to float
store float %1173, float* %18
%1174 = load float, float* %10
%1175 = load float, float* %30
%1176 = fadd float %1174, %1175
store float %1176, float* %22
%1177 = load float, float* %10
%1178 = load float, float* %30
%1179 = fsub float %1177, %1178
%1180 = fpext float %1179 to double
%1181 = fmul double %1180, 0x3FE6A09E667F4BB8
%1182 = fptrunc double %1181 to float
store float %1182, float* %10
%1183 = load float, float* %10
%1184 = load float, float* %22
%1185 = fadd float %1184, %1183
store float %1185, float* %22
%1186 = load float, float* %22
%1187 = load float, float* %12
%1188 = fadd float %1187, %1186
store float %1188, float* %12
%1189 = load float, float* %18
%1190 = load float, float* %22
%1191 = fadd float %1190, %1189
store float %1191, float* %22
%1192 = load float, float* %10
%1193 = load float, float* %18
%1194 = fadd float %1193, %1192
store float %1194, float* %18
%1195 = load float, float* %12
%1196 = load float, float* %24
%1197 = fadd float %1196, %1195
store float %1197, float* %24
%1198 = load float, float* %16
%1199 = load float, float* %12
%1200 = fadd float %1199, %1198
store float %1200, float* %12
%1201 = load float, float* %22
%1202 = load float, float* %16
%1203 = fadd float %1202, %1201
store float %1203, float* %16
%1204 = load float, float* %36
%1205 = load float, float* %22
%1206 = fadd float %1205, %1204
store float %1206, float* %22
%1207 = load float, float* %18
%1208 = load float, float* %36
%1209 = fadd float %1208, %1207
store float %1209, float* %36
%1210 = load float, float* %28
%1211 = load float, float* %18
%1212 = fadd float %1211, %1210
store float %1212, float* %18
%1213 = load float, float* %10
%1214 = load float, float* %28
%1215 = fadd float %1214, %1213
store float %1215, float* %28
%1216 = load float, float* %24
%1217 = load float, float* %29
%1218 = fadd float %1217, %1216
store float %1218, float* %29
%1219 = load float, float* %40
%1220 = load float, float* %24
%1221 = fadd float %1220, %1219
store float %1221, float* %24
%1222 = load float, float* %12
%1223 = load float, float* %40
%1224 = fadd float %1223, %1222
store float %1224, float* %40
%1225 = load float, float* %14
%1226 = load float, float* %12
%1227 = fadd float %1226, %1225
store float %1227, float* %12
%1228 = load float, float* %16
%1229 = load float, float* %14
%1230 = fadd float %1229, %1228
store float %1230, float* %14
%1231 = load float, float* %26
%1232 = load float, float* %16
%1233 = fadd float %1232, %1231
store float %1233, float* %16
%1234 = load float, float* %22
%1235 = load float, float* %26
%1236 = fadd float %1235, %1234
store float %1236, float* %26
%1237 = load float, float* %38
%1238 = load float, float* %22
%1239 = fadd float %1238, %1237
store float %1239, float* %22
%1240 = load float, float* %36
%1241 = load float, float* %38
%1242 = fadd float %1241, %1240
store float %1242, float* %38
%1243 = load float, float* %34
%1244 = load float, float* %36
%1245 = fadd float %1244, %1243
store float %1245, float* %36
%1246 = load float, float* %18
%1247 = load float, float* %34
%1248 = fadd float %1247, %1246
store float %1248, float* %34
%1249 = load float, float* %20
%1250 = load float, float* %18
%1251 = fadd float %1250, %1249
store float %1251, float* %18
%1252 = load float, float* %28
%1253 = load float, float* %20
%1254 = fadd float %1253, %1252
store float %1254, float* %20
%1255 = load float, float* %32
%1256 = load float, float* %28
%1257 = fadd float %1256, %1255
store float %1257, float* %28
%1258 = load float, float* %10
%1259 = load float, float* %32
%1260 = fadd float %1259, %1258
store float %1260, float* %32
%1261 = load float, float* %41
%1262 = fneg float %1261
%1263 = load float*, float** %7
%1264 = load i32, i32* %8
%1265 = add nsw i32 %1264, 48
%1266 = sext i32 %1265 to i64
%1267 = getelementptr inbounds float, float* %1263, i64 %1266
store float %1262, float* %1267
%1268 = load float, float* %29
%1269 = fneg float %1268
%1270 = load float*, float** %7
%1271 = load i32, i32* %8
%1272 = add nsw i32 %1271, 47
%1273 = sext i32 %1272 to i64
%1274 = getelementptr inbounds float, float* %1270, i64 %1273
store float %1269, float* %1274
%1275 = load float*, float** %7
%1276 = load i32, i32* %8
%1277 = add nsw i32 %1276, 49
%1278 = sext i32 %1277 to i64
%1279 = getelementptr inbounds float, float* %1275, i64 %1278
store float %1269, float* %1279
%1280 = load float, float* %25
%1281 = fneg float %1280
%1282 = load float*, float** %7
%1283 = load i32, i32* %8
%1284 = add nsw i32 %1283, 46
%1285 = sext i32 %1284 to i64
%1286 = getelementptr inbounds float, float* %1282, i64 %1285
store float %1281, float* %1286
%1287 = load float*, float** %7
%1288 = load i32, i32* %8
%1289 = add nsw i32 %1288, 50
%1290 = sext i32 %1289 to i64
%1291 = getelementptr inbounds float, float* %1287, i64 %1290
store float %1281, float* %1291
%1292 = load float, float* %24
%1293 = fneg float %1292
%1294 = load float*, float** %7
%1295 = load i32, i32* %8
%1296 = add nsw i32 %1295, 45
%1297 = sext i32 %1296 to i64
%1298 = getelementptr inbounds float, float* %1294, i64 %1297
store float %1293, float* %1298
%1299 = load float*, float** %7
%1300 = load i32, i32* %8
%1301 = add nsw i32 %1300, 51
%1302 = sext i32 %1301 to i64
%1303 = getelementptr inbounds float, float* %1299, i64 %1302
store float %1293, float* %1303
%1304 = load float, float* %9
%1305 = fneg float %1304
%1306 = load float*, float** %7
%1307 = load i32, i32* %8
%1308 = add nsw i32 %1307, 44
%1309 = sext i32 %1308 to i64
%1310 = getelementptr inbounds float, float* %1306, i64 %1309
store float %1305, float* %1310
%1311 = load float*, float** %7
%1312 = load i32, i32* %8
%1313 = add nsw i32 %1312, 52
%1314 = sext i32 %1313 to i64
%1315 = getelementptr inbounds float, float* %1311, i64 %1314
store float %1305, float* %1315
%1316 = load float, float* %40
%1317 = fneg float %1316
%1318 = load float*, float** %7
%1319 = load i32, i32* %8
%1320 = add nsw i32 %1319, 43
%1321 = sext i32 %1320 to i64
%1322 = getelementptr inbounds float, float* %1318, i64 %1321
store float %1317, float* %1322
%1323 = load float*, float** %7
%1324 = load i32, i32* %8
%1325 = add nsw i32 %1324, 53
%1326 = sext i32 %1325 to i64
%1327 = getelementptr inbounds float, float* %1323, i64 %1326
store float %1317, float* %1327
%1328 = load float, float* %37
%1329 = fneg float %1328
%1330 = load float*, float** %7
%1331 = load i32, i32* %8
%1332 = add nsw i32 %1331, 42
%1333 = sext i32 %1332 to i64
%1334 = getelementptr inbounds float, float* %1330, i64 %1333
store float %1329, float* %1334
%1335 = load float*, float** %7
%1336 = load i32, i32* %8
%1337 = add nsw i32 %1336, 54
%1338 = sext i32 %1337 to i64
%1339 = getelementptr inbounds float, float* %1335, i64 %1338
store float %1329, float* %1339
%1340 = load float, float* %12
%1341 = fneg float %1340
%1342 = load float*, float** %7
%1343 = load i32, i32* %8
%1344 = add nsw i32 %1343, 41
%1345 = sext i32 %1344 to i64
%1346 = getelementptr inbounds float, float* %1342, i64 %1345
store float %1341, float* %1346
%1347 = load float*, float** %7
%1348 = load i32, i32* %8
%1349 = add nsw i32 %1348, 55
%1350 = sext i32 %1349 to i64
%1351 = getelementptr inbounds float, float* %1347, i64 %1350
store float %1341, float* %1351
%1352 = load float, float* %11
%1353 = fneg float %1352
%1354 = load float*, float** %7
%1355 = load i32, i32* %8
%1356 = add nsw i32 %1355, 40
%1357 = sext i32 %1356 to i64
%1358 = getelementptr inbounds float, float* %1354, i64 %1357
store float %1353, float* %1358
%1359 = load float*, float** %7
%1360 = load i32, i32* %8
%1361 = add nsw i32 %1360, 56
%1362 = sext i32 %1361 to i64
%1363 = getelementptr inbounds float, float* %1359, i64 %1362
store float %1353, float* %1363
%1364 = load float, float* %14
%1365 = fneg float %1364
%1366 = load float*, float** %7
%1367 = load i32, i32* %8
%1368 = add nsw i32 %1367, 39
%1369 = sext i32 %1368 to i64
%1370 = getelementptr inbounds float, float* %1366, i64 %1369
store float %1365, float* %1370
%1371 = load float*, float** %7
%1372 = load i32, i32* %8
%1373 = add nsw i32 %1372, 57
%1374 = sext i32 %1373 to i64
%1375 = getelementptr inbounds float, float* %1371, i64 %1374
store float %1365, float* %1375
%1376 = load float, float* %33
%1377 = fneg float %1376
%1378 = load float*, float** %7
%1379 = load i32, i32* %8
%1380 = add nsw i32 %1379, 38
%1381 = sext i32 %1380 to i64
%1382 = getelementptr inbounds float, float* %1378, i64 %1381
store float %1377, float* %1382
%1383 = load float*, float** %7
%1384 = load i32, i32* %8
%1385 = add nsw i32 %1384, 58
%1386 = sext i32 %1385 to i64
%1387 = getelementptr inbounds float, float* %1383, i64 %1386
store float %1377, float* %1387
%1388 = load float, float* %16
%1389 = fneg float %1388
%1390 = load float*, float** %7
%1391 = load i32, i32* %8
%1392 = add nsw i32 %1391, 37
%1393 = sext i32 %1392 to i64
%1394 = getelementptr inbounds float, float* %1390, i64 %1393
store float %1389, float* %1394
%1395 = load float*, float** %7
%1396 = load i32, i32* %8
%1397 = add nsw i32 %1396, 59
%1398 = sext i32 %1397 to i64
%1399 = getelementptr inbounds float, float* %1395, i64 %1398
store float %1389, float* %1399
%1400 = load float, float* %19
%1401 = fneg float %1400
%1402 = load float*, float** %7
%1403 = load i32, i32* %8
%1404 = add nsw i32 %1403, 36
%1405 = sext i32 %1404 to i64
%1406 = getelementptr inbounds float, float* %1402, i64 %1405
store float %1401, float* %1406
%1407 = load float*, float** %7
%1408 = load i32, i32* %8
%1409 = add nsw i32 %1408, 60
%1410 = sext i32 %1409 to i64
%1411 = getelementptr inbounds float, float* %1407, i64 %1410
store float %1401, float* %1411
%1412 = load float, float* %26
%1413 = fneg float %1412
%1414 = load float*, float** %7
%1415 = load i32, i32* %8
%1416 = add nsw i32 %1415, 35
%1417 = sext i32 %1416 to i64
%1418 = getelementptr inbounds float, float* %1414, i64 %1417
store float %1413, float* %1418
%1419 = load float*, float** %7
%1420 = load i32, i32* %8
%1421 = add nsw i32 %1420, 61
%1422 = sext i32 %1421 to i64
%1423 = getelementptr inbounds float, float* %1419, i64 %1422
store float %1413, float* %1423
%1424 = load float, float* %17
%1425 = fneg float %1424
%1426 = load float*, float** %7
%1427 = load i32, i32* %8
%1428 = add nsw i32 %1427, 34
%1429 = sext i32 %1428 to i64
%1430 = getelementptr inbounds float, float* %1426, i64 %1429
store float %1425, float* %1430
%1431 = load float*, float** %7
%1432 = load i32, i32* %8
%1433 = add nsw i32 %1432, 62
%1434 = sext i32 %1433 to i64
%1435 = getelementptr inbounds float, float* %1431, i64 %1434
store float %1425, float* %1435
%1436 = load float, float* %22
%1437 = fneg float %1436
%1438 = load float*, float** %7
%1439 = load i32, i32* %8
%1440 = add nsw i32 %1439, 33
%1441 = sext i32 %1440 to i64
%1442 = getelementptr inbounds float, float* %1438, i64 %1441
store float %1437, float* %1442
%1443 = load float*, float** %7
%1444 = load i32, i32* %8
%1445 = add nsw i32 %1444, 63
%1446 = sext i32 %1445 to i64
%1447 = getelementptr inbounds float, float* %1443, i64 %1446
store float %1437, float* %1447
%1448 = load float, float* %13
%1449 = fneg float %1448
%1450 = load float*, float** %7
%1451 = load i32, i32* %8
%1452 = add nsw i32 %1451, 32
%1453 = sext i32 %1452 to i64
%1454 = getelementptr inbounds float, float* %1450, i64 %1453
store float %1449, float* %1454
%1455 = load float, float* %13
%1456 = load float*, float** %7
%1457 = load i32, i32* %8
%1458 = add nsw i32 %1457, 0
%1459 = sext i32 %1458 to i64
%1460 = getelementptr inbounds float, float* %1456, i64 %1459
store float %1455, float* %1460
%1461 = load float, float* %38
%1462 = fneg float %1461
%1463 = load float*, float** %7
%1464 = load i32, i32* %8
%1465 = add nsw i32 %1464, 31
%1466 = sext i32 %1465 to i64
%1467 = getelementptr inbounds float, float* %1463, i64 %1466
store float %1462, float* %1467
%1468 = load float, float* %38
%1469 = load float*, float** %7
%1470 = load i32, i32* %8
%1471 = add nsw i32 %1470, 1
%1472 = sext i32 %1471 to i64
%1473 = getelementptr inbounds float, float* %1469, i64 %1472
store float %1468, float* %1473
%1474 = load float, float* %35
%1475 = fneg float %1474
%1476 = load float*, float** %7
%1477 = load i32, i32* %8
%1478 = add nsw i32 %1477, 30
%1479 = sext i32 %1478 to i64
%1480 = getelementptr inbounds float, float* %1476, i64 %1479
store float %1475, float* %1480
%1481 = load float, float* %35
%1482 = load float*, float** %7
%1483 = load i32, i32* %8
%1484 = add nsw i32 %1483, 2
%1485 = sext i32 %1484 to i64
%1486 = getelementptr inbounds float, float* %1482, i64 %1485
store float %1481, float* %1486
%1487 = load float, float* %36
%1488 = fneg float %1487
%1489 = load float*, float** %7
%1490 = load i32, i32* %8
%1491 = add nsw i32 %1490, 29
%1492 = sext i32 %1491 to i64
%1493 = getelementptr inbounds float, float* %1489, i64 %1492
store float %1488, float* %1493
%1494 = load float, float* %36
%1495 = load float*, float** %7
%1496 = load i32, i32* %8
%1497 = add nsw i32 %1496, 3
%1498 = sext i32 %1497 to i64
%1499 = getelementptr inbounds float, float* %1495, i64 %1498
store float %1494, float* %1499
%1500 = load float, float* %15
%1501 = fneg float %1500
%1502 = load float*, float** %7
%1503 = load i32, i32* %8
%1504 = add nsw i32 %1503, 28
%1505 = sext i32 %1504 to i64
%1506 = getelementptr inbounds float, float* %1502, i64 %1505
store float %1501, float* %1506
%1507 = load float, float* %15
%1508 = load float*, float** %7
%1509 = load i32, i32* %8
%1510 = add nsw i32 %1509, 4
%1511 = sext i32 %1510 to i64
%1512 = getelementptr inbounds float, float* %1508, i64 %1511
store float %1507, float* %1512
%1513 = load float, float* %34
%1514 = fneg float %1513
%1515 = load float*, float** %7
%1516 = load i32, i32* %8
%1517 = add nsw i32 %1516, 27
%1518 = sext i32 %1517 to i64
%1519 = getelementptr inbounds float, float* %1515, i64 %1518
store float %1514, float* %1519
%1520 = load float, float* %34
%1521 = load float*, float** %7
%1522 = load i32, i32* %8
%1523 = add nsw i32 %1522, 5
%1524 = sext i32 %1523 to i64
%1525 = getelementptr inbounds float, float* %1521, i64 %1524
store float %1520, float* %1525
%1526 = load float, float* %31
%1527 = fneg float %1526
%1528 = load float*, float** %7
%1529 = load i32, i32* %8
%1530 = add nsw i32 %1529, 26
%1531 = sext i32 %1530 to i64
%1532 = getelementptr inbounds float, float* %1528, i64 %1531
store float %1527, float* %1532
%1533 = load float, float* %31
%1534 = load float*, float** %7
%1535 = load i32, i32* %8
%1536 = add nsw i32 %1535, 6
%1537 = sext i32 %1536 to i64
%1538 = getelementptr inbounds float, float* %1534, i64 %1537
store float %1533, float* %1538
%1539 = load float, float* %18
%1540 = fneg float %1539
%1541 = load float*, float** %7
%1542 = load i32, i32* %8
%1543 = add nsw i32 %1542, 25
%1544 = sext i32 %1543 to i64
%1545 = getelementptr inbounds float, float* %1541, i64 %1544
store float %1540, float* %1545
%1546 = load float, float* %18
%1547 = load float*, float** %7
%1548 = load i32, i32* %8
%1549 = add nsw i32 %1548, 7
%1550 = sext i32 %1549 to i64
%1551 = getelementptr inbounds float, float* %1547, i64 %1550
store float %1546, float* %1551
%1552 = load float, float* %23
%1553 = fneg float %1552
%1554 = load float*, float** %7
%1555 = load i32, i32* %8
%1556 = add nsw i32 %1555, 24
%1557 = sext i32 %1556 to i64
%1558 = getelementptr inbounds float, float* %1554, i64 %1557
store float %1553, float* %1558
%1559 = load float, float* %23
%1560 = load float*, float** %7
%1561 = load i32, i32* %8
%1562 = add nsw i32 %1561, 8
%1563 = sext i32 %1562 to i64
%1564 = getelementptr inbounds float, float* %1560, i64 %1563
store float %1559, float* %1564
%1565 = load float, float* %20
%1566 = fneg float %1565
%1567 = load float*, float** %7
%1568 = load i32, i32* %8
%1569 = add nsw i32 %1568, 23
%1570 = sext i32 %1569 to i64
%1571 = getelementptr inbounds float, float* %1567, i64 %1570
store float %1566, float* %1571
%1572 = load float, float* %20
%1573 = load float*, float** %7
%1574 = load i32, i32* %8
%1575 = add nsw i32 %1574, 9
%1576 = sext i32 %1575 to i64
%1577 = getelementptr inbounds float, float* %1573, i64 %1576
store float %1572, float* %1577
%1578 = load float, float* %27
%1579 = fneg float %1578
%1580 = load float*, float** %7
%1581 = load i32, i32* %8
%1582 = add nsw i32 %1581, 22
%1583 = sext i32 %1582 to i64
%1584 = getelementptr inbounds float, float* %1580, i64 %1583
store float %1579, float* %1584
%1585 = load float, float* %27
%1586 = load float*, float** %7
%1587 = load i32, i32* %8
%1588 = add nsw i32 %1587, 10
%1589 = sext i32 %1588 to i64
%1590 = getelementptr inbounds float, float* %1586, i64 %1589
store float %1585, float* %1590
%1591 = load float, float* %28
%1592 = fneg float %1591
%1593 = load float*, float** %7
%1594 = load i32, i32* %8
%1595 = add nsw i32 %1594, 21
%1596 = sext i32 %1595 to i64
%1597 = getelementptr inbounds float, float* %1593, i64 %1596
store float %1592, float* %1597
%1598 = load float, float* %28
%1599 = load float*, float** %7
%1600 = load i32, i32* %8
%1601 = add nsw i32 %1600, 11
%1602 = sext i32 %1601 to i64
%1603 = getelementptr inbounds float, float* %1599, i64 %1602
store float %1598, float* %1603
%1604 = load float, float* %21
%1605 = fneg float %1604
%1606 = load float*, float** %7
%1607 = load i32, i32* %8
%1608 = add nsw i32 %1607, 20
%1609 = sext i32 %1608 to i64
%1610 = getelementptr inbounds float, float* %1606, i64 %1609
store float %1605, float* %1610
%1611 = load float, float* %21
%1612 = load float*, float** %7
%1613 = load i32, i32* %8
%1614 = add nsw i32 %1613, 12
%1615 = sext i32 %1614 to i64
%1616 = getelementptr inbounds float, float* %1612, i64 %1615
store float %1611, float* %1616
%1617 = load float, float* %32
%1618 = fneg float %1617
%1619 = load float*, float** %7
%1620 = load i32, i32* %8
%1621 = add nsw i32 %1620, 19
%1622 = sext i32 %1621 to i64
%1623 = getelementptr inbounds float, float* %1619, i64 %1622
store float %1618, float* %1623
%1624 = load float, float* %32
%1625 = load float*, float** %7
%1626 = load i32, i32* %8
%1627 = add nsw i32 %1626, 13
%1628 = sext i32 %1627 to i64
%1629 = getelementptr inbounds float, float* %1625, i64 %1628
store float %1624, float* %1629
%1630 = load float, float* %39
%1631 = fneg float %1630
%1632 = load float*, float** %7
%1633 = load i32, i32* %8
%1634 = add nsw i32 %1633, 18
%1635 = sext i32 %1634 to i64
%1636 = getelementptr inbounds float, float* %1632, i64 %1635
store float %1631, float* %1636
%1637 = load float, float* %39
%1638 = load float*, float** %7
%1639 = load i32, i32* %8
%1640 = add nsw i32 %1639, 14
%1641 = sext i32 %1640 to i64
%1642 = getelementptr inbounds float, float* %1638, i64 %1641
store float %1637, float* %1642
%1643 = load float, float* %10
%1644 = fneg float %1643
%1645 = load float*, float** %7
%1646 = load i32, i32* %8
%1647 = add nsw i32 %1646, 17
%1648 = sext i32 %1647 to i64
%1649 = getelementptr inbounds float, float* %1645, i64 %1648
store float %1644, float* %1649
%1650 = load float, float* %10
%1651 = load float*, float** %7
%1652 = load i32, i32* %8
%1653 = add nsw i32 %1652, 15
%1654 = sext i32 %1653 to i64
%1655 = getelementptr inbounds float, float* %1651, i64 %1654
store float %1650, float* %1655
%1656 = load float*, float** %7
%1657 = load i32, i32* %8
%1658 = add nsw i32 %1657, 16
%1659 = sext i32 %1658 to i64
%1660 = getelementptr inbounds float, float* %1656, i64 %1659
store float 0.000000e+00, float* %1660
ret void
}

LLVM IR (-O2):
define void @matrix_transform([3 x i32]* %0, i32 %1, float* writeonly %2, i32 %3) {
%5 = sext i32 %1 to i64
%6 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 0, i64 %5
%7 = load i32, i32* %6
%8 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 31, i64 %5
%9 = load i32, i32* %8
%10 = add nsw i32 %9, %7
%11 = sitofp i32 %10 to float
%12 = sub nsw i32 %7, %9
%13 = sitofp i32 %12 to float
%14 = fpext float %13 to double
%15 = fmul double %14, 0x3FE004F094365D26
%16 = fptrunc double %15 to float
%17 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 1, i64 %5
%18 = load i32, i32* %17
%19 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 30, i64 %5
%20 = load i32, i32* %19
%21 = add nsw i32 %20, %18
%22 = sitofp i32 %21 to float
%23 = sub nsw i32 %18, %20
%24 = sitofp i32 %23 to float
%25 = fpext float %24 to double
%26 = fmul double %25, 0x3FE02CD16F3ADE4F
%27 = fptrunc double %26 to float
%28 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 2, i64 %5
%29 = load i32, i32* %28
%30 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 29, i64 %5
%31 = load i32, i32* %30
%32 = add nsw i32 %31, %29
%33 = sitofp i32 %32 to float
%34 = sub nsw i32 %29, %31
%35 = sitofp i32 %34 to float
%36 = fpext float %35 to double
%37 = fmul double %36, 0x3FE07E8B5B5DC657
%38 = fptrunc double %37 to float
%39 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 3, i64 %5
%40 = load i32, i32* %39
%41 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 28, i64 %5
%42 = load i32, i32* %41
%43 = add nsw i32 %42, %40
%44 = sitofp i32 %43 to float
%45 = sub nsw i32 %40, %42
%46 = sitofp i32 %45 to float
%47 = fpext float %46 to double
%48 = fmul double %47, 0x3FE0FE4D08307805
%49 = fptrunc double %48 to float
%50 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 4, i64 %5
%51 = load i32, i32* %50
%52 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 27, i64 %5
%53 = load i32, i32* %52
%54 = add nsw i32 %53, %51
%55 = sitofp i32 %54 to float
%56 = sub nsw i32 %51, %53
%57 = sitofp i32 %56 to float
%58 = fpext float %57 to double
%59 = fmul double %58, 0x3FE1B306F11832E8
%60 = fptrunc double %59 to float
%61 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 5, i64 %5
%62 = load i32, i32* %61
%63 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 26, i64 %5
%64 = load i32, i32* %63
%65 = add nsw i32 %64, %62
%66 = sitofp i32 %65 to float
%67 = sub nsw i32 %62, %64
%68 = sitofp i32 %67 to float
%69 = fpext float %68 to double
%70 = fmul double %69, 0x3FE2A7673C04775B
%71 = fptrunc double %70 to float
%72 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 6, i64 %5
%73 = load i32, i32* %72
%74 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 25, i64 %5
%75 = load i32, i32* %74
%76 = add nsw i32 %75, %73
%77 = sitofp i32 %76 to float
%78 = sub nsw i32 %73, %75
%79 = sitofp i32 %78 to float
%80 = fpext float %79 to double
%81 = fmul double %80, 0x3FE3EB8DC44212AE
%82 = fptrunc double %81 to float
%83 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 7, i64 %5
%84 = load i32, i32* %83
%85 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 24, i64 %5
%86 = load i32, i32* %85
%87 = add nsw i32 %86, %84
%88 = sitofp i32 %87 to float
%89 = sub nsw i32 %84, %86
%90 = sitofp i32 %89 to float
%91 = fpext float %90 to double
%92 = fmul double %91, 0x3FE59807A9B3C051
%93 = fptrunc double %92 to float
%94 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 8, i64 %5
%95 = load i32, i32* %94
%96 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 23, i64 %5
%97 = load i32, i32* %96
%98 = add nsw i32 %97, %95
%99 = sitofp i32 %98 to float
%100 = sub nsw i32 %95, %97
%101 = sitofp i32 %100 to float
%102 = fpext float %101 to double
%103 = fmul double %102, 0x3FE7D33DBAD475D4
%104 = fptrunc double %103 to float
%105 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 9, i64 %5
%106 = load i32, i32* %105
%107 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 22, i64 %5
%108 = load i32, i32* %107
%109 = add nsw i32 %108, %106
%110 = sitofp i32 %109 to float
%111 = sub nsw i32 %106, %108
%112 = sitofp i32 %111 to float
%113 = fpext float %112 to double
%114 = fmul double %113, 0x3FEADBF3C99F11BF
%115 = fptrunc double %114 to float
%116 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 10, i64 %5
%117 = load i32, i32* %116
%118 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 21, i64 %5
%119 = load i32, i32* %118
%120 = add nsw i32 %119, %117
%121 = sitofp i32 %120 to float
%122 = sub nsw i32 %117, %119
%123 = sitofp i32 %122 to float
%124 = fpext float %123 to double
%125 = fmul double %124, 0x3FEF1F476CD7DC46
%126 = fptrunc double %125 to float
%127 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 11, i64 %5
%128 = load i32, i32* %127
%129 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 20, i64 %5
%130 = load i32, i32* %129
%131 = add nsw i32 %130, %128
%132 = sitofp i32 %131 to float
%133 = sub nsw i32 %128, %130
%134 = sitofp i32 %133 to float
%135 = fpext float %134 to double
%136 = fmul double %135, 0x3FF2B606A5CB7E06
%137 = fptrunc double %136 to float
%138 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 12, i64 %5
%139 = load i32, i32* %138
%140 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 19, i64 %5
%141 = load i32, i32* %140
%142 = add nsw i32 %141, %139
%143 = sitofp i32 %142 to float
%144 = sub nsw i32 %139, %141
%145 = sitofp i32 %144 to float
%146 = fpext float %145 to double
%147 = fmul double %146, 0x3FF7BF23658EE8CF
%148 = fptrunc double %147 to float
%149 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 13, i64 %5
%150 = load i32, i32* %149
%151 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 18, i64 %5
%152 = load i32, i32* %151
%153 = add nsw i32 %152, %150
%154 = sitofp i32 %153 to float
%155 = sub nsw i32 %150, %152
%156 = sitofp i32 %155 to float
%157 = fpext float %156 to double
%158 = fmul double %157, 0x40007655E3E08553
%159 = fptrunc double %158 to float
%160 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 14, i64 %5
%161 = load i32, i32* %160
%162 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 17, i64 %5
%163 = load i32, i32* %162
%164 = add nsw i32 %163, %161
%165 = sitofp i32 %164 to float
%166 = sub nsw i32 %161, %163
%167 = sitofp i32 %166 to float
%168 = fpext float %167 to double
%169 = fmul double %168, 0x400B42C833D73935
%170 = fptrunc double %169 to float
%171 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 15, i64 %5
%172 = load i32, i32* %171
%173 = getelementptr inbounds [3 x i32], [3 x i32]* %0, i64 16, i64 %5
%174 = load i32, i32* %173
%175 = add nsw i32 %174, %172
%176 = sitofp i32 %175 to float
%177 = sub nsw i32 %172, %174
%178 = sitofp i32 %177 to float
%179 = fpext float %178 to double
%180 = fmul double %179, 0x40246148BEA8D04C
%181 = fptrunc double %180 to float
%182 = fadd float %11, %176
%183 = fsub float %11, %176
%184 = fpext float %183 to double
%185 = fmul double %184, 0x3FE013D19C61D3F7
%186 = fptrunc double %185 to float
%187 = fadd float %22, %165
%188 = fsub float %22, %165
%189 = fpext float %188 to double
%190 = fmul double %189, 0x3FE0B84F03EBEC51
%191 = fptrunc double %190 to float
%192 = fadd float %33, %154
%193 = fsub float %33, %154
%194 = fpext float %193 to double
%195 = fmul double %194, 0x3FE22467D1064DDE
%196 = fptrunc double %195 to float
%197 = fadd float %44, %143
%198 = fsub float %44, %143
%199 = fpext float %198 to double
%200 = fmul double %199, 0x3FE4B2C398BBE41F
%201 = fptrunc double %200 to float
%202 = fadd float %55, %132
%203 = fsub float %55, %132
%204 = fpext float %203 to double
%205 = fmul double %204, 0x3FE938900B7D3942
%206 = fptrunc double %205 to float
%207 = fadd float %66, %121
%208 = fsub float %66, %121
%209 = fpext float %208 to double
%210 = fmul double %209, 0x3FF0F8892A4EC8BC
%211 = fptrunc double %210 to float
%212 = fadd float %77, %110
%213 = fsub float %77, %110
%214 = fpext float %213 to double
%215 = fmul double %214, 0x3FFB8F24B0407E90
%216 = fptrunc double %215 to float
%217 = fadd float %88, %99
%218 = fsub float %88, %99
%219 = fpext float %218 to double
%220 = fmul double %219, 0x4014679380E53C8B
%221 = fptrunc double %220 to float
%222 = fadd float %217, %182
%223 = fsub float %182, %217
%224 = fpext float %223 to double
%225 = fmul double %224, 0x3FE0503ED17CB4B9
%226 = fptrunc double %225 to float
%227 = fadd float %212, %187
%228 = fsub float %187, %212
%229 = fpext float %228 to double
%230 = fmul double %229, 0x3FE33E37A1E015A6
%231 = fptrunc double %230 to float
%232 = fadd float %207, %192
%233 = fsub float %192, %207
%234 = fpext float %233 to double
%235 = fmul double %234, 0x3FECCC9AEFB17EB8
%236 = fptrunc double %235 to float
%237 = fadd float %202, %197
%238 = fsub float %197, %202
%239 = fpext float %238 to double
%240 = fmul double %239, 0x400480D9D073A6E8
%241 = fptrunc double %240 to float
%242 = fadd float %237, %222
%243 = fsub float %222, %237
%244 = fpext float %243 to double
%245 = fmul double %244, 0x3FE1517A7BDB31A6
%246 = fptrunc double %245 to float
%247 = fadd float %232, %227
%248 = fsub float %227, %232
%249 = fpext float %248 to double
%250 = fmul double %249, 0x3FF4E7AE914530BA
%251 = fptrunc double %250 to float
%252 = fadd float %247, %242
%253 = fsub float %242, %247
%254 = fpext float %253 to double
%255 = fmul double %254, 0x3FE6A09E667F4BB8
%256 = fptrunc double %255 to float
%257 = fadd float %251, %246
%258 = fsub float %246, %251
%259 = fpext float %258 to double
%260 = fmul double %259, 0x3FE6A09E667F4BB8
%261 = fptrunc double %260 to float
%262 = fadd float %257, %261
%263 = fadd float %241, %226
%264 = fsub float %226, %241
%265 = fpext float %264 to double
%266 = fmul double %265, 0x3FE1517A7BDB31A6
%267 = fptrunc double %266 to float
%268 = fadd float %236, %231
%269 = fsub float %231, %236
%270 = fpext float %269 to double
%271 = fmul double %270, 0x3FF4E7AE914530BA
%272 = fptrunc double %271 to float
%273 = fadd float %268, %263
%274 = fsub float %263, %268
%275 = fpext float %274 to double
%276 = fmul double %275, 0x3FE6A09E667F4BB8
%277 = fptrunc double %276 to float
%278 = fadd float %272, %267
%279 = fsub float %267, %272
%280 = fpext float %279 to double
%281 = fmul double %280, 0x3FE6A09E667F4BB8
%282 = fptrunc double %281 to float
%283 = fadd float %278, %282
%284 = fadd float %273, %283
%285 = fadd float %283, %277
%286 = fadd float %277, %282
%287 = fadd float %221, %186
%288 = fsub float %186, %221
%289 = fpext float %288 to double
%290 = fmul double %289, 0x3FE0503ED17CB4B9
%291 = fptrunc double %290 to float
%292 = fadd float %216, %191
%293 = fsub float %191, %216
%294 = fpext float %293 to double
%295 = fmul double %294, 0x3FE33E37A1E015A6
%296 = fptrunc double %295 to float
%297 = fadd float %211, %196
%298 = fsub float %196, %211
%299 = fpext float %298 to double
%300 = fmul double %299, 0x3FECCC9AEFB17EB8
%301 = fptrunc double %300 to float
%302 = fadd float %206, %201
%303 = fsub float %201, %206
%304 = fpext float %303 to double
%305 = fmul double %304, 0x400480D9D073A6E8
%306 = fptrunc double %305 to float
%307 = fadd float %302, %287
%308 = fsub float %287, %302
%309 = fpext float %308 to double
%310 = fmul double %309, 0x3FE1517A7BDB31A6
%311 = fptrunc double %310 to float
%312 = fadd float %297, %292
%313 = fsub float %292, %297
%314 = fpext float %313 to double
%315 = fmul double %314, 0x3FF4E7AE914530BA
%316 = fptrunc double %315 to float
%317 = fadd float %312, %307
%318 = fsub float %307, %312
%319 = fpext float %318 to double
%320 = fmul double %319, 0x3FE6A09E667F4BB8
%321 = fptrunc double %320 to float
%322 = fadd float %316, %311
%323 = fsub float %311, %316
%324 = fpext float %323 to double
%325 = fmul double %324, 0x3FE6A09E667F4BB8
%326 = fptrunc double %325 to float
%327 = fadd float %322, %326
%328 = fadd float %306, %291
%329 = fsub float %291, %306
%330 = fpext float %329 to double
%331 = fmul double %330, 0x3FE1517A7BDB31A6
%332 = fptrunc double %331 to float
%333 = fadd float %301, %296
%334 = fsub float %296, %301
%335 = fpext float %334 to double
%336 = fmul double %335, 0x3FF4E7AE914530BA
%337 = fptrunc double %336 to float
%338 = fadd float %333, %328
%339 = fsub float %328, %333
%340 = fpext float %339 to double
%341 = fmul double %340, 0x3FE6A09E667F4BB8
%342 = fptrunc double %341 to float
%343 = fadd float %337, %332
%344 = fsub float %332, %337
%345 = fpext float %344 to double
%346 = fmul double %345, 0x3FE6A09E667F4BB8
%347 = fptrunc double %346 to float
%348 = fadd float %343, %347
%349 = fadd float %338, %348
%350 = fadd float %348, %342
%351 = fadd float %342, %347
%352 = fadd float %317, %349
%353 = fadd float %327, %349
%354 = fadd float %327, %350
%355 = fadd float %350, %321
%356 = fadd float %351, %321
%357 = fadd float %351, %326
%358 = fadd float %326, %347
%359 = fadd float %16, %181
%360 = fsub float %16, %181
%361 = fpext float %360 to double
%362 = fmul double %361, 0x3FE013D19C61D3F7
%363 = fptrunc double %362 to float
%364 = fadd float %27, %170
%365 = fsub float %27, %170
%366 = fpext float %365 to double
%367 = fmul double %366, 0x3FE0B84F03EBEC51
%368 = fptrunc double %367 to float
%369 = fadd float %38, %159
%370 = fsub float %38, %159
%371 = fpext float %370 to double
%372 = fmul double %371, 0x3FE22467D1064DDE
%373 = fptrunc double %372 to float
%374 = fadd float %49, %148
%375 = fsub float %49, %148
%376 = fpext float %375 to double
%377 = fmul double %376, 0x3FE4B2C398BBE41F
%378 = fptrunc double %377 to float
%379 = fadd float %60, %137
%380 = fsub float %60, %137
%381 = fpext float %380 to double
%382 = fmul double %381, 0x3FE938900B7D3942
%383 = fptrunc double %382 to float
%384 = fadd float %71, %126
%385 = fsub float %71, %126
%386 = fpext float %385 to double
%387 = fmul double %386, 0x3FF0F8892A4EC8BC
%388 = fptrunc double %387 to float
%389 = fadd float %82, %115
%390 = fsub float %82, %115
%391 = fpext float %390 to double
%392 = fmul double %391, 0x3FFB8F24B0407E90
%393 = fptrunc double %392 to float
%394 = fadd float %93, %104
%395 = fsub float %93, %104
%396 = fpext float %395 to double
%397 = fmul double %396, 0x4014679380E53C8B
%398 = fptrunc double %397 to float
%399 = fadd float %394, %359
%400 = fsub float %359, %394
%401 = fpext float %400 to double
%402 = fmul double %401, 0x3FE0503ED17CB4B9
%403 = fptrunc double %402 to float
%404 = fadd float %389, %364
%405 = fsub float %364, %389
%406 = fpext float %405 to double
%407 = fmul double %406, 0x3FE33E37A1E015A6
%408 = fptrunc double %407 to float
%409 = fadd float %384, %369
%410 = fsub float %369, %384
%411 = fpext float %410 to double
%412 = fmul double %411, 0x3FECCC9AEFB17EB8
%413 = fptrunc double %412 to float
%414 = fadd float %379, %374
%415 = fsub float %374, %379
%416 = fpext float %415 to double
%417 = fmul double %416, 0x400480D9D073A6E8
%418 = fptrunc double %417 to float
%419 = fadd float %414, %399
%420 = fsub float %399, %414
%421 = fpext float %420 to double
%422 = fmul double %421, 0x3FE1517A7BDB31A6
%423 = fptrunc double %422 to float
%424 = fadd float %409, %404
%425 = fsub float %404, %409
%426 = fpext float %425 to double
%427 = fmul double %426, 0x3FF4E7AE914530BA
%428 = fptrunc double %427 to float
%429 = fadd float %424, %419
%430 = fsub float %419, %424
%431 = fpext float %430 to double
%432 = fmul double %431, 0x3FE6A09E667F4BB8
%433 = fptrunc double %432 to float
%434 = fadd float %428, %423
%435 = fsub float %423, %428
%436 = fpext float %435 to double
%437 = fmul double %436, 0x3FE6A09E667F4BB8
%438 = fptrunc double %437 to float
%439 = fadd float %434, %438
%440 = fadd float %418, %403
%441 = fsub float %403, %418
%442 = fpext float %441 to double
%443 = fmul double %442, 0x3FE1517A7BDB31A6
%444 = fptrunc double %443 to float
%445 = fadd float %413, %408
%446 = fsub float %408, %413
%447 = fpext float %446 to double
%448 = fmul double %447, 0x3FF4E7AE914530BA
%449 = fptrunc double %448 to float
%450 = fadd float %445, %440
%451 = fsub float %440, %445
%452 = fpext float %451 to double
%453 = fmul double %452, 0x3FE6A09E667F4BB8
%454 = fptrunc double %453 to float
%455 = fadd float %449, %444
%456 = fsub float %444, %449
%457 = fpext float %456 to double
%458 = fmul double %457, 0x3FE6A09E667F4BB8
%459 = fptrunc double %458 to float
%460 = fadd float %455, %459
%461 = fadd float %450, %460
%462 = fadd float %460, %454
%463 = fadd float %454, %459
%464 = fadd float %398, %363
%465 = fsub float %363, %398
%466 = fpext float %465 to double
%467 = fmul double %466, 0x3FE0503ED17CB4B9
%468 = fptrunc double %467 to float
%469 = fadd float %393, %368
%470 = fsub float %368, %393
%471 = fpext float %470 to double
%472 = fmul double %471, 0x3FE33E37A1E015A6
%473 = fptrunc double %472 to float
%474 = fadd float %388, %373
%475 = fsub float %373, %388
%476 = fpext float %475 to double
%477 = fmul double %476, 0x3FECCC9AEFB17EB8
%478 = fptrunc double %477 to float
%479 = fadd float %383, %378
%480 = fsub float %378, %383
%481 = fpext float %480 to double
%482 = fmul double %481, 0x400480D9D073A6E8
%483 = fptrunc double %482 to float
%484 = fadd float %479, %464
%485 = fsub float %464, %479
%486 = fpext float %485 to double
%487 = fmul double %486, 0x3FE1517A7BDB31A6
%488 = fptrunc double %487 to float
%489 = fadd float %474, %469
%490 = fsub float %469, %474
%491 = fpext float %490 to double
%492 = fmul double %491, 0x3FF4E7AE914530BA
%493 = fptrunc double %492 to float
%494 = fadd float %489, %484
%495 = fsub float %484, %489
%496 = fpext float %495 to double
%497 = fmul double %496, 0x3FE6A09E667F4BB8
%498 = fptrunc double %497 to float
%499 = fadd float %493, %488
%500 = fsub float %488, %493
%501 = fpext float %500 to double
%502 = fmul double %501, 0x3FE6A09E667F4BB8
%503 = fptrunc double %502 to float
%504 = fadd float %499, %503
%505 = fadd float %483, %468
%506 = fsub float %468, %483
%507 = fpext float %506 to double
%508 = fmul double %507, 0x3FE1517A7BDB31A6
%509 = fptrunc double %508 to float
%510 = fadd float %478, %473
%511 = fsub float %473, %478
%512 = fpext float %511 to double
%513 = fmul double %512, 0x3FF4E7AE914530BA
%514 = fptrunc double %513 to float
%515 = fadd float %510, %505
%516 = fsub float %505, %510
%517 = fpext float %516 to double
%518 = fmul double %517, 0x3FE6A09E667F4BB8
%519 = fptrunc double %518 to float
%520 = fadd float %514, %509
%521 = fsub float %509, %514
%522 = fpext float %521 to double
%523 = fmul double %522, 0x3FE6A09E667F4BB8
%524 = fptrunc double %523 to float
%525 = fadd float %520, %524
%526 = fadd float %515, %525
%527 = fadd float %525, %519
%528 = fadd float %519, %524
%529 = fadd float %494, %526
%530 = fadd float %504, %526
%531 = fadd float %504, %527
%532 = fadd float %527, %498
%533 = fadd float %528, %498
%534 = fadd float %528, %503
%535 = fadd float %503, %524
%536 = fadd float %429, %529
%537 = fadd float %461, %529
%538 = fadd float %461, %530
%539 = fadd float %439, %530
%540 = fadd float %439, %531
%541 = fadd float %462, %531
%542 = fadd float %462, %532
%543 = fadd float %532, %433
%544 = fadd float %533, %433
%545 = fadd float %463, %533
%546 = fadd float %463, %534
%547 = fadd float %534, %438
%548 = fadd float %535, %438
%549 = fadd float %535, %459
%550 = fadd float %459, %524
%551 = fneg float %252
%552 = add nsw i32 %3, 48
%553 = sext i32 %552 to i64
%554 = getelementptr inbounds float, float* %2, i64 %553
store float %551, float* %554
%555 = fneg float %536
%556 = add nsw i32 %3, 47
%557 = sext i32 %556 to i64
%558 = getelementptr inbounds float, float* %2, i64 %557
store float %555, float* %558
%559 = add nsw i32 %3, 49
%560 = sext i32 %559 to i64
%561 = getelementptr inbounds float, float* %2, i64 %560
store float %555, float* %561
%562 = fneg float %352
%563 = add nsw i32 %3, 46
%564 = sext i32 %563 to i64
%565 = getelementptr inbounds float, float* %2, i64 %564
store float %562, float* %565
%566 = add nsw i32 %3, 50
%567 = sext i32 %566 to i64
%568 = getelementptr inbounds float, float* %2, i64 %567
store float %562, float* %568
%569 = fneg float %537
%570 = add nsw i32 %3, 45
%571 = sext i32 %570 to i64
%572 = getelementptr inbounds float, float* %2, i64 %571
store float %569, float* %572
%573 = add nsw i32 %3, 51
%574 = sext i32 %573 to i64
%575 = getelementptr inbounds float, float* %2, i64 %574
store float %569, float* %575
%576 = fneg float %284
%577 = add nsw i32 %3, 44
%578 = sext i32 %577 to i64
%579 = getelementptr inbounds float, float* %2, i64 %578
store float %576, float* %579
%580 = add nsw i32 %3, 52
%581 = sext i32 %580 to i64
%582 = getelementptr inbounds float, float* %2, i64 %581
store float %576, float* %582
%583 = fneg float %538
%584 = add nsw i32 %3, 43
%585 = sext i32 %584 to i64
%586 = getelementptr inbounds float, float* %2, i64 %585
store float %583, float* %586
%587 = add nsw i32 %3, 53
%588 = sext i32 %587 to i64
%589 = getelementptr inbounds float, float* %2, i64 %588
store float %583, float* %589
%590 = fneg float %353
%591 = add nsw i32 %3, 42
%592 = sext i32 %591 to i64
%593 = getelementptr inbounds float, float* %2, i64 %592
store float %590, float* %593
%594 = add nsw i32 %3, 54
%595 = sext i32 %594 to i64
%596 = getelementptr inbounds float, float* %2, i64 %595
store float %590, float* %596
%597 = fneg float %539
%598 = add nsw i32 %3, 41
%599 = sext i32 %598 to i64
%600 = getelementptr inbounds float, float* %2, i64 %599
store float %597, float* %600
%601 = add nsw i32 %3, 55
%602 = sext i32 %601 to i64
%603 = getelementptr inbounds float, float* %2, i64 %602
store float %597, float* %603
%604 = fneg float %262
%605 = add nsw i32 %3, 40
%606 = sext i32 %605 to i64
%607 = getelementptr inbounds float, float* %2, i64 %606
store float %604, float* %607
%608 = add nsw i32 %3, 56
%609 = sext i32 %608 to i64
%610 = getelementptr inbounds float, float* %2, i64 %609
store float %604, float* %610
%611 = fneg float %540
%612 = add nsw i32 %3, 39
%613 = sext i32 %612 to i64
%614 = getelementptr inbounds float, float* %2, i64 %613
store float %611, float* %614
%615 = add nsw i32 %3, 57
%616 = sext i32 %615 to i64
%617 = getelementptr inbounds float, float* %2, i64 %616
store float %611, float* %617
%618 = fneg float %354
%619 = add nsw i32 %3, 38
%620 = sext i32 %619 to i64
%621 = getelementptr inbounds float, float* %2, i64 %620
store float %618, float* %621
%622 = add nsw i32 %3, 58
%623 = sext i32 %622 to i64
%624 = getelementptr inbounds float, float* %2, i64 %623
store float %618, float* %624
%625 = fneg float %541
%626 = add nsw i32 %3, 37
%627 = sext i32 %626 to i64
%628 = getelementptr inbounds float, float* %2, i64 %627
store float %625, float* %628
%629 = add nsw i32 %3, 59
%630 = sext i32 %629 to i64
%631 = getelementptr inbounds float, float* %2, i64 %630
store float %625, float* %631
%632 = fneg float %285
%633 = add nsw i32 %3, 36
%634 = sext i32 %633 to i64
%635 = getelementptr inbounds float, float* %2, i64 %634
store float %632, float* %635
%636 = add nsw i32 %3, 60
%637 = sext i32 %636 to i64
%638 = getelementptr inbounds float, float* %2, i64 %637
store float %632, float* %638
%639 = fneg float %542
%640 = add nsw i32 %3, 35
%641 = sext i32 %640 to i64
%642 = getelementptr inbounds float, float* %2, i64 %641
store float %639, float* %642
%643 = add nsw i32 %3, 61
%644 = sext i32 %643 to i64
%645 = getelementptr inbounds float, float* %2, i64 %644
store float %639, float* %645
%646 = fneg float %355
%647 = add nsw i32 %3, 34
%648 = sext i32 %647 to i64
%649 = getelementptr inbounds float, float* %2, i64 %648
store float %646, float* %649
%650 = add nsw i32 %3, 62
%651 = sext i32 %650 to i64
%652 = getelementptr inbounds float, float* %2, i64 %651
store float %646, float* %652
%653 = fneg float %543
%654 = add nsw i32 %3, 33
%655 = sext i32 %654 to i64
%656 = getelementptr inbounds float, float* %2, i64 %655
store float %653, float* %656
%657 = add nsw i32 %3, 63
%658 = sext i32 %657 to i64
%659 = getelementptr inbounds float, float* %2, i64 %658
store float %653, float* %659
%660 = fneg float %256
%661 = add nsw i32 %3, 32
%662 = sext i32 %661 to i64
%663 = getelementptr inbounds float, float* %2, i64 %662
store float %660, float* %663
%664 = sext i32 %3 to i64
%665 = getelementptr inbounds float, float* %2, i64 %664
store float %256, float* %665
%666 = fneg float %544
%667 = add nsw i32 %3, 31
%668 = sext i32 %667 to i64
%669 = getelementptr inbounds float, float* %2, i64 %668
store float %666, float* %669
%670 = add nsw i32 %3, 1
%671 = sext i32 %670 to i64
%672 = getelementptr inbounds float, float* %2, i64 %671
store float %544, float* %672
%673 = fneg float %356
%674 = add nsw i32 %3, 30
%675 = sext i32 %674 to i64
%676 = getelementptr inbounds float, float* %2, i64 %675
store float %673, float* %676
%677 = add nsw i32 %3, 2
%678 = sext i32 %677 to i64
%679 = getelementptr inbounds float, float* %2, i64 %678
store float %356, float* %679
%680 = fneg float %545
%681 = add nsw i32 %3, 29
%682 = sext i32 %681 to i64
%683 = getelementptr inbounds float, float* %2, i64 %682
store float %680, float* %683
%684 = add nsw i32 %3, 3
%685 = sext i32 %684 to i64
%686 = getelementptr inbounds float, float* %2, i64 %685
store float %545, float* %686
%687 = fneg float %286
%688 = add nsw i32 %3, 28
%689 = sext i32 %688 to i64
%690 = getelementptr inbounds float, float* %2, i64 %689
store float %687, float* %690
%691 = add nsw i32 %3, 4
%692 = sext i32 %691 to i64
%693 = getelementptr inbounds float, float* %2, i64 %692
store float %286, float* %693
%694 = fneg float %546
%695 = add nsw i32 %3, 27
%696 = sext i32 %695 to i64
%697 = getelementptr inbounds float, float* %2, i64 %696
store float %694, float* %697
%698 = add nsw i32 %3, 5
%699 = sext i32 %698 to i64
%700 = getelementptr inbounds float, float* %2, i64 %699
store float %546, float* %700
%701 = fneg float %357
%702 = add nsw i32 %3, 26
%703 = sext i32 %702 to i64
%704 = getelementptr inbounds float, float* %2, i64 %703
store float %701, float* %704
%705 = add nsw i32 %3, 6
%706 = sext i32 %705 to i64
%707 = getelementptr inbounds float, float* %2, i64 %706
store float %357, float* %707
%708 = fneg float %547
%709 = add nsw i32 %3, 25
%710 = sext i32 %709 to i64
%711 = getelementptr inbounds float, float* %2, i64 %710
store float %708, float* %711
%712 = add nsw i32 %3, 7
%713 = sext i32 %712 to i64
%714 = getelementptr inbounds float, float* %2, i64 %713
store float %547, float* %714
%715 = fneg float %261
%716 = add nsw i32 %3, 24
%717 = sext i32 %716 to i64
%718 = getelementptr inbounds float, float* %2, i64 %717
store float %715, float* %718
%719 = add nsw i32 %3, 8
%720 = sext i32 %719 to i64
%721 = getelementptr inbounds float, float* %2, i64 %720
store float %261, float* %721
%722 = fneg float %548
%723 = add nsw i32 %3, 23
%724 = sext i32 %723 to i64
%725 = getelementptr inbounds float, float* %2, i64 %724
store float %722, float* %725
%726 = add nsw i32 %3, 9
%727 = sext i32 %726 to i64
%728 = getelementptr inbounds float, float* %2, i64 %727
store float %548, float* %728
%729 = fneg float %358
%730 = add nsw i32 %3, 22
%731 = sext i32 %730 to i64
%732 = getelementptr inbounds float, float* %2, i64 %731
store float %729, float* %732
%733 = add nsw i32 %3, 10
%734 = sext i32 %733 to i64
%735 = getelementptr inbounds float, float* %2, i64 %734
store float %358, float* %735
%736 = fneg float %549
%737 = add nsw i32 %3, 21
%738 = sext i32 %737 to i64
%739 = getelementptr inbounds float, float* %2, i64 %738
store float %736, float* %739
%740 = add nsw i32 %3, 11
%741 = sext i32 %740 to i64
%742 = getelementptr inbounds float, float* %2, i64 %741
store float %549, float* %742
%743 = fneg float %282
%744 = add nsw i32 %3, 20
%745 = sext i32 %744 to i64
%746 = getelementptr inbounds float, float* %2, i64 %745
store float %743, float* %746
%747 = add nsw i32 %3, 12
%748 = sext i32 %747 to i64
%749 = getelementptr inbounds float, float* %2, i64 %748
store float %282, float* %749
%750 = fneg float %550
%751 = add nsw i32 %3, 19
%752 = sext i32 %751 to i64
%753 = getelementptr inbounds float, float* %2, i64 %752
store float %750, float* %753
%754 = add nsw i32 %3, 13
%755 = sext i32 %754 to i64
%756 = getelementptr inbounds float, float* %2, i64 %755
store float %550, float* %756
%757 = fneg float %347
%758 = add nsw i32 %3, 18
%759 = sext i32 %758 to i64
%760 = getelementptr inbounds float, float* %2, i64 %759
store float %757, float* %760
%761 = add nsw i32 %3, 14
%762 = sext i32 %761 to i64
%763 = getelementptr inbounds float, float* %2, i64 %762
store float %347, float* %763
%764 = fneg float %524
%765 = add nsw i32 %3, 17
%766 = sext i32 %765 to i64
%767 = getelementptr inbounds float, float* %2, i64 %766
store float %764, float* %767
%768 = add nsw i32 %3, 15
%769 = sext i32 %768 to i64
%770 = getelementptr inbounds float, float* %2, i64 %769
store float %524, float* %770
%771 = add nsw i32 %3, 16
%772 = sext i32 %771 to i64
%773 = getelementptr inbounds float, float* %2, i64 %772
store float 0.000000e+00, float* %773
ret void
}