// File: /workspace/github_c_makefile_star2_O0/pavel-demin[P]ft8d-c/pffft.c
// Function: radf4_ps
static NEVER_INLINE(void) radf4_ps(int ido, int l1, const v4sf *RESTRICT cc, v4sf * RESTRICT ch,
                                   const float * RESTRICT wa1, const float * RESTRICT wa2, const float * RESTRICT wa3)
{
  static const float minus_hsqt2 = (float)-0.7071067811865475;
  int i, k, l1ido = l1*ido;
  {
    const v4sf *RESTRICT cc_ = cc, * RESTRICT cc_end = cc + l1ido;
    v4sf * RESTRICT ch_ = ch;
    while (cc < cc_end) {
      // this loop represents between 25% and 40% of total radf4_ps cost !
      v4sf a0 = cc[0], a1 = cc[l1ido];
      v4sf a2 = cc[2*l1ido], a3 = cc[3*l1ido];
      v4sf tr1 = VADD(a1, a3);
      v4sf tr2 = VADD(a0, a2);
      ch[2*ido-1] = VSUB(a0, a2);
      ch[2*ido  ] = VSUB(a3, a1);
      ch[0      ] = VADD(tr1, tr2);
      ch[4*ido-1] = VSUB(tr2, tr1);
      cc += ido; ch += 4*ido;
    }
    cc = cc_; ch = ch_;
  }
  if (ido < 2) return;
  if (ido != 2) {
    for (k = 0; k < l1ido; k += ido) {
      const v4sf * RESTRICT pc = (v4sf*)(cc + 1 + k);
      for (i=2; i<ido; i += 2, pc += 2) {
        int ic = ido - i;
        v4sf wr, wi, cr2, ci2, cr3, ci3, cr4, ci4;
        v4sf tr1, ti1, tr2, ti2, tr3, ti3, tr4, ti4;

        cr2 = pc[1*l1ido+0];
        ci2 = pc[1*l1ido+1];
        wr=LD_PS1(wa1[i - 2]);
        wi=LD_PS1(wa1[i - 1]);
        VCPLXMULCONJ(cr2,ci2,wr,wi);

        cr3 = pc[2*l1ido+0];
        ci3 = pc[2*l1ido+1];
        wr = LD_PS1(wa2[i-2]);
        wi = LD_PS1(wa2[i-1]);
        VCPLXMULCONJ(cr3, ci3, wr, wi);

        cr4 = pc[3*l1ido];
        ci4 = pc[3*l1ido+1];
        wr = LD_PS1(wa3[i-2]);
        wi = LD_PS1(wa3[i-1]);
        VCPLXMULCONJ(cr4, ci4, wr, wi);

        /* at this point, on SSE, five of "cr2 cr3 cr4 ci2 ci3 ci4" should be loaded in registers */

        tr1 = VADD(cr2,cr4);
        tr4 = VSUB(cr4,cr2);
        tr2 = VADD(pc[0],cr3);
        tr3 = VSUB(pc[0],cr3);
        ch[i - 1 + 4*k] = VADD(tr1,tr2);
        ch[ic - 1 + 4*k + 3*ido] = VSUB(tr2,tr1); // at this point tr1 and tr2 can be disposed
        ti1 = VADD(ci2,ci4);
        ti4 = VSUB(ci2,ci4);
        ch[i - 1 + 4*k + 2*ido] = VADD(ti4,tr3);
        ch[ic - 1 + 4*k + 1*ido] = VSUB(tr3,ti4); // dispose tr3, ti4
        ti2 = VADD(pc[1],ci3);
        ti3 = VSUB(pc[1],ci3);
        ch[i + 4*k] = VADD(ti1, ti2);
        ch[ic + 4*k + 3*ido] = VSUB(ti1, ti2);
        ch[i + 4*k + 2*ido] = VADD(tr4, ti3);
        ch[ic + 4*k + 1*ido] = VSUB(tr4, ti3);
      }
    }
    if (ido % 2 == 1) return;
  }
  for (k=0; k<l1ido; k += ido) {
    v4sf a = cc[ido-1 + k + l1ido], b = cc[ido-1 + k + 3*l1ido];
    v4sf c = cc[ido-1 + k], d = cc[ido-1 + k + 2*l1ido];
    v4sf ti1 = SVMUL(minus_hsqt2, VADD(a, b));
    v4sf tr1 = SVMUL(minus_hsqt2, VSUB(b, a));
    ch[ido-1 + 4*k] = VADD(tr1, c);
    ch[ido-1 + 4*k + 2*ido] = VSUB(c, tr1);
    ch[4*k + 1*ido] = VSUB(ti1, d);
    ch[4*k + 3*ido] = VADD(ti1, d);
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x8d0, %rsp            # imm = 0x8D0
movq 0x10(%rbp), %rax
movl %edi, -0x704(%rbp)
movl %esi, -0x708(%rbp)
movq %rdx, -0x710(%rbp)
movq %rcx, -0x718(%rbp)
movq %r8, -0x720(%rbp)
movq %r9, -0x728(%rbp)
movl -0x708(%rbp), %eax
imull -0x704(%rbp), %eax
movl %eax, -0x734(%rbp)
movq -0x710(%rbp), %rax
movq %rax, -0x740(%rbp)
movq -0x710(%rbp), %rax
movslq -0x734(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x748(%rbp)
movq -0x718(%rbp), %rax
movq %rax, -0x750(%rbp)
movq -0x710(%rbp), %rax
cmpq -0x748(%rbp), %rax
jae 0xf98a
movq -0x710(%rbp), %rax
movaps (%rax), %xmm0
movaps %xmm0, -0x760(%rbp)
movq -0x710(%rbp), %rax
movslq -0x734(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps (%rax), %xmm0
movaps %xmm0, -0x770(%rbp)
movq -0x710(%rbp), %rax
movl -0x734(%rbp), %ecx
shll %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps (%rax), %xmm0
movaps %xmm0, -0x780(%rbp)
movq -0x710(%rbp), %rax
imull $0x3, -0x734(%rbp), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps (%rax), %xmm0
movaps %xmm0, -0x790(%rbp)
movaps -0x770(%rbp), %xmm1
movaps -0x790(%rbp), %xmm0
movaps %xmm1, -0x4f0(%rbp)
movaps %xmm0, -0x500(%rbp)
movaps -0x4f0(%rbp), %xmm0
addps -0x500(%rbp), %xmm0
movaps %xmm0, -0x7a0(%rbp)
movaps -0x760(%rbp), %xmm1
movaps -0x780(%rbp), %xmm0
movaps %xmm1, -0x510(%rbp)
movaps %xmm0, -0x520(%rbp)
movaps -0x510(%rbp), %xmm0
addps -0x520(%rbp), %xmm0
movaps %xmm0, -0x7b0(%rbp)
movaps -0x760(%rbp), %xmm1
movaps -0x780(%rbp), %xmm0
movaps %xmm1, -0x10(%rbp)
movaps %xmm0, -0x20(%rbp)
movaps -0x10(%rbp), %xmm0
subps -0x20(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x704(%rbp), %ecx
shll %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x790(%rbp), %xmm1
movaps -0x770(%rbp), %xmm0
movaps %xmm1, -0x30(%rbp)
movaps %xmm0, -0x40(%rbp)
movaps -0x30(%rbp), %xmm0
subps -0x40(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x704(%rbp), %ecx
shll %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x7a0(%rbp), %xmm1
movaps -0x7b0(%rbp), %xmm0
movaps %xmm1, -0x530(%rbp)
movaps %xmm0, -0x540(%rbp)
movaps -0x530(%rbp), %xmm0
addps -0x540(%rbp), %xmm0
movq -0x718(%rbp), %rax
movaps %xmm0, (%rax)
movaps -0x7b0(%rbp), %xmm1
movaps -0x7a0(%rbp), %xmm0
movaps %xmm1, -0x50(%rbp)
movaps %xmm0, -0x60(%rbp)
movaps -0x50(%rbp), %xmm0
subps -0x60(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x704(%rbp), %ecx
shll $0x2, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movl -0x704(%rbp), %ecx
movq -0x710(%rbp), %rax
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x710(%rbp)
movl -0x704(%rbp), %ecx
shll $0x2, %ecx
movq -0x718(%rbp), %rax
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x718(%rbp)
jmp 0xf772
movq -0x740(%rbp), %rax
movq %rax, -0x710(%rbp)
movq -0x750(%rbp), %rax
movq %rax, -0x718(%rbp)
cmpl $0x2, -0x704(%rbp)
jge 0xf9b4
jmp 0x107b9
cmpl $0x2, -0x704(%rbp)
je 0x1047e
movl $0x0, -0x730(%rbp)
movl -0x730(%rbp), %eax
cmpl -0x734(%rbp), %eax
jge 0x10464
movq -0x710(%rbp), %rax
addq $0x10, %rax
movslq -0x730(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x7b8(%rbp)
movl $0x2, -0x72c(%rbp)
movl -0x72c(%rbp), %eax
cmpl -0x704(%rbp), %eax
jge 0x1044b
movl -0x704(%rbp), %eax
movl -0x72c(%rbp), %ecx
subl %ecx, %eax
movl %eax, -0x7bc(%rbp)
movq -0x7b8(%rbp), %rax
movslq -0x734(%rbp), %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x7f0(%rbp)
movq -0x7b8(%rbp), %rcx
movslq -0x734(%rbp), %rax
shlq $0x4, %rax
movaps 0x10(%rax,%rcx), %xmm0
movaps %xmm0, -0x800(%rbp)
movq -0x720(%rbp), %rax
movl -0x72c(%rbp), %ecx
addl $-0x2, %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x224(%rbp)
movss -0x224(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x240(%rbp)
movaps -0x240(%rbp), %xmm0
movaps %xmm0, -0x7d0(%rbp)
movq -0x720(%rbp), %rax
movl -0x72c(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x244(%rbp)
movss -0x244(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x260(%rbp)
movaps -0x260(%rbp), %xmm0
movaps %xmm0, -0x7e0(%rbp)
movaps -0x7f0(%rbp), %xmm1
movaps -0x7e0(%rbp), %xmm0
movaps %xmm1, -0x330(%rbp)
movaps %xmm0, -0x340(%rbp)
movaps -0x330(%rbp), %xmm0
movaps -0x340(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x8d0(%rbp)
movaps -0x7f0(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x350(%rbp)
movaps %xmm0, -0x360(%rbp)
movaps -0x350(%rbp), %xmm0
movaps -0x360(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x7f0(%rbp)
movaps -0x7f0(%rbp), %xmm1
movaps -0x800(%rbp), %xmm2
movaps -0x7e0(%rbp), %xmm0
movaps %xmm2, -0x370(%rbp)
movaps %xmm0, -0x380(%rbp)
movaps -0x370(%rbp), %xmm0
movaps -0x380(%rbp), %xmm2
mulps %xmm2, %xmm0
movaps %xmm1, -0x550(%rbp)
movaps %xmm0, -0x560(%rbp)
movaps -0x550(%rbp), %xmm0
movaps -0x560(%rbp), %xmm1
addps %xmm1, %xmm0
movaps %xmm0, -0x7f0(%rbp)
movaps -0x800(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x390(%rbp)
movaps %xmm0, -0x3a0(%rbp)
movaps -0x390(%rbp), %xmm0
movaps -0x3a0(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x800(%rbp)
movaps -0x800(%rbp), %xmm1
movaps -0x8d0(%rbp), %xmm0
movaps %xmm1, -0x70(%rbp)
movaps %xmm0, -0x80(%rbp)
movaps -0x70(%rbp), %xmm0
movaps -0x80(%rbp), %xmm1
subps %xmm1, %xmm0
movaps %xmm0, -0x800(%rbp)
movq -0x7b8(%rbp), %rax
movl -0x734(%rbp), %ecx
addl %ecx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x810(%rbp)
movq -0x7b8(%rbp), %rax
movl -0x734(%rbp), %ecx
addl %ecx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps 0x10(%rax,%rcx), %xmm0
movaps %xmm0, -0x820(%rbp)
movq -0x728(%rbp), %rax
movl -0x72c(%rbp), %ecx
addl $-0x2, %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x264(%rbp)
movss -0x264(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x280(%rbp)
movaps -0x280(%rbp), %xmm0
movaps %xmm0, -0x7d0(%rbp)
movq -0x728(%rbp), %rax
movl -0x72c(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x284(%rbp)
movss -0x284(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x2a0(%rbp)
movaps -0x2a0(%rbp), %xmm0
movaps %xmm0, -0x7e0(%rbp)
movaps -0x810(%rbp), %xmm1
movaps -0x7e0(%rbp), %xmm0
movaps %xmm1, -0x3b0(%rbp)
movaps %xmm0, -0x3c0(%rbp)
movaps -0x3b0(%rbp), %xmm0
movaps -0x3c0(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x8e0(%rbp)
movaps -0x810(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x3d0(%rbp)
movaps %xmm0, -0x3e0(%rbp)
movaps -0x3d0(%rbp), %xmm0
movaps -0x3e0(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x810(%rbp)
movaps -0x810(%rbp), %xmm1
movaps -0x820(%rbp), %xmm2
movaps -0x7e0(%rbp), %xmm0
movaps %xmm2, -0x3f0(%rbp)
movaps %xmm0, -0x400(%rbp)
movaps -0x3f0(%rbp), %xmm0
movaps -0x400(%rbp), %xmm2
mulps %xmm2, %xmm0
movaps %xmm1, -0x570(%rbp)
movaps %xmm0, -0x580(%rbp)
movaps -0x570(%rbp), %xmm0
movaps -0x580(%rbp), %xmm1
addps %xmm1, %xmm0
movaps %xmm0, -0x810(%rbp)
movaps -0x820(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x410(%rbp)
movaps %xmm0, -0x420(%rbp)
movaps -0x410(%rbp), %xmm0
movaps -0x420(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x820(%rbp)
movaps -0x820(%rbp), %xmm1
movaps -0x8e0(%rbp), %xmm0
movaps %xmm1, -0x90(%rbp)
movaps %xmm0, -0xa0(%rbp)
movaps -0x90(%rbp), %xmm0
movaps -0xa0(%rbp), %xmm1
subps %xmm1, %xmm0
movaps %xmm0, -0x820(%rbp)
movq -0x7b8(%rbp), %rax
movl -0x734(%rbp), %edx
movl %edx, %ecx
leal (%rcx,%rcx,2), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x830(%rbp)
movq -0x7b8(%rbp), %rcx
movl -0x734(%rbp), %edx
movl %edx, %eax
leal (%rax,%rax,2), %eax
cltq
shlq $0x4, %rax
movaps 0x10(%rax,%rcx), %xmm0
movaps %xmm0, -0x840(%rbp)
movq 0x10(%rbp), %rax
movl -0x72c(%rbp), %ecx
addl $-0x2, %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x2a4(%rbp)
movss -0x2a4(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x2c0(%rbp)
movaps -0x2c0(%rbp), %xmm0
movaps %xmm0, -0x7d0(%rbp)
movq 0x10(%rbp), %rax
movl -0x72c(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
movss (%rax,%rcx,4), %xmm0
movss %xmm0, -0x2d0(%rbp)
movaps -0x2d0(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x2e0(%rbp)
movaps -0x2e0(%rbp), %xmm0
movaps %xmm0, -0x7e0(%rbp)
movaps -0x830(%rbp), %xmm1
movaps -0x7e0(%rbp), %xmm0
movaps %xmm1, -0x430(%rbp)
movaps %xmm0, -0x440(%rbp)
movaps -0x430(%rbp), %xmm0
mulps -0x440(%rbp), %xmm0
movaps %xmm0, -0x8f0(%rbp)
movaps -0x830(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x450(%rbp)
movaps %xmm0, -0x460(%rbp)
movaps -0x450(%rbp), %xmm0
mulps -0x460(%rbp), %xmm0
movaps %xmm0, -0x830(%rbp)
movaps -0x830(%rbp), %xmm1
movaps -0x840(%rbp), %xmm2
movaps -0x7e0(%rbp), %xmm0
movaps %xmm2, -0x470(%rbp)
movaps %xmm0, -0x480(%rbp)
movaps -0x470(%rbp), %xmm0
mulps -0x480(%rbp), %xmm0
movaps %xmm1, -0x590(%rbp)
movaps %xmm0, -0x5a0(%rbp)
movaps -0x590(%rbp), %xmm0
addps -0x5a0(%rbp), %xmm0
movaps %xmm0, -0x830(%rbp)
movaps -0x840(%rbp), %xmm1
movaps -0x7d0(%rbp), %xmm0
movaps %xmm1, -0x490(%rbp)
movaps %xmm0, -0x4a0(%rbp)
movaps -0x490(%rbp), %xmm0
mulps -0x4a0(%rbp), %xmm0
movaps %xmm0, -0x840(%rbp)
movaps -0x840(%rbp), %xmm1
movaps -0x8f0(%rbp), %xmm0
movaps %xmm1, -0xb0(%rbp)
movaps %xmm0, -0xc0(%rbp)
movaps -0xb0(%rbp), %xmm0
subps -0xc0(%rbp), %xmm0
movaps %xmm0, -0x840(%rbp)
movaps -0x7f0(%rbp), %xmm1
movaps -0x830(%rbp), %xmm0
movaps %xmm1, -0x5b0(%rbp)
movaps %xmm0, -0x5c0(%rbp)
movaps -0x5b0(%rbp), %xmm0
addps -0x5c0(%rbp), %xmm0
movaps %xmm0, -0x850(%rbp)
movaps -0x830(%rbp), %xmm1
movaps -0x7f0(%rbp), %xmm0
movaps %xmm1, -0xd0(%rbp)
movaps %xmm0, -0xe0(%rbp)
movaps -0xd0(%rbp), %xmm0
subps -0xe0(%rbp), %xmm0
movaps %xmm0, -0x8b0(%rbp)
movq -0x7b8(%rbp), %rax
movaps (%rax), %xmm1
movaps -0x810(%rbp), %xmm0
movaps %xmm1, -0x5d0(%rbp)
movaps %xmm0, -0x5e0(%rbp)
movaps -0x5d0(%rbp), %xmm0
addps -0x5e0(%rbp), %xmm0
movaps %xmm0, -0x870(%rbp)
movq -0x7b8(%rbp), %rax
movaps (%rax), %xmm1
movaps -0x810(%rbp), %xmm0
movaps %xmm1, -0xf0(%rbp)
movaps %xmm0, -0x100(%rbp)
movaps -0xf0(%rbp), %xmm0
subps -0x100(%rbp), %xmm0
movaps %xmm0, -0x890(%rbp)
movaps -0x850(%rbp), %xmm1
movaps -0x870(%rbp), %xmm0
movaps %xmm1, -0x5f0(%rbp)
movaps %xmm0, -0x600(%rbp)
movaps -0x5f0(%rbp), %xmm0
addps -0x600(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x72c(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x870(%rbp), %xmm1
movaps -0x850(%rbp), %xmm0
movaps %xmm1, -0x110(%rbp)
movaps %xmm0, -0x120(%rbp)
movaps -0x110(%rbp), %xmm0
subps -0x120(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x7bc(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
imull $0x3, -0x704(%rbp), %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x800(%rbp), %xmm1
movaps -0x840(%rbp), %xmm0
movaps %xmm1, -0x610(%rbp)
movaps %xmm0, -0x620(%rbp)
movaps -0x610(%rbp), %xmm0
addps -0x620(%rbp), %xmm0
movaps %xmm0, -0x860(%rbp)
movaps -0x800(%rbp), %xmm1
movaps -0x840(%rbp), %xmm0
movaps %xmm1, -0x130(%rbp)
movaps %xmm0, -0x140(%rbp)
movaps -0x130(%rbp), %xmm0
subps -0x140(%rbp), %xmm0
movaps %xmm0, -0x8c0(%rbp)
movaps -0x8c0(%rbp), %xmm1
movaps -0x890(%rbp), %xmm0
movaps %xmm1, -0x630(%rbp)
movaps %xmm0, -0x640(%rbp)
movaps -0x630(%rbp), %xmm0
addps -0x640(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x72c(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movl -0x704(%rbp), %edx
shll %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x890(%rbp), %xmm1
movaps -0x8c0(%rbp), %xmm0
movaps %xmm1, -0x150(%rbp)
movaps %xmm0, -0x160(%rbp)
movaps -0x150(%rbp), %xmm0
subps -0x160(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x7bc(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movl -0x704(%rbp), %edx
shll $0x0, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movq -0x7b8(%rbp), %rax
movaps 0x10(%rax), %xmm1
movaps -0x820(%rbp), %xmm0
movaps %xmm1, -0x650(%rbp)
movaps %xmm0, -0x660(%rbp)
movaps -0x650(%rbp), %xmm0
addps -0x660(%rbp), %xmm0
movaps %xmm0, -0x880(%rbp)
movq -0x7b8(%rbp), %rax
movaps 0x10(%rax), %xmm1
movaps -0x820(%rbp), %xmm0
movaps %xmm1, -0x170(%rbp)
movaps %xmm0, -0x180(%rbp)
movaps -0x170(%rbp), %xmm0
subps -0x180(%rbp), %xmm0
movaps %xmm0, -0x8a0(%rbp)
movaps -0x860(%rbp), %xmm1
movaps -0x880(%rbp), %xmm0
movaps %xmm1, -0x670(%rbp)
movaps %xmm0, -0x680(%rbp)
movaps -0x670(%rbp), %xmm0
addps -0x680(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x72c(%rbp), %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x860(%rbp), %xmm1
movaps -0x880(%rbp), %xmm0
movaps %xmm1, -0x190(%rbp)
movaps %xmm0, -0x1a0(%rbp)
movaps -0x190(%rbp), %xmm0
subps -0x1a0(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x7bc(%rbp), %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
imull $0x3, -0x704(%rbp), %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x8b0(%rbp), %xmm1
movaps -0x8a0(%rbp), %xmm0
movaps %xmm1, -0x690(%rbp)
movaps %xmm0, -0x6a0(%rbp)
movaps -0x690(%rbp), %xmm0
addps -0x6a0(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x72c(%rbp), %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movl -0x704(%rbp), %edx
shll %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x8b0(%rbp), %xmm1
movaps -0x8a0(%rbp), %xmm0
movaps %xmm1, -0x1b0(%rbp)
movaps %xmm0, -0x1c0(%rbp)
movaps -0x1b0(%rbp), %xmm0
subps -0x1c0(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x7bc(%rbp), %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movl -0x704(%rbp), %edx
shll $0x0, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movl -0x72c(%rbp), %eax
addl $0x2, %eax
movl %eax, -0x72c(%rbp)
movq -0x7b8(%rbp), %rax
addq $0x20, %rax
movq %rax, -0x7b8(%rbp)
jmp 0xfa07
jmp 0x1044d
movl -0x704(%rbp), %eax
addl -0x730(%rbp), %eax
movl %eax, -0x730(%rbp)
jmp 0xf9cb
movl -0x704(%rbp), %eax
movl $0x2, %ecx
cltd
idivl %ecx
cmpl $0x1, %edx
jne 0x1047c
jmp 0x107b9
jmp 0x1047e
movl $0x0, -0x730(%rbp)
movl -0x730(%rbp), %eax
cmpl -0x734(%rbp), %eax
jge 0x107b9
movq -0x710(%rbp), %rax
movl -0x704(%rbp), %esi
movl -0x730(%rbp), %ecx
addl %ecx, %esi
movl -0x734(%rbp), %edx
movl %edx, %ecx
movl %esi, %edx
leal -0x1(%rcx,%rdx), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x900(%rbp)
movq -0x710(%rbp), %rax
movl -0x704(%rbp), %edx
movl -0x730(%rbp), %ecx
addl %ecx, %edx
movl -0x734(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal -0x1(%rcx,%rdx), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x910(%rbp)
movq -0x710(%rbp), %rax
movl -0x704(%rbp), %esi
movl -0x730(%rbp), %ecx
movl %ecx, %edx
movl %esi, %ecx
leal -0x1(%rcx,%rdx), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x920(%rbp)
movq -0x710(%rbp), %rax
movl -0x704(%rbp), %esi
movl -0x730(%rbp), %ecx
addl %ecx, %esi
movl -0x734(%rbp), %ecx
movl %ecx, %edx
movl %esi, %ecx
leal -0x1(%rcx,%rdx,2), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
movaps (%rax,%rcx), %xmm0
movaps %xmm0, -0x930(%rbp)
movl $0xbf3504f3, -0x2e4(%rbp) # imm = 0xBF3504F3
movss -0x2e4(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x300(%rbp)
movaps -0x300(%rbp), %xmm1
movaps -0x900(%rbp), %xmm2
movaps -0x910(%rbp), %xmm0
movaps %xmm2, -0x6b0(%rbp)
movaps %xmm0, -0x6c0(%rbp)
movaps -0x6b0(%rbp), %xmm0
movaps -0x6c0(%rbp), %xmm2
addps %xmm2, %xmm0
movaps %xmm1, -0x4b0(%rbp)
movaps %xmm0, -0x4c0(%rbp)
movaps -0x4b0(%rbp), %xmm0
movaps -0x4c0(%rbp), %xmm1
mulps %xmm1, %xmm0
movaps %xmm0, -0x940(%rbp)
movl $0xbf3504f3, -0x310(%rbp) # imm = 0xBF3504F3
movaps -0x310(%rbp), %xmm0
shufps $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
movaps %xmm0, -0x320(%rbp)
movaps -0x320(%rbp), %xmm1
movaps -0x910(%rbp), %xmm2
movaps -0x900(%rbp), %xmm0
movaps %xmm2, -0x1d0(%rbp)
movaps %xmm0, -0x1e0(%rbp)
movaps -0x1d0(%rbp), %xmm0
subps -0x1e0(%rbp), %xmm0
movaps %xmm1, -0x4d0(%rbp)
movaps %xmm0, -0x4e0(%rbp)
movaps -0x4d0(%rbp), %xmm0
mulps -0x4e0(%rbp), %xmm0
movaps %xmm0, -0x950(%rbp)
movaps -0x950(%rbp), %xmm1
movaps -0x920(%rbp), %xmm0
movaps %xmm1, -0x6d0(%rbp)
movaps %xmm0, -0x6e0(%rbp)
movaps -0x6d0(%rbp), %xmm0
addps -0x6e0(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x704(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x920(%rbp), %xmm1
movaps -0x950(%rbp), %xmm0
movaps %xmm1, -0x1f0(%rbp)
movaps %xmm0, -0x200(%rbp)
movaps -0x1f0(%rbp), %xmm0
subps -0x200(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x704(%rbp), %ecx
subl $0x1, %ecx
movl -0x730(%rbp), %edx
shll $0x2, %edx
addl %edx, %ecx
movl -0x704(%rbp), %edx
shll %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x940(%rbp), %xmm1
movaps -0x930(%rbp), %xmm0
movaps %xmm1, -0x210(%rbp)
movaps %xmm0, -0x220(%rbp)
movaps -0x210(%rbp), %xmm0
subps -0x220(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x730(%rbp), %ecx
shll $0x2, %ecx
movl -0x704(%rbp), %edx
shll $0x0, %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movaps -0x940(%rbp), %xmm1
movaps -0x930(%rbp), %xmm0
movaps %xmm1, -0x6f0(%rbp)
movaps %xmm0, -0x700(%rbp)
movaps -0x6f0(%rbp), %xmm0
addps -0x700(%rbp), %xmm0
movq -0x718(%rbp), %rax
movl -0x730(%rbp), %ecx
shll $0x2, %ecx
imull $0x3, -0x704(%rbp), %edx
addl %edx, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movaps %xmm0, (%rax)
movl -0x704(%rbp), %eax
addl -0x730(%rbp), %eax
movl %eax, -0x730(%rbp)
jmp 0x10488
addq $0x8d0, %rsp            # imm = 0x8D0
popq %rbp
retq
nopw %cs:(%rax,%rax)