// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../source/harmonic.c
// Function: harmonic_indices
int harmonic_indices(
                     struct background * pba,
                     struct perturbations * ppt,
                     struct transfer * ptr,
                     struct primordial * ppm,
                     struct harmonic * phr
                     ){

  int index_ct;
  int index_md;
  int index_ic1_ic2;

  phr->md_size = ppt->md_size;
  if (ppt->has_scalars == _TRUE_)
    phr->index_md_scalars = ppt->index_md_scalars;

  class_alloc(phr->ic_size,
              sizeof(int)*phr->md_size,
              phr->error_message);

  class_alloc(phr->ic_ic_size,
              sizeof(int)*phr->md_size,
              phr->error_message);

  class_alloc(phr->is_non_zero,
              sizeof(short *)*phr->md_size,
              phr->error_message);

  for (index_md=0; index_md < phr->md_size; index_md++) {
    phr->ic_size[index_md] = ppm->ic_size[index_md];
    phr->ic_ic_size[index_md] = ppm->ic_ic_size[index_md];
    class_alloc(phr->is_non_zero[index_md],
                sizeof(short)*phr->ic_ic_size[index_md],
                phr->error_message);
    for (index_ic1_ic2=0; index_ic1_ic2 < phr->ic_ic_size[index_md]; index_ic1_ic2++)
      phr->is_non_zero[index_md][index_ic1_ic2] = ppm->is_non_zero[index_md][index_ic1_ic2];
  }

  if (ppt->has_cls == _TRUE_) {

    /* types of C_l's relevant for both scalars and tensors: TT, EE, TE */

    index_ct=0;

    if (ppt->has_cl_cmb_temperature == _TRUE_) {
      phr->has_tt = _TRUE_;
      phr->index_ct_tt=index_ct;
      index_ct++;
    }
    else {
      phr->has_tt = _FALSE_;
    }

    if (ppt->has_cl_cmb_polarization == _TRUE_) {
      phr->has_ee = _TRUE_;
      phr->index_ct_ee=index_ct;
      index_ct++;
    }
    else {
      phr->has_ee = _FALSE_;
    }

    if ((ppt->has_cl_cmb_temperature == _TRUE_) &&
        (ppt->has_cl_cmb_polarization == _TRUE_)) {
      phr->has_te = _TRUE_;
      phr->index_ct_te=index_ct;
      index_ct++;
    }
    else {
      phr->has_te = _FALSE_;
    }

    if (ppt->has_cl_cmb_polarization == _TRUE_) {
      phr->has_bb = _TRUE_;
      phr->index_ct_bb=index_ct;
      index_ct++;
    }
    else {
      phr->has_bb = _FALSE_;
    }

    /* types of C_l's relevant only for scalars: phi-phi, T-phi, E-phi, d-d, T-d */

    if ((ppt->has_cl_cmb_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_pp = _TRUE_;
      phr->index_ct_pp=index_ct;
      index_ct++;
    }
    else {
      phr->has_pp = _FALSE_;
    }

    if ((ppt->has_cl_cmb_temperature == _TRUE_) && (ppt->has_cl_cmb_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_tp = _TRUE_;
      phr->index_ct_tp=index_ct;
      index_ct++;
    }
    else {
      phr->has_tp = _FALSE_;
    }

    phr->ct_size = index_ct;

    if ((ppt->has_cl_cmb_polarization == _TRUE_) && (ppt->has_cl_cmb_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_ep = _TRUE_;
      phr->index_ct_ep=index_ct;
      index_ct++;
    }
    else {
      phr->has_ep = _FALSE_;
    }

    if ((ppt->has_scalars == _TRUE_) &&
        ((ppt->has_cl_number_count == _TRUE_) || (ppt->has_cl_lensing_potential == _TRUE_)))
      phr->d_size=ppt->selection_num;
    else
      phr->d_size=0;

    if ((ppt->has_cl_number_count == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_dd = _TRUE_;
      phr->index_ct_dd=index_ct;
      index_ct+=(phr->d_size*(phr->d_size+1)-(phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag))/2;
    }
    else {
      phr->has_dd = _FALSE_;
    }

    /* the computation of C_l^Td would require a very good sampling of
       transfer functions over a wide range, and a huge computation
       time. In the current version, we prefer to switch it off, rather
       than either slowing down the code considerably, or producing
       very inaccurate spectra.

       if ((ppt->has_cl_cmb_temperature == _TRUE_) && (ppt->has_cl_number_count == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
       phr->has_td = _TRUE_;
       phr->index_ct_td=index_ct;
       index_ct+=phr->d_size;
       }
       else {
       phr->has_td = _FALSE_;
       }
    */
    phr->has_td = _FALSE_;

    if ((ppt->has_cl_cmb_lensing_potential == _TRUE_) && (ppt->has_cl_number_count == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_pd = _TRUE_;
      phr->index_ct_pd=index_ct;
      index_ct+=phr->d_size;
    }
    else {
      phr->has_pd = _FALSE_;
    }

    if ((ppt->has_cl_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_ll = _TRUE_;
      phr->index_ct_ll=index_ct;
      index_ct+=(phr->d_size*(phr->d_size+1)-(phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag))/2;
    }
    else {
      phr->has_ll = _FALSE_;
    }

    /* the computation of C_l^Tl would require a very good sampling of
       transfer functions over a wide range, and a huge computation
       time. In the current version, we prefer to switch it off, rather
       than either slowing down the code considerably, or producing
       very inaccurate spectra.

       if ((ppt->has_cl_cmb_temperature == _TRUE_) && (ppt->has_cl_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
       phr->has_tl = _TRUE_;
       phr->index_ct_tl=index_ct;
       index_ct+=phr->d_size;
       }
       else {
       phr->has_tl = _FALSE_;
       }
    */
    phr->has_tl = _FALSE_;

    if ((ppt->has_cl_number_count == _TRUE_) && (ppt->has_cl_lensing_potential == _TRUE_) && (ppt->has_scalars == _TRUE_)) {
      phr->has_dl = _TRUE_;
      phr->index_ct_dl=index_ct;
      index_ct += phr->d_size*phr->d_size - (phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag);
    }
    else {
      phr->has_dl = _FALSE_;
    }

    phr->ct_size = index_ct;

    /* infer from input quantities the l_max for each mode and type,
       l_max_ct[index_md][index_type].  Maximize it over index_ct, and
       then over index_md. */

    class_alloc(phr->l_max,sizeof(int*)*phr->md_size,phr->error_message);
    class_alloc(phr->l_max_ct,sizeof(int*)*phr->md_size,phr->error_message);
    for (index_md=0; index_md<phr->md_size; index_md++) {
      class_calloc(phr->l_max_ct[index_md],phr->ct_size,sizeof(int),phr->error_message);
    }

    if (ppt->has_scalars == _TRUE_) {

      /* spectra computed up to l_scalar_max */

      if (phr->has_tt == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_tt] = ppt->l_scalar_max;
      if (phr->has_ee == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_ee] = ppt->l_scalar_max;
      if (phr->has_te == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_te] = ppt->l_scalar_max;
      if (phr->has_pp == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_pp] = ppt->l_scalar_max;
      if (phr->has_tp == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_tp] = ppt->l_scalar_max;
      if (phr->has_ep == _TRUE_) phr->l_max_ct[ppt->index_md_scalars][phr->index_ct_ep] = ppt->l_scalar_max;

      /* spectra computed up to l_lss_max */

      if (phr->has_dd == _TRUE_)
        for (index_ct=phr->index_ct_dd;
             index_ct<phr->index_ct_dd+(phr->d_size*(phr->d_size+1)-(phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag))/2;
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = ppt->l_lss_max;

      if (phr->has_td == _TRUE_)
        for (index_ct=phr->index_ct_td;
             index_ct<phr->index_ct_td+phr->d_size;
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = MIN(ppt->l_scalar_max,ppt->l_lss_max);

      if (phr->has_pd == _TRUE_)
        for (index_ct=phr->index_ct_pd;
             index_ct<phr->index_ct_pd+phr->d_size;
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = MIN(ppt->l_scalar_max,ppt->l_lss_max);

      if (phr->has_ll == _TRUE_)
        for (index_ct=phr->index_ct_ll;
             index_ct<phr->index_ct_ll+(phr->d_size*(phr->d_size+1)-(phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag))/2;
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = ppt->l_lss_max;

      if (phr->has_tl == _TRUE_)
        for (index_ct=phr->index_ct_tl;
             index_ct<phr->index_ct_tl+phr->d_size;
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = MIN(ppt->l_scalar_max,ppt->l_lss_max);

      if (phr->has_dl == _TRUE_)
        for (index_ct=phr->index_ct_dl;
             index_ct < phr->index_ct_dl+(phr->d_size*phr->d_size - (phr->d_size-phr->non_diag)*(phr->d_size-1-phr->non_diag));
             index_ct++)
          phr->l_max_ct[ppt->index_md_scalars][index_ct] = ppt->l_lss_max;

    }
    if (ppt->has_tensors == _TRUE_) {

      /* spectra computed up to l_tensor_max */

      if (phr->has_tt == _TRUE_) phr->l_max_ct[ppt->index_md_tensors][phr->index_ct_tt] = ppt->l_tensor_max;
      if (phr->has_ee == _TRUE_) phr->l_max_ct[ppt->index_md_tensors][phr->index_ct_ee] = ppt->l_tensor_max;
      if (phr->has_te == _TRUE_) phr->l_max_ct[ppt->index_md_tensors][phr->index_ct_te] = ppt->l_tensor_max;
      if (phr->has_bb == _TRUE_) phr->l_max_ct[ppt->index_md_tensors][phr->index_ct_bb] = ppt->l_tensor_max;
    }

    /* maximizations */
    phr->l_max_tot = 0.;
    for (index_md=0; index_md < phr->md_size; index_md++) {
      phr->l_max[index_md] = 0.;
      for (index_ct=0.; index_ct<phr->ct_size; index_ct++)
        phr->l_max[index_md] = MAX(phr->l_max[index_md],phr->l_max_ct[index_md][index_ct]);
      phr->l_max_tot = MAX(phr->l_max_tot,phr->l_max[index_md]);
    }
  }

  return _SUCCESS_;

}

// Assembly:
subq $0x38c8, %rsp           # imm = 0x38C8
movq %rdi, 0x38b8(%rsp)
movq %rsi, 0x38b0(%rsp)
movq %rdx, 0x38a8(%rsp)
movq %rcx, 0x38a0(%rsp)
movq %r8, 0x3898(%rsp)
movq 0x38b0(%rsp), %rax
movl 0x854(%rax), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x10(%rax)
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14d592
movq 0x38b0(%rsp), %rax
movl 0x848(%rax), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x14(%rax)
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rdi
shlq $0x2, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x3898(%rsp), %rax
movq %rcx, 0x18(%rax)
movq 0x3898(%rsp), %rax
cmpq $0x0, 0x18(%rax)
jne 0x14d641
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rax
shlq $0x2, %rax
movl %eax, 0x3888(%rsp)
leaq 0x3080(%rsp), %rdi
movl 0x3888(%rsp), %ecx
leaq 0x84a12(%rip), %rsi     # 0x1d2004
leaq 0xb898a(%rip), %rdx     # 0x205f83
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x3080(%rsp), %r8
leaq 0x84a16(%rip), %rsi     # 0x1d2034
leaq 0xb896b(%rip), %rdx     # 0x205f90
movl $0x18c, %ecx            # imm = 0x18C
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rdi
shlq $0x2, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x3898(%rsp), %rax
movq %rcx, 0x20(%rax)
movq 0x3898(%rsp), %rax
cmpq $0x0, 0x20(%rax)
jne 0x14d6f0
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rax
shlq $0x2, %rax
movl %eax, 0x307c(%rsp)
leaq 0x2870(%rsp), %rdi
movl 0x307c(%rsp), %ecx
leaq 0x84963(%rip), %rsi     # 0x1d2004
leaq 0xb88f9(%rip), %rdx     # 0x205fa1
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x2870(%rsp), %r8
leaq 0x84967(%rip), %rsi     # 0x1d2034
leaq 0xb88bc(%rip), %rdx     # 0x205f90
movl $0x190, %ecx            # imm = 0x190
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x3898(%rsp), %rax
movq %rcx, 0x28(%rax)
movq 0x3898(%rsp), %rax
cmpq $0x0, 0x28(%rax)
jne 0x14d79f
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x286c(%rsp)
leaq 0x2060(%rsp), %rdi
movl 0x286c(%rsp), %ecx
leaq 0x848b4(%rip), %rsi     # 0x1d2004
leaq 0xb885a(%rip), %rdx     # 0x205fb1
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x2060(%rsp), %r8
leaq 0x848b8(%rip), %rsi     # 0x1d2034
leaq 0xb880d(%rip), %rdx     # 0x205f90
movl $0x194, %ecx            # imm = 0x194
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movl $0x0, 0x3890(%rsp)
movl 0x3890(%rsp), %eax
movq 0x3898(%rsp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x14d9a6
movq 0x38a0(%rsp), %rax
movq 0x280(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl (%rax,%rcx,4), %edx
movq 0x3898(%rsp), %rax
movq 0x18(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x38a0(%rsp), %rax
movq 0x288(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl (%rax,%rcx,4), %edx
movq 0x3898(%rsp), %rax
movq 0x20(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
movq 0x20(%rax), %rax
movslq 0x3890(%rsp), %rcx
movslq (%rax,%rcx,4), %rdi
shlq %rdi
callq 0x8460
movq %rax, %rdx
movq 0x3898(%rsp), %rax
movq 0x28(%rax), %rax
movslq 0x3890(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x3898(%rsp), %rax
movq 0x28(%rax), %rax
movslq 0x3890(%rsp), %rcx
cmpq $0x0, (%rax,%rcx,8)
jne 0x14d905
movq 0x3898(%rsp), %rax
movq 0x20(%rax), %rax
movslq 0x3890(%rsp), %rcx
movslq (%rax,%rcx,4), %rax
shlq %rax
movl %eax, 0x205c(%rsp)
leaq 0x1850(%rsp), %rdi
movl 0x205c(%rsp), %ecx
leaq 0x8474e(%rip), %rsi     # 0x1d2004
leaq 0xb8705(%rip), %rdx     # 0x205fc2
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x1850(%rsp), %r8
leaq 0x84752(%rip), %rsi     # 0x1d2034
leaq 0xb86a7(%rip), %rdx     # 0x205f90
movl $0x19b, %ecx            # imm = 0x19B
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movl $0x0, 0x388c(%rsp)
movl 0x388c(%rsp), %eax
movq 0x3898(%rsp), %rcx
movq 0x20(%rcx), %rcx
movslq 0x3890(%rsp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x14d98e
movq 0x38a0(%rsp), %rax
movq 0x2b0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x388c(%rsp), %rcx
movw (%rax,%rcx,2), %dx
movq 0x3898(%rsp), %rax
movq 0x28(%rax), %rax
movslq 0x3890(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x388c(%rsp), %rcx
movw %dx, (%rax,%rcx,2)
movl 0x388c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x388c(%rsp)
jmp 0x14d910
jmp 0x14d990
movl 0x3890(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3890(%rsp)
jmp 0x14d7aa
movq 0x38b0(%rsp), %rax
movswl 0xc(%rax), %eax
cmpl $0x1, %eax
jne 0x14ec9f
movl $0x0, 0x3894(%rsp)
movq 0x38b0(%rsp), %rax
movswl 0x28(%rax), %eax
cmpl $0x1, %eax
jne 0x14da0b
movq 0x3898(%rsp), %rax
movl $0x1, 0x30(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x64(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14da1a
movq 0x3898(%rsp), %rax
movl $0x0, 0x30(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2a(%rax), %eax
cmpl $0x1, %eax
jne 0x14da5f
movq 0x3898(%rsp), %rax
movl $0x1, 0x34(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x68(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14da6e
movq 0x3898(%rsp), %rax
movl $0x0, 0x34(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x28(%rax), %eax
cmpl $0x1, %eax
jne 0x14dac4
movq 0x38b0(%rsp), %rax
movswl 0x2a(%rax), %eax
cmpl $0x1, %eax
jne 0x14dac4
movq 0x3898(%rsp), %rax
movl $0x1, 0x38(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x6c(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14dad3
movq 0x3898(%rsp), %rax
movl $0x0, 0x38(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2a(%rax), %eax
cmpl $0x1, %eax
jne 0x14db18
movq 0x3898(%rsp), %rax
movl $0x1, 0x3c(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x70(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14db27
movq 0x3898(%rsp), %rax
movl $0x0, 0x3c(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2c(%rax), %eax
cmpl $0x1, %eax
jne 0x14db7d
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14db7d
movq 0x3898(%rsp), %rax
movl $0x1, 0x40(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x74(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14db8c
movq 0x3898(%rsp), %rax
movl $0x0, 0x40(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x28(%rax), %eax
cmpl $0x1, %eax
jne 0x14dbf3
movq 0x38b0(%rsp), %rax
movswl 0x2c(%rax), %eax
cmpl $0x1, %eax
jne 0x14dbf3
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14dbf3
movq 0x3898(%rsp), %rax
movl $0x1, 0x44(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x78(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14dc02
movq 0x3898(%rsp), %rax
movl $0x0, 0x44(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x9c(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2a(%rax), %eax
cmpl $0x1, %eax
jne 0x14dc7e
movq 0x38b0(%rsp), %rax
movswl 0x2c(%rax), %eax
cmpl $0x1, %eax
jne 0x14dc7e
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14dc7e
movq 0x3898(%rsp), %rax
movl $0x1, 0x48(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x7c(%rax)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14dc8d
movq 0x3898(%rsp), %rax
movl $0x0, 0x48(%rax)
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14dcdb
movq 0x38b0(%rsp), %rax
movswl 0x30(%rax), %eax
cmpl $0x1, %eax
je 0x14dcc0
movq 0x38b0(%rsp), %rax
movswl 0x2e(%rax), %eax
cmpl $0x1, %eax
jne 0x14dcdb
movq 0x38b0(%rsp), %rax
movl 0x64(%rax), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x98(%rax)
jmp 0x14dced
movq 0x3898(%rsp), %rax
movl $0x0, 0x98(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x30(%rax), %eax
cmpl $0x1, %eax
jne 0x14ddad
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14ddad
movq 0x3898(%rsp), %rax
movl $0x1, 0x4c(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x80(%rax)
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
movq 0x3898(%rsp), %rcx
movl 0x98(%rcx), %ecx
addl $0x1, %ecx
imull %ecx, %eax
movq 0x3898(%rsp), %rcx
movl 0x98(%rcx), %ecx
movq 0x3898(%rsp), %rdx
subl (%rdx), %ecx
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
subl $0x1, %edx
movq 0x3898(%rsp), %rsi
subl (%rsi), %edx
imull %edx, %ecx
subl %ecx, %eax
movl $0x2, %ecx
cltd
idivl %ecx
addl 0x3894(%rsp), %eax
movl %eax, 0x3894(%rsp)
jmp 0x14ddbc
movq 0x3898(%rsp), %rax
movl $0x0, 0x4c(%rax)
movq 0x3898(%rsp), %rax
movl $0x0, 0x50(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2c(%rax), %eax
cmpl $0x1, %eax
jne 0x14de40
movq 0x38b0(%rsp), %rax
movswl 0x30(%rax), %eax
cmpl $0x1, %eax
jne 0x14de40
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14de40
movq 0x3898(%rsp), %rax
movl $0x1, 0x54(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x88(%rax)
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
addl 0x3894(%rsp), %eax
movl %eax, 0x3894(%rsp)
jmp 0x14de4f
movq 0x3898(%rsp), %rax
movl $0x0, 0x54(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x2e(%rax), %eax
cmpl $0x1, %eax
jne 0x14df0f
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14df0f
movq 0x3898(%rsp), %rax
movl $0x1, 0x58(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x8c(%rax)
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
movq 0x3898(%rsp), %rcx
movl 0x98(%rcx), %ecx
addl $0x1, %ecx
imull %ecx, %eax
movq 0x3898(%rsp), %rcx
movl 0x98(%rcx), %ecx
movq 0x3898(%rsp), %rdx
subl (%rdx), %ecx
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
subl $0x1, %edx
movq 0x3898(%rsp), %rsi
subl (%rsi), %edx
imull %edx, %ecx
subl %ecx, %eax
movl $0x2, %ecx
cltd
idivl %ecx
addl 0x3894(%rsp), %eax
movl %eax, 0x3894(%rsp)
jmp 0x14df1e
movq 0x3898(%rsp), %rax
movl $0x0, 0x58(%rax)
movq 0x3898(%rsp), %rax
movl $0x0, 0x5c(%rax)
movq 0x38b0(%rsp), %rax
movswl 0x30(%rax), %eax
cmpl $0x1, %eax
jne 0x14dff5
movq 0x38b0(%rsp), %rax
movswl 0x2e(%rax), %eax
cmpl $0x1, %eax
jne 0x14dff5
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14dff5
movq 0x3898(%rsp), %rax
movl $0x1, 0x60(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x94(%rax)
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
movq 0x3898(%rsp), %rcx
imull 0x98(%rcx), %eax
movq 0x3898(%rsp), %rcx
movl 0x98(%rcx), %ecx
movq 0x3898(%rsp), %rdx
subl (%rdx), %ecx
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
subl $0x1, %edx
movq 0x3898(%rsp), %rsi
subl (%rsi), %edx
imull %edx, %ecx
subl %ecx, %eax
addl 0x3894(%rsp), %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e004
movq 0x3898(%rsp), %rax
movl $0x0, 0x60(%rax)
movl 0x3894(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0x9c(%rax)
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x3898(%rsp), %rax
movq %rcx, 0xc0(%rax)
movq 0x3898(%rsp), %rax
cmpq $0x0, 0xc0(%rax)
jne 0x14e0ce
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x184c(%rsp)
leaq 0x1040(%rsp), %rdi
movl 0x184c(%rsp), %ecx
leaq 0x83f85(%rip), %rsi     # 0x1d2004
leaq 0xb7f57(%rip), %rdx     # 0x205fdd
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x1040(%rsp), %r8
leaq 0x83f89(%rip), %rsi     # 0x1d2034
leaq 0xb7ede(%rip), %rdx     # 0x205f90
movl $0x23c, %ecx            # imm = 0x23C
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x3898(%rsp), %rax
movq %rcx, 0xb8(%rax)
movq 0x3898(%rsp), %rax
cmpq $0x0, 0xb8(%rax)
jne 0x14e183
movq 0x3898(%rsp), %rax
movslq 0x10(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x103c(%rsp)
leaq 0x830(%rsp), %rdi
movl 0x103c(%rsp), %ecx
leaq 0x83ed0(%rip), %rsi     # 0x1d2004
leaq 0xb7ead(%rip), %rdx     # 0x205fe8
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x830(%rsp), %r8
leaq 0x83ed4(%rip), %rsi     # 0x1d2034
leaq 0xb7e29(%rip), %rdx     # 0x205f90
movl $0x23d, %ecx            # imm = 0x23D
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
movl $0x0, 0x3890(%rsp)
movl 0x3890(%rsp), %eax
movq 0x3898(%rsp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x14e27d
movq 0x3898(%rsp), %rax
movslq 0x9c(%rax), %rdi
movl $0x4, %esi
callq 0x8280
movq %rax, %rdx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movslq 0x3890(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movslq 0x3890(%rsp), %rcx
cmpq $0x0, (%rax,%rcx,8)
jne 0x14e265
movl $0x4, 0x82c(%rsp)
leaq 0x20(%rsp), %rdi
movl 0x82c(%rsp), %ecx
leaq 0x83deb(%rip), %rsi     # 0x1d2004
leaq 0xb7dd6(%rip), %rdx     # 0x205ff6
movb $0x0, %al
callq 0x5b9c0
movq 0x3898(%rsp), %rdi
addq $0xea, %rdi
leaq 0x20(%rsp), %r8
leaq 0x83df2(%rip), %rsi     # 0x1d2034
leaq 0xb7d47(%rip), %rdx     # 0x205f90
movl $0x23f, %ecx            # imm = 0x23F
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x38c4(%rsp)
jmp 0x14ecaa
jmp 0x14e267
movl 0x3890(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3890(%rsp)
jmp 0x14e18e
movq 0x38b0(%rsp), %rax
movswl 0xe(%rax), %eax
cmpl $0x1, %eax
jne 0x14e9a1
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x30(%rax)
jne 0x14e2dc
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x64(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x34(%rax)
jne 0x14e326
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x68(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x38(%rax)
jne 0x14e370
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x6c(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x40(%rax)
jne 0x14e3ba
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x74(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x44(%rax)
jne 0x14e404
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x78(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x48(%rax)
jne 0x14e44e
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x7c(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x4c(%rax)
jne 0x14e54c
movq 0x3898(%rsp), %rax
movl 0x80(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movl %eax, 0x1c(%rsp)
movq 0x3898(%rsp), %rax
movl 0x80(%rax), %ecx
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
addl $0x1, %edx
imull %edx, %eax
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
movq 0x3898(%rsp), %rsi
subl (%rsi), %edx
movq 0x3898(%rsp), %rsi
movl 0x98(%rsi), %esi
subl $0x1, %esi
movq 0x3898(%rsp), %rdi
subl (%rdi), %esi
imull %esi, %edx
subl %edx, %eax
movl $0x2, %esi
cltd
idivl %esi
movl %eax, %edx
movl 0x1c(%rsp), %eax
addl %edx, %ecx
cmpl %ecx, %eax
jge 0x14e54a
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e475
jmp 0x14e54c
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x50(%rax)
jne 0x14e61b
movq 0x3898(%rsp), %rax
movl 0x84(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movq 0x3898(%rsp), %rcx
movl 0x84(%rcx), %ecx
movq 0x3898(%rsp), %rdx
addl 0x98(%rdx), %ecx
cmpl %ecx, %eax
jge 0x14e619
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movq 0x38b0(%rsp), %rcx
cmpl 0x54(%rcx), %eax
jge 0x14e5c3
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movl %eax, 0x18(%rsp)
jmp 0x14e5d2
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %eax
movl %eax, 0x18(%rsp)
movl 0x18(%rsp), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e573
jmp 0x14e61b
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x54(%rax)
jne 0x14e6ea
movq 0x3898(%rsp), %rax
movl 0x88(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movq 0x3898(%rsp), %rcx
movl 0x88(%rcx), %ecx
movq 0x3898(%rsp), %rdx
addl 0x98(%rdx), %ecx
cmpl %ecx, %eax
jge 0x14e6e8
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movq 0x38b0(%rsp), %rcx
cmpl 0x54(%rcx), %eax
jge 0x14e692
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movl %eax, 0x14(%rsp)
jmp 0x14e6a1
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %eax
movl %eax, 0x14(%rsp)
movl 0x14(%rsp), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e642
jmp 0x14e6ea
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x58(%rax)
jne 0x14e7e8
movq 0x3898(%rsp), %rax
movl 0x8c(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movl %eax, 0x10(%rsp)
movq 0x3898(%rsp), %rax
movl 0x8c(%rax), %ecx
movq 0x3898(%rsp), %rax
movl 0x98(%rax), %eax
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
addl $0x1, %edx
imull %edx, %eax
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
movq 0x3898(%rsp), %rsi
subl (%rsi), %edx
movq 0x3898(%rsp), %rsi
movl 0x98(%rsi), %esi
subl $0x1, %esi
movq 0x3898(%rsp), %rdi
subl (%rdi), %esi
imull %esi, %edx
subl %edx, %eax
movl $0x2, %esi
cltd
idivl %esi
movl %eax, %edx
movl 0x10(%rsp), %eax
addl %edx, %ecx
cmpl %ecx, %eax
jge 0x14e7e6
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e711
jmp 0x14e7e8
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x5c(%rax)
jne 0x14e8b7
movq 0x3898(%rsp), %rax
movl 0x90(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movq 0x3898(%rsp), %rcx
movl 0x90(%rcx), %ecx
movq 0x3898(%rsp), %rdx
addl 0x98(%rdx), %ecx
cmpl %ecx, %eax
jge 0x14e8b5
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movq 0x38b0(%rsp), %rcx
cmpl 0x54(%rcx), %eax
jge 0x14e85f
movq 0x38b0(%rsp), %rax
movl 0x48(%rax), %eax
movl %eax, 0xc(%rsp)
jmp 0x14e86e
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %eax
movl %eax, 0xc(%rsp)
movl 0xc(%rsp), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e80f
jmp 0x14e8b7
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x60(%rax)
jne 0x14e99f
movq 0x3898(%rsp), %rax
movl 0x94(%rax), %eax
movl %eax, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movq 0x3898(%rsp), %rcx
movl 0x94(%rcx), %ecx
movq 0x3898(%rsp), %rdx
movl 0x98(%rdx), %edx
movq 0x3898(%rsp), %rsi
imull 0x98(%rsi), %edx
movq 0x3898(%rsp), %rsi
movl 0x98(%rsi), %esi
movq 0x3898(%rsp), %rdi
subl (%rdi), %esi
movq 0x3898(%rsp), %rdi
movl 0x98(%rdi), %edi
subl $0x1, %edi
movq 0x3898(%rsp), %r8
subl (%r8), %edi
imull %edi, %esi
subl %esi, %edx
addl %edx, %ecx
cmpl %ecx, %eax
jge 0x14e99d
movq 0x38b0(%rsp), %rax
movl 0x54(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x848(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14e8de
jmp 0x14e99f
jmp 0x14e9a1
movq 0x38b0(%rsp), %rax
movswl 0x12(%rax), %eax
cmpl $0x1, %eax
jne 0x14eae0
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x30(%rax)
jne 0x14ea00
movq 0x38b0(%rsp), %rax
movl 0x50(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x84c(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x64(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x34(%rax)
jne 0x14ea4a
movq 0x38b0(%rsp), %rax
movl 0x50(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x84c(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x68(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x38(%rax)
jne 0x14ea94
movq 0x38b0(%rsp), %rax
movl 0x50(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x84c(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x6c(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
movq 0x3898(%rsp), %rax
cmpl $0x1, 0x3c(%rax)
jne 0x14eade
movq 0x38b0(%rsp), %rax
movl 0x50(%rax), %edx
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x38b0(%rsp), %rcx
movslq 0x84c(%rcx), %rcx
movq (%rax,%rcx,8), %rax
movq 0x3898(%rsp), %rcx
movslq 0x70(%rcx), %rcx
movl %edx, (%rax,%rcx,4)
jmp 0x14eae0
movq 0x3898(%rsp), %rax
movl $0x0, 0xc8(%rax)
movl $0x0, 0x3890(%rsp)
movl 0x3890(%rsp), %eax
movq 0x3898(%rsp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x14ec9d
movq 0x3898(%rsp), %rax
movq 0xc0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl $0x0, (%rax,%rcx,4)
movl $0x0, 0x3894(%rsp)
movl 0x3894(%rsp), %eax
movq 0x3898(%rsp), %rcx
cmpl 0x9c(%rcx), %eax
jge 0x14ec19
movq 0x3898(%rsp), %rax
movq 0xc0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl (%rax,%rcx,4), %eax
movq 0x3898(%rsp), %rcx
movq 0xb8(%rcx), %rcx
movslq 0x3890(%rsp), %rdx
movq (%rcx,%rdx,8), %rcx
movslq 0x3894(%rsp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x14ebc7
movq 0x3898(%rsp), %rax
movq 0xb8(%rax), %rax
movslq 0x3890(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movslq 0x3894(%rsp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, 0x8(%rsp)
jmp 0x14ebe5
movq 0x3898(%rsp), %rax
movq 0xc0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, 0x8(%rsp)
movl 0x8(%rsp), %edx
movq 0x3898(%rsp), %rax
movq 0xc0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl %edx, (%rax,%rcx,4)
movl 0x3894(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3894(%rsp)
jmp 0x14eb3e
movq 0x3898(%rsp), %rax
movl 0xc8(%rax), %eax
movq 0x3898(%rsp), %rcx
movq 0xc0(%rcx), %rcx
movslq 0x3890(%rsp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x14ec63
movq 0x3898(%rsp), %rax
movq 0xc0(%rax), %rax
movslq 0x3890(%rsp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, 0x4(%rsp)
jmp 0x14ec75
movq 0x3898(%rsp), %rax
movl 0xc8(%rax), %eax
movl %eax, 0x4(%rsp)
movl 0x4(%rsp), %ecx
movq 0x3898(%rsp), %rax
movl %ecx, 0xc8(%rax)
movl 0x3890(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3890(%rsp)
jmp 0x14eafd
jmp 0x14ec9f
movl $0x0, 0x38c4(%rsp)
movl 0x38c4(%rsp), %eax
addq $0x38c8, %rsp           # imm = 0x38C8
retq
nopl (%rax)