// File: /workspace/github_c_makefile_star2_O2/PoulinV[P]AxiCLASS/build/../source/fourier.c
// Function: fourier_indices
int fourier_indices(
                    struct precision *ppr,
                    struct background *pba,
                    struct perturbations * ppt,
                    struct primordial * ppm,
                    struct fourier * pfo
                    ) {

  int index_ic1_ic2;
  int index_pk;

  /** - define indices for initial conditions (and allocate related arrays) */
  pfo->index_md_scalars = ppt->index_md_scalars;
  pfo->ic_size = ppm->ic_size[pfo->index_md_scalars];
  pfo->ic_ic_size = ppm->ic_ic_size[pfo->index_md_scalars];
  class_alloc(pfo->is_non_zero,sizeof(short)*pfo->ic_ic_size,pfo->error_message);
  for (index_ic1_ic2=0; index_ic1_ic2 < pfo->ic_ic_size; index_ic1_ic2++)
    pfo->is_non_zero[index_ic1_ic2] = ppm->is_non_zero[pfo->index_md_scalars][index_ic1_ic2];

  /** - define flags indices for pk types (_m, _cb). Note: due to some
      dependencies in HMcode, when pfo->index_pk_cb exists, it must
      come first (e.g. the calculation of the non-linear P_m depends on
      sigma_cb so the cb-related quantitites must be evaluated
      first) */

  pfo->has_pk_m = _TRUE_;
  if (pba->has_ncdm == _TRUE_) {
    pfo->has_pk_cb = _TRUE_;
  }
  else {
    pfo->has_pk_cb = _FALSE_;
  }

  index_pk = 0;
  class_define_index(pfo->index_pk_cb, pfo->has_pk_cb, index_pk,1);
  class_define_index(pfo->index_pk_m, pfo->has_pk_m, index_pk,1);
  pfo->pk_size = index_pk;

  /* and two redundent but useful indices: */

  if (pfo->has_pk_cb == _TRUE_) {
    pfo->index_pk_total = pfo->index_pk_m;
    pfo->index_pk_cluster = pfo->index_pk_cb;
  }
  else {
    pfo->index_pk_total = pfo->index_pk_m;
    pfo->index_pk_cluster = pfo->index_pk_m;
  }

  /** - get list of k values */

  class_call(fourier_get_k_list(ppr,ppm,ppt,pfo),
             pfo->error_message,
             pfo->error_message);

  /** - get list of tau values */

  class_call(fourier_get_tau_list(ppt,pfo),
             pfo->error_message,
             pfo->error_message);

  /** - given previous indices, we can allocate the array of linear power spectrum values */

  class_alloc(pfo->ln_pk_ic_l,pfo->pk_size*sizeof(double*),pfo->error_message);
  class_alloc(pfo->ln_pk_l   ,pfo->pk_size*sizeof(double*),pfo->error_message);
  class_alloc(pfo->ln_pk_l_extra,pfo->pk_size*sizeof(double*),pfo->error_message);

  for (index_pk=0; index_pk<pfo->pk_size; index_pk++) {
    class_alloc(pfo->ln_pk_ic_l[index_pk],pfo->ln_tau_size*pfo->k_size*pfo->ic_ic_size*sizeof(double*),pfo->error_message);
    class_alloc(pfo->ln_pk_l[index_pk]   ,pfo->ln_tau_size*pfo->k_size*sizeof(double*),pfo->error_message);
    class_alloc(pfo->ln_pk_l_extra[index_pk],pfo->ln_tau_size*pfo->k_size_extra*sizeof(double),pfo->error_message);
  }

  /** - do we we want to compute and store the analytic_nowiggle power
        spectrum? This flag was already set by the user in input.c. If
        we need HMcode, overwrite the user request and compute
        it. Will soon do the same for Oneloop. */

  if ((pfo->method == nl_HMcode) || (pfo->has_pk_numerical_nowiggle == _TRUE_)) {
    pfo->has_pk_analytic_nowiggle = _TRUE_;
  }

  if (pfo->has_pk_analytic_nowiggle == _TRUE_) {
    class_alloc(pfo->ln_pk_l_an_extra,pfo->k_size_extra*sizeof(double),pfo->error_message);
    class_alloc(pfo->ddln_pk_l_an_extra,pfo->k_size_extra*sizeof(double),pfo->error_message);
  }

  /** - if interpolation of \f$P(k,\tau)\f$ will be needed (as a function of tau),
      compute also the array of second derivatives in view of spline interpolation */

  if (pfo->ln_tau_size > 1) {

    class_alloc(pfo->ddln_pk_ic_l,pfo->pk_size*sizeof(double*),pfo->error_message);
    class_alloc(pfo->ddln_pk_l   ,pfo->pk_size*sizeof(double*),pfo->error_message);
    class_alloc(pfo->ddln_pk_l_extra,pfo->pk_size*sizeof(double*),pfo->error_message);

    for (index_pk=0; index_pk<pfo->pk_size; index_pk++) {
      class_alloc(pfo->ddln_pk_ic_l[index_pk],pfo->ln_tau_size*pfo->k_size*pfo->ic_ic_size*sizeof(double*),pfo->error_message);
      class_alloc(pfo->ddln_pk_l[index_pk]   ,pfo->ln_tau_size*pfo->k_size*sizeof(double*),pfo->error_message);
      class_alloc(pfo->ddln_pk_l_extra[index_pk],pfo->ln_tau_size*pfo->k_size_extra*sizeof(double),pfo->error_message);
    }
  }

  /** - array of sigma8 values */

  class_alloc(pfo->sigma8,pfo->pk_size*sizeof(double*),pfo->error_message);

  /** - if non-linear computations needed, allocate array of
      non-linear correction ratio R_nl(k,z), k_nl(z) and P_nl(k,z)
      for each P(k) type */

  if (pfo->method > nl_none) {

    class_alloc(pfo->k_nl,
                pfo->pk_size*sizeof(double *),
                pfo->error_message);

    class_alloc(pfo->nl_corr_density,
                pfo->pk_size*sizeof(double *),
                pfo->error_message);

    class_alloc(pfo->ln_pk_nl,pfo->pk_size*sizeof(double*),pfo->error_message);
    if (pfo->ln_tau_size > 1)
      class_alloc(pfo->ddln_pk_nl,pfo->pk_size*sizeof(double*),pfo->error_message);

    for (index_pk=0; index_pk<pfo->pk_size; index_pk++){
      class_alloc(pfo->k_nl[index_pk],pfo->tau_size*sizeof(double),pfo->error_message);
      class_alloc(pfo->nl_corr_density[index_pk],pfo->tau_size*pfo->k_size*sizeof(double),pfo->error_message);
      class_alloc(pfo->ln_pk_nl[index_pk],pfo->ln_tau_size*pfo->k_size*sizeof(double*),pfo->error_message);
      if (pfo->ln_tau_size > 1)
        class_alloc(pfo->ddln_pk_nl[index_pk],pfo->ln_tau_size*pfo->k_size*sizeof(double*),pfo->error_message);
    }
  }

  /** - allocate arrays for P_nw(k,z) and its splines in log(tau) */

  if (pfo->has_pk_numerical_nowiggle == _TRUE_) {
    class_alloc(pfo->ln_pk_l_nw_extra, pfo->ln_tau_size*pfo->k_size_extra*sizeof(double), pfo->error_message);

    if (pfo->ln_tau_size > 1)
      class_alloc(pfo->ddln_pk_l_nw_extra, pfo->ln_tau_size*pfo->k_size_extra*sizeof(double), pfo->error_message);
  }

  return _SUCCESS_;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x828, %rsp            # imm = 0x828
movq %r8, %r12
movq %rcx, %r15
movq %rdx, %r14
movq %rsi, %r13
movq %rdi, 0x8(%rsp)
movslq 0x848(%rdx), %rbp
movl %ebp, 0x3c(%r8)
movq 0x280(%rcx), %rax
movl (%rax,%rbp,4), %eax
movl %eax, 0x40(%r8)
movq 0x288(%rcx), %rax
movslq (%rax,%rbp,4), %rbx
movl %ebx, 0x44(%r8)
movq %rbx, %rdi
addq %rbx, %rdi
callq 0x8490
movq %rax, 0x48(%r12)
testq %rax, %rax
je 0x9ca68
pushq $0x1
popq %rcx
xorl %edx, %edx
testl %ebx, %ebx
movl $0x0, %esi
cmovgl %ebx, %esi
movq %r12, %rbx
cmpq %rdx, %rsi
je 0x9ca45
movq 0x2b0(%r15), %rdi
movq (%rdi,%rbp,8), %rdi
movzwl (%rdi,%rdx,2), %edi
movw %di, (%rax,%rdx,2)
incq %rdx
jmp 0x9ca28
movw $0x1, 0x50(%rbx)
cmpw $0x1, 0x4be(%r13)
jne 0x9caaa
movw $0x1, 0x52(%rbx)
andl $0x0, 0x58(%rbx)
pushq $0x2
popq %rcx
pushq $0x1
popq %rax
jmp 0x9cab1
leal (%rbx,%rbx), %ecx
leaq 0x48592(%rip), %rsi     # 0xe5004
leaq 0x77b10(%rip), %rdx     # 0x114589
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %r12            # imm = 0x192
leaq 0x4859e(%rip), %rsi     # 0xe5034
leaq 0x77afd(%rip), %rdx     # 0x11459a
movq %r12, %rdi
movl $0x7ca, %ecx            # imm = 0x7CA
jmp 0x9cb60
andw $0x0, 0x52(%rbx)
xorl %eax, %eax
movl %eax, 0x54(%rbx)
movl %ecx, 0x64(%rbx)
movl %eax, 0x5c(%rbx)
andl $0x0, 0x60(%rbx)
movq 0x8(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x9e237
testl %eax, %eax
je 0x9cb14
addq $0x192, %rbx            # imm = 0x192
leaq 0x4890d(%rip), %rsi     # 0xe53f0
leaq 0x77ac0(%rip), %rdx     # 0x1145aa
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rcx
xorl %eax, %eax
callq 0x2e014
leaq 0x48531(%rip), %rsi     # 0xe5034
leaq 0x77a90(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7f0, %ecx            # imm = 0x7F0
jmp 0x9cb60
movq %r14, %rdi
movq %rbx, %rsi
callq 0x9e5fd
testl %eax, %eax
je 0x9cb81
addq $0x192, %rbx            # imm = 0x192
leaq 0x488bf(%rip), %rsi     # 0xe53f0
leaq 0x77a96(%rip), %rdx     # 0x1145ce
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rcx
xorl %eax, %eax
callq 0x2e014
leaq 0x484e3(%rip), %rsi     # 0xe5034
leaq 0x77a42(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7f6, %ecx            # imm = 0x7F6
movq %r14, %r8
xorl %eax, %eax
callq 0x2e014
pushq $0x1
popq %rbp
movl %ebp, %eax
addq $0x828, %rsp            # imm = 0x828
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movslq 0x64(%rbx), %r15
movq %r15, %r14
shlq $0x3, %r14
movq %r14, %rdi
callq 0x8490
movq %rax, 0x98(%rbx)
testq %rax, %rax
je 0x9cce3
movq %r14, %rdi
callq 0x8490
movq %rax, 0xa8(%rbx)
testq %rax, %rax
je 0x9cd2a
movq %r14, %rdi
callq 0x8490
movq %rax, 0x108(%rbx)
testq %rax, %rax
je 0x9cd71
xorl %ebp, %ebp
testl %r15d, %r15d
movl $0x0, %eax
movq %r15, 0x18(%rsp)
cmovgl %r15d, %eax
movq %rax, 0x8(%rsp)
cmpq %rbp, 0x8(%rsp)
je 0x9cdb8
movslq 0x90(%rbx), %r12
movslq 0x6c(%rbx), %r13
imulq %r12, %r13
movslq 0x44(%rbx), %rax
movslq %r13d, %r15
imulq %rax, %r15
leaq (,%r15,8), %rdi
callq 0x8490
movq 0x98(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0x98(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
je 0x9ce55
movq %r13, %rdi
shlq $0x3, %rdi
callq 0x8490
movq 0xa8(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0xa8(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
je 0x9ce9b
movslq 0x104(%rbx), %r15
imulq %r12, %r15
leaq (,%r15,8), %rdi
callq 0x8490
movq 0x108(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0x108(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
leaq 0x1(%rbp), %rbp
jne 0x9cbec
shll $0x3, %r15d
leaq 0x4835c(%rip), %rsi     # 0xe5004
leaq 0x7799e(%rip), %rdx     # 0x11464d
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x48365(%rip), %rsi     # 0xe5034
leaq 0x778c4(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x801, %ecx            # imm = 0x801
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x48312(%rip), %rsi     # 0xe5004
leaq 0x778f3(%rip), %rdx     # 0x1145ec
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x4831e(%rip), %rsi     # 0xe5034
leaq 0x7787d(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7fa, %ecx            # imm = 0x7FA
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x482cb(%rip), %rsi     # 0xe5004
leaq 0x778bc(%rip), %rdx     # 0x1145fc
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x482d7(%rip), %rsi     # 0xe5034
leaq 0x77836(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7fb, %ecx            # imm = 0x7FB
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x48284(%rip), %rsi     # 0xe5004
leaq 0x77882(%rip), %rdx     # 0x114609
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x48290(%rip), %rsi     # 0xe5034
leaq 0x777ef(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7fc, %ecx            # imm = 0x7FC
jmp 0x9cb60
movl (%rbx), %ebp
cmpl $0x2, %ebp
je 0x9cdca
cmpw $0x1, 0x3a(%rbx)
jne 0x9cf29
movw $0x1, 0x38(%rbx)
movslq 0x104(%rbx), %r12
movq %r12, %r15
shlq $0x3, %r15
movq %r15, %rdi
callq 0x8490
movq %rax, 0x118(%rbx)
testq %rax, %rax
je 0x9cee2
movq %r15, %rdi
callq 0x8490
movq %rax, 0x120(%rbx)
testq %rax, %rax
jne 0x9cf34
leal (,%r12,8), %ecx
leaq 0x481e7(%rip), %rsi     # 0xe5004
leaq 0x7785c(%rip), %rdx     # 0x114680
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x481f3(%rip), %rsi     # 0xe5034
leaq 0x77752(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x80f, %ecx            # imm = 0x80F
jmp 0x9cb60
shll $0x3, %r15d
leaq 0x481a4(%rip), %rsi     # 0xe5004
leaq 0x777b5(%rip), %rdx     # 0x11461c
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x481ad(%rip), %rsi     # 0xe5034
leaq 0x7770c(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x7ff, %ecx            # imm = 0x7FF
jmp 0x9cb60
leal (,%r13,8), %ecx
leaq 0x4815a(%rip), %rsi     # 0xe5004
leaq 0x77785(%rip), %rdx     # 0x114636
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x48166(%rip), %rsi     # 0xe5034
leaq 0x776c5(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x800, %ecx            # imm = 0x800
jmp 0x9cb60
leal (,%r12,8), %ecx
leaq 0x48113(%rip), %rsi     # 0xe5004
leaq 0x77772(%rip), %rdx     # 0x11466a
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x4811f(%rip), %rsi     # 0xe5034
leaq 0x7767e(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x80e, %ecx            # imm = 0x80E
jmp 0x9cb60
cmpw $0x1, 0x38(%rbx)
je 0x9cdd0
movl %ebp, 0x14(%rsp)
movslq 0x90(%rbx), %r13
cmpq $0x2, %r13
jl 0x9d088
movq %r14, %rdi
callq 0x8490
movq %rax, 0xa0(%rbx)
testq %rax, %rax
movq 0x18(%rsp), %r15
je 0x9d23d
movq %r14, %rdi
callq 0x8490
movq %rax, 0xb0(%rbx)
testq %rax, %rax
je 0x9d324
movq %r14, %rdi
callq 0x8490
movq %rax, 0x110(%rbx)
testq %rax, %rax
je 0x9d3b2
xorl %ebp, %ebp
cmpq %rbp, 0x8(%rsp)
je 0x9d088
movslq 0x6c(%rbx), %r12
imulq %r13, %r12
movslq 0x44(%rbx), %rax
movslq %r12d, %r15
imulq %rax, %r15
leaq (,%r15,8), %rdi
callq 0x8490
movq 0xa0(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0xa0(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
je 0x9d440
movq %r12, %rdi
shlq $0x3, %rdi
callq 0x8490
movq 0xb0(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0xb0(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
je 0x9d4cd
movslq 0x104(%rbx), %r15
imulq %r13, %r15
leaq (,%r15,8), %rdi
callq 0x8490
movq 0x110(%rbx), %rcx
movq %rax, (%rcx,%rbp,8)
movq 0x110(%rbx), %rax
cmpq $0x0, (%rax,%rbp,8)
leaq 0x1(%rbp), %rbp
jne 0x9cf98
shll $0x3, %r15d
leaq 0x47fb7(%rip), %rsi     # 0xe5004
leaq 0x776af(%rip), %rdx     # 0x114703
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47fc0(%rip), %rsi     # 0xe5034
leaq 0x7751f(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x81e, %ecx            # imm = 0x81E
jmp 0x9cb60
movq %r14, %rdi
callq 0x8490
movq %rax, 0xc8(%rbx)
testq %rax, %rax
movq 0x18(%rsp), %r15
je 0x9d1f6
cmpl $0x0, 0x14(%rsp)
je 0x9d284
movq %r14, %rdi
callq 0x8490
movq %rax, 0x158(%rbx)
testq %rax, %rax
je 0x9d36b
movq %r14, %rdi
callq 0x8490
movq %rax, 0x150(%rbx)
testq %rax, %rax
je 0x9d3f9
movq %r14, %rdi
callq 0x8490
movq %rax, 0xb8(%rbx)
testq %rax, %rax
je 0x9d486
cmpl $0x2, %r13d
jl 0x9d116
movq %r14, %rdi
callq 0x8490
movq %rax, 0xc0(%rbx)
testq %rax, %rax
je 0x9d55b
xorl %r15d, %r15d
cmpq %r15, 0x8(%rsp)
je 0x9d284
movq %rbx, %r12
movslq 0x140(%rbx), %rbx
movq %rbx, %rdi
shlq $0x3, %rdi
callq 0x8490
movq 0x158(%r12), %rcx
movq %rax, (%rcx,%r15,8)
movq 0x158(%r12), %rax
cmpq $0x0, (%rax,%r15,8)
je 0x9d5a2
movl 0x6c(%r12), %ebp
movl %ebp, %r14d
imull %ebx, %r14d
movslq %r14d, %rdi
shlq $0x3, %rdi
callq 0x8490
movq 0x150(%r12), %rcx
movq %rax, (%rcx,%r15,8)
movq 0x150(%r12), %rax
cmpq $0x0, (%rax,%r15,8)
movq %r12, %rbx
je 0x9d5e8
imull %r13d, %ebp
movslq %ebp, %r14
shlq $0x3, %r14
movq %r14, %rdi
callq 0x8490
movq 0xb8(%rbx), %rcx
movq %rax, (%rcx,%r15,8)
movq 0xb8(%rbx), %rax
cmpq $0x0, (%rax,%r15,8)
je 0x9d631
cmpl $0x2, %r13d
jl 0x9d1ee
movq %r14, %rdi
callq 0x8490
movq 0xc0(%rbx), %rcx
movq %rax, (%rcx,%r15,8)
movq 0xc0(%rbx), %rax
cmpq $0x0, (%rax,%r15,8)
je 0x9d675
incq %r15
jmp 0x9d119
leal (,%r15,8), %ecx
leaq 0x47dff(%rip), %rsi     # 0xe5004
leaq 0x77516(%rip), %rdx     # 0x114722
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47e0b(%rip), %rsi     # 0xe5034
leaq 0x7736a(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x824, %ecx            # imm = 0x824
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47db8(%rip), %rsi     # 0xe5004
leaq 0x77445(%rip), %rdx     # 0x114698
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47dc4(%rip), %rsi     # 0xe5034
leaq 0x77323(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x817, %ecx            # imm = 0x817
jmp 0x9cb60
xorl %ebp, %ebp
cmpw $0x1, 0x3a(%rbx)
jne 0x9cb6d
movslq 0x104(%rbx), %r15
imulq %r13, %r15
movq %r15, %r14
shlq $0x3, %r14
movq %r14, %rdi
callq 0x8490
movq %rax, 0x130(%rbx)
testq %rax, %rax
je 0x9d514
cmpl $0x2, %r13d
jl 0x9cb6d
movq %r14, %rdi
callq 0x8490
movq %rax, 0x138(%rbx)
testq %rax, %rax
jne 0x9cb6d
leal (,%r15,8), %ecx
leaq 0x47d18(%rip), %rsi     # 0xe5004
leaq 0x774f3(%rip), %rdx     # 0x1147e6
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
movq %rbx, %rdi
addq $0x192, %rdi            # imm = 0x192
leaq 0x47d21(%rip), %rsi     # 0xe5034
leaq 0x77280(%rip), %rdx     # 0x11459a
movl $0x847, %ecx            # imm = 0x847
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47cd1(%rip), %rsi     # 0xe5004
leaq 0x77370(%rip), %rdx     # 0x1146aa
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47cdd(%rip), %rsi     # 0xe5034
leaq 0x7723c(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x818, %ecx            # imm = 0x818
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47c8a(%rip), %rsi     # 0xe5004
leaq 0x773ad(%rip), %rdx     # 0x11472e
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47c96(%rip), %rsi     # 0xe5034
leaq 0x771f5(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x82e, %ecx            # imm = 0x82E
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47c43(%rip), %rsi     # 0xe5004
leaq 0x772f1(%rip), %rdx     # 0x1146b9
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47c4f(%rip), %rsi     # 0xe5034
leaq 0x771ae(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x819, %ecx            # imm = 0x819
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47bfc(%rip), %rsi     # 0xe5004
leaq 0x77329(%rip), %rdx     # 0x114738
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47c08(%rip), %rsi     # 0xe5034
leaq 0x77167(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x832, %ecx            # imm = 0x832
jmp 0x9cb60
shll $0x3, %r15d
leaq 0x47bb9(%rip), %rsi     # 0xe5004
leaq 0x7727c(%rip), %rdx     # 0x1146ce
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %r15d, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47bc2(%rip), %rsi     # 0xe5034
leaq 0x77121(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x81c, %ecx            # imm = 0x81C
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47b6f(%rip), %rsi     # 0xe5004
leaq 0x772b1(%rip), %rdx     # 0x11474d
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47b7b(%rip), %rsi     # 0xe5034
leaq 0x770da(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x834, %ecx            # imm = 0x834
jmp 0x9cb60
leal (,%r12,8), %ecx
leaq 0x47b28(%rip), %rsi     # 0xe5004
leaq 0x77207(%rip), %rdx     # 0x1146ea
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47b34(%rip), %rsi     # 0xe5034
leaq 0x77093(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x81d, %ecx            # imm = 0x81D
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47ae1(%rip), %rsi     # 0xe5004
leaq 0x772a6(%rip), %rdx     # 0x1147d0
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47aed(%rip), %rsi     # 0xe5034
leaq 0x7704c(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x844, %ecx            # imm = 0x844
jmp 0x9cb60
leal (,%r15,8), %ecx
leaq 0x47a9a(%rip), %rsi     # 0xe5004
leaq 0x771ea(%rip), %rdx     # 0x11475b
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47aa6(%rip), %rsi     # 0xe5034
leaq 0x77005(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x836, %ecx            # imm = 0x836
jmp 0x9cb60
leal (,%rbx,8), %ecx
leaq 0x47a54(%rip), %rsi     # 0xe5004
leaq 0x771b4(%rip), %rdx     # 0x11476b
leaq 0x20(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0x2e014
addq $0x192, %r12            # imm = 0x192
leaq 0x47a60(%rip), %rsi     # 0xe5034
leaq 0x76fbf(%rip), %rdx     # 0x11459a
movq %r12, %rdi
movl $0x839, %ecx            # imm = 0x839
jmp 0x9cb60
shll $0x3, %r14d
leaq 0x47a11(%rip), %rsi     # 0xe5004
leaq 0x77185(%rip), %rdx     # 0x11477f
leaq 0x20(%rsp), %r15
movq %r15, %rdi
movl %r14d, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x47a1a(%rip), %rsi     # 0xe5034
leaq 0x76f79(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x83a, %ecx            # imm = 0x83A
movq %r15, %r8
jmp 0x9cb63
shll $0x3, %ebp
leaq 0x479c9(%rip), %rsi     # 0xe5004
leaq 0x7715c(%rip), %rdx     # 0x11479e
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x479d3(%rip), %rsi     # 0xe5034
leaq 0x76f32(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x83b, %ecx            # imm = 0x83B
jmp 0x9cb60
shll $0x3, %ebp
leaq 0x47985(%rip), %rsi     # 0xe5004
leaq 0x77130(%rip), %rdx     # 0x1147b6
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2e014
addq $0x192, %rbx            # imm = 0x192
leaq 0x4798f(%rip), %rsi     # 0xe5034
leaq 0x76eee(%rip), %rdx     # 0x11459a
movq %rbx, %rdi
movl $0x83d, %ecx            # imm = 0x83D
jmp 0x9cb60