// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../source/thermodynamics.c
// Function: thermodynamics_at_z
int thermodynamics_at_z(
                        struct background * pba,
                        struct thermodynamics * pth,
                        double z,
                        enum interpolation_method inter_mode,
                        int * last_index,
                        double * pvecback, //should be filled for z>z_initial!
                        double * pvecthermo
                        ) {

  /** Summary: */

  /** - define local variables */
  double x0;
  /* Dark matter baryon scattering */
  double Vrms_idm_b2, T_diff_idm_b, m_b, FHe;
  /* Varying fundamental constants */
  double sigmaTrescale = 1., alpha = 1., me = 1.;

  /* The fact that z is in the pre-computed range 0 <= z <= z_initial will be checked in the interpolation routines below. Before
     trying to interpolate, allow the routine to deal with the case z > z_initial: then, all relevant quantities can be extrapolated
     using simple analytic approximations */

  if (z >= pth->z_table[pth->tt_size-1]) {

    /* ionization fraction assumed to remain constant at large z */
    x0= pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_xe];
    pvecthermo[pth->index_th_xe] = x0;

    /* In the case of varying fundamental constants, compute correction factor (according to 1705.03925) */
    if (pth->has_varconst == _TRUE_) {
      class_call(background_varconst_of_z(pba, z, &alpha, &me),
                 pba->error_message,
                 pth->error_message);
      sigmaTrescale = alpha*alpha/me/me;
    }

    /* Calculate dkappa/dtau (dkappa/dtau = a n_e x_e sigma_T = a^{-2} n_e(today) x_e sigma_T in units of 1/Mpc) */
    pvecthermo[pth->index_th_dkappa] = (1.+z) * (1.+z) * pth->n_e * x0 * sigmaTrescale * _sigma_ * _Mpc_over_m_;

    /* tau_d scales like (1+z)**2 */
    pvecthermo[pth->index_th_tau_d] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_tau_d]*pow((1+z)/(1.+pth->z_table[pth->tt_size-1]),2);

    if (pth->compute_damping_scale == _TRUE_) {

      /* r_d scales like (1+z)**-3/2 */
      pvecthermo[pth->index_th_r_d] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_r_d]*pow((1+z)/(1.+pth->z_table[pth->tt_size-1]),-1.5);
    }

    /* Calculate d2kappa/dtau2 = dz/dtau d/dz[dkappa/dtau] given that [dkappa/dtau] proportional to (1+z)^2 and dz/dtau = -H */
    pvecthermo[pth->index_th_ddkappa] = -pvecback[pba->index_bg_H] * 2. / (1.+z) * pvecthermo[pth->index_th_dkappa];

    /* Calculate d3kappa/dtau3 given that [dkappa/dtau] proportional to (1+z)^2 */
    pvecthermo[pth->index_th_dddkappa] = (pvecback[pba->index_bg_H]*pvecback[pba->index_bg_H]/ (1.+z) - pvecback[pba->index_bg_H_prime]) * 2. / (1.+z) * pvecthermo[pth->index_th_dkappa];

    /* \f$ exp^{-\kappa}, g, g', g'' \f$ can be set to zero: they are used only for computing the source functions in the
       perturbation module; but source functions only need to be sampled below z_initial (the condition that
       z_start_sources<z_initial is checked in the perturbation module) */
    pvecthermo[pth->index_th_exp_m_kappa] = 0.;
    pvecthermo[pth->index_th_g]=0.;
    pvecthermo[pth->index_th_dg]=0.;
    pvecthermo[pth->index_th_ddg]=0.;

    /* Calculate Tb assuming Tb ~ T_g at early times */
    pvecthermo[pth->index_th_Tb] = pba->T_cmb*(1.+z);

    /* Tb derivative */
    pvecthermo[pth->index_th_dTb] = pba->T_cmb;

    /* Calculate baryon equation of state parameter wb = (k_B/mu) Tb */
    /* note that m_H / mu = 1 + (m_H/m_He-1) Y_p + x_e (1-Y_p) */
    pvecthermo[pth->index_th_wb] = _k_B_ / ( _c_ * _c_ * _m_H_ ) * (1. + (1./_not4_ - 1.) * pth->YHe + x0 * (1.-pth->YHe)) * pba->T_cmb * (1.+z);

    /* Calculate cb2 (cb2 = (k_B/mu) Tb (1-1/3 dlnTb/dlna) = (k_B/mu) Tb (1+1/3 (1+z) dlnTb/dz)) */
    /* note that m_H / mu = 1 + (m_H/m_He-1) Y_p + x_e (1-Y_p) */
    pvecthermo[pth->index_th_cb2] = pvecthermo[pth->index_th_wb] * 4. / 3.;

    /* derivatives of baryon sound speed (only computed if some non-minimal tight-coupling schemes is requested) */
    if (pth->compute_cb2_derivatives == _TRUE_) {

      /* since cb2 proportional to (1+z) or 1/a, its derivative wrt conformal time is given by dcb2 = - a H cb2 */
      pvecthermo[pth->index_th_dcb2] = - pvecback[pba->index_bg_H] * pvecback[pba->index_bg_a] * pvecthermo[pth->index_th_cb2];

      /* then its second derivative is given by ddcb2 = - a H' cb2 */
      pvecthermo[pth->index_th_ddcb2] = - pvecback[pba->index_bg_H_prime] * pvecback[pba->index_bg_a] * pvecthermo[pth->index_th_cb2];
    }

    /* in this regime, variation rate = dkappa/dtau */
    pvecthermo[pth->index_th_rate] = pvecthermo[pth->index_th_dkappa];

    /* Quantities related to idm */
    if (pba->has_idm == _TRUE_) {

      /* Temperature and sound speed of idm (assuming T_idm ~ T_g at early times) */
      pvecthermo[pth->index_th_T_idm] = pba->T_cmb* (1+z);
      pvecthermo[pth->index_th_c2_idm] = _k_B_ * pba->T_cmb*(1+z)/(pth->m_idm*_eV_)  * (1 - (1.+z)/3./pvecback[pba->index_bg_H]);

      /* For DM-g calculate at early times the optical depth parameters */
      if (pth->has_idm_g == _TRUE_) {
        /* calculate dmu_idm_g and its derivatives */
        pvecthermo[pth->index_th_dmu_idm_g] = 3./8./_PI_/_G_*pow(1.+z, 2+pth->n_index_idm_g)*pba->Omega0_idm*pba->H0*pba->H0*pth->u_idm_g*pow(_c_,4)*_sigma_/1.e11/_eV_/_Mpc_over_m_;
        pvecthermo[pth->index_th_ddmu_idm_g] = -(2.+pth->n_index_idm_g) * pvecback[pba->index_bg_H] * pvecback[pba->index_bg_a] * pvecthermo[pth->index_th_dmu_idm_g];
        pvecthermo[pth->index_th_dddmu_idm_g] = (2.+pth->n_index_idm_g)*pvecthermo[pth->index_th_dmu_idm_g]/(1.+z) *
          (pvecback[pba->index_bg_H]*pvecback[pba->index_bg_H]/(1.+z) * (1.+pth->n_index_idm_g) - pvecback[pba->index_bg_H_prime]);
        /* extrapolate optical depth of idm_g */
        if (pth->n_index_idm_g == -1){
          pvecthermo[pth->index_th_exp_mu_idm_g] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_exp_mu_idm_g] * exp( - pvecthermo[pth->index_th_dmu_idm_g] *pow(1.+z, -2-pth->n_index_idm_g) * log((1.+z)/(1.+pth->z_table[pth->tt_size-1]))*(1.+z)*(1.+z)/pvecback[pba->index_bg_H]);
        }
        else{
          pvecthermo[pth->index_th_exp_mu_idm_g] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_exp_mu_idm_g] * exp( - pvecthermo[pth->index_th_dmu_idm_g] *pow(1.+z, -2-pth->n_index_idm_g) /(1.+pth->n_index_idm_g) * (pow(1.+z,pth->n_index_idm_g+1)-pow(1.+pth->z_table[pth->tt_size-1],pth->n_index_idm_g+1))*(1.+z)*(1.+z)/pvecback[pba->index_bg_H] );
        }
      }

      /* For idm_b calculate at early times the interaction rate parameters */
      if (pth->has_idm_b == _TRUE_){

        /* some constants used in the scattering rate and temperatures */
        FHe = 1-pth->YHe;
        m_b = _m_p_*_c_*_c_/_eV_;
        Vrms_idm_b2 = 1.e-8; /* approximation for V_rms at early times */
        T_diff_idm_b = (pvecthermo[pth->index_th_Tb]*_k_B_/_eV_/m_b)+(pvecthermo[pth->index_th_T_idm]*_k_B_/_eV_/pth->m_idm)+(Vrms_idm_b2/3.0); /* T and m are all in eV */

        /* Now compute the coupling coefficients */
        pvecthermo[pth->index_th_R_idm_b] = (pvecback[pba->index_bg_a]*pvecback[pba->index_bg_rho_b]*pth->cross_idm_b*pth->n_coeff_idm_b/(m_b+pth->m_idm))
          *pow(T_diff_idm_b,(pth->n_index_idm_b+1.0)/2.0)*FHe
          *(3.e-4*pow(_c_,4.)/(8.*_PI_*_Mpc_over_m_*_G_*_eV_)); /* conversion coefficient for the units */
        pvecthermo[pth->index_th_dR_idm_b] = pvecthermo[pth->index_th_R_idm_b] * pvecback[pba->index_bg_a] * pvecback[pba->index_bg_H]
          * ( -2. - (1.+z) * (pth->n_index_idm_b+1.0)/2.0 * (pba->T_cmb*_k_B_/_eV_/m_b + pba->T_cmb*_k_B_/_eV_/pth->m_idm)/T_diff_idm_b);
      }

      /* For idm_dr calculate at early times the optical depth parameters */
      if (pth->has_idm_dr == _TRUE_){
        /* calculate dmu_idm_dr and its derivatives */
        pvecthermo[pth->index_th_dmu_idm_dr] = pth->a_idm_dr*pow((1.+z)/1.e7,pth->n_index_idm_dr)*pba->Omega0_idm*pow(pba->h,2);
        pvecthermo[pth->index_th_ddmu_idm_dr] =  -pvecback[pba->index_bg_H] * pth->n_index_idm_dr / (1+z) * pvecthermo[pth->index_th_dmu_idm_dr];
        pvecthermo[pth->index_th_dddmu_idm_dr] = (pvecback[pba->index_bg_H]*pvecback[pba->index_bg_H]/ (1.+z) * (pth->n_index_idm_dr - 1.) - pvecback[pba->index_bg_H_prime])
          * pth->n_index_idm_dr / (1.+z) * pvecthermo[pth->index_th_dmu_idm_dr];

        /* extrapolate optical depth of idm_dr and idr */
        if (pth->n_index_idm_dr == 1 ){
          pvecthermo[pth->index_th_tau_idr] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_tau_idr]+pvecthermo[pth->index_th_dmu_idm_dr] * pow(1.+z, - pth->n_index_idm_dr) * log((1.+z)/(1.+pth->z_table[pth->tt_size-1]))/(pvecback[pba->index_bg_H]/(1.+z)/(1.+z));
        }
        else{
          pvecthermo[pth->index_th_tau_idr] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_tau_idr]+pvecthermo[pth->index_th_dmu_idm_dr] * pow(1.+z, - pth->n_index_idm_dr)/(1.-pth->n_index_idm_dr) * (pow(1.+pth->z_table[pth->tt_size-1], pth->n_index_idm_dr -1) - pow(1.+z, pth->n_index_idm_dr -1))/(pvecback[pba->index_bg_H]/(1.+z)/(1.+z));
        }

        if (pth->n_index_idm_dr == 0 ){
          pvecthermo[pth->index_th_tau_idm_dr] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_tau_idm_dr]+pvecthermo[pth->index_th_dmu_idm_dr] * pow(1.+z, - pth->n_index_idm_dr) * 4./3. * pba->Omega0_idr/pba->Omega0_idm * log((1.+z)/(1.+pth->z_table[pth->tt_size-1]))/(pvecback[pba->index_bg_H]/(1.+z)/(1.+z));
        }
        else{
          pvecthermo[pth->index_th_tau_idm_dr] = pth->thermodynamics_table[(pth->tt_size-1)*pth->th_size+pth->index_th_tau_idm_dr]+pvecthermo[pth->index_th_dmu_idm_dr] * pow(1.+z, - pth->n_index_idm_dr) * 4./3. * pba->Omega0_idr/pba->Omega0_idm /(-pth->n_index_idm_dr) * (pow(1.+pth->z_table[pth->tt_size-1], pth->n_index_idm_dr) - pow(1.+z, pth->n_index_idm_dr))/(pvecback[pba->index_bg_H]/(1.+z)/(1.+z));
        }

        /* extrapolate idm_dr visibility function */
        pvecthermo[pth->index_th_g_idm_dr] = pvecthermo[pth->index_th_dmu_idm_dr] * 4./3. * pba->Omega0_idr/pba->Omega0_idm * (1.+z) * exp(-pvecthermo[pth->index_th_tau_idm_dr]);
      }

    }

    /* Quantities related to idr */
    if (pba->has_idr == _TRUE_) {

      /* Use the temperature scaling assumed throughout */
      pvecthermo[pth->index_th_T_idr] = pba->T_idr* (1+z);

      /* calculate dmu_idr (self interaction) */
      pvecthermo[pth->index_th_dmu_idr] = pth->b_idr*pow((1.+z)/1.e7,pth->n_index_idm_dr)*pba->Omega0_idr*pow(pba->h,2);
    }
  }

  /** - interpolate in table with array_interpolate_spline (normal mode) or array_interpolate_spline_growing_closeby (closeby mode) */

  else {

    /* some very specific cases require linear interpolation because of a break in the derivative of the functions */
    if (((pth->reio_parametrization == reio_half_tanh) && (z < 2*pth->z_reio))
        || ((pth->reio_parametrization == reio_inter) && (z < 50.))) {

      class_call(array_interpolate_linear(pth->z_table,
                                          pth->tt_size,
                                          pth->thermodynamics_table,
                                          pth->th_size,
                                          z,
                                          last_index,
                                          pvecthermo,
                                          pth->th_size,
                                          pth->error_message),
                 pth->error_message,
                 pth->error_message);
    }

    /* in the "normal" case, use spline interpolation */
    else {

      if (inter_mode == inter_normal) {

        class_call(array_interpolate_spline(pth->z_table,
                                            pth->tt_size,
                                            pth->thermodynamics_table,
                                            pth->d2thermodynamics_dz2_table,
                                            pth->th_size,
                                            z,
                                            last_index,
                                            pvecthermo,
                                            pth->th_size,
                                            pth->error_message),
                   pth->error_message,
                   pth->error_message);
      }

      if (inter_mode == inter_closeby) {

        class_call(array_interpolate_spline_growing_closeby(pth->z_table,
                                                            pth->tt_size,
                                                            pth->thermodynamics_table,
                                                            pth->d2thermodynamics_dz2_table,
                                                            pth->th_size,
                                                            z,
                                                            last_index,
                                                            pvecthermo,
                                                            pth->th_size,
                                                            pth->error_message),
                   pth->error_message,
                   pth->error_message);

      }
    }
  }
  return _SUCCESS_;
}

// Assembly:
subq $0x2198, %rsp           # imm = 0x2198
movq %rdi, 0x2188(%rsp)
movq %rsi, 0x2180(%rsp)
movsd %xmm0, 0x2178(%rsp)
movl %edx, 0x2174(%rsp)
movq %rcx, 0x2168(%rsp)
movq %r8, 0x2160(%rsp)
movq %r9, 0x2158(%rsp)
movsd 0x121c51(%rip), %xmm0   # 0x1d2248
movsd %xmm0, 0x2128(%rsp)
movsd 0x121c40(%rip), %xmm0   # 0x1d2248
movsd %xmm0, 0x2120(%rsp)
movsd 0x121c2f(%rip), %xmm0   # 0x1d2248
movsd %xmm0, 0x2118(%rsp)
movsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
ucomisd (%rax,%rcx,8), %xmm0
jb 0xb24e5
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xe7c(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x2150(%rsp)
movsd 0x2150(%rsp), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe7c(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movswl 0xe78(%rax), %eax
cmpl $0x1, %eax
jne 0xb07a9
movq 0x2188(%rsp), %rdi
movsd 0x2178(%rsp), %xmm0
leaq 0x2120(%rsp), %rsi
leaq 0x2118(%rsp), %rdx
callq 0xa2870
cmpl $0x1, %eax
jne 0xb077c
leaq 0x1910(%rsp), %rdi
movq 0x2188(%rsp), %rcx
addq $0xd1c, %rcx            # imm = 0xD1C
leaq 0x121cab(%rip), %rsi    # 0x1d23d8
leaq 0x140efc(%rip), %rdx    # 0x1f1630
movb $0x0, %al
callq 0x5b9c0
movq 0x2180(%rsp), %rdi
addq $0x1064, %rdi           # imm = 0x1064
leaq 0x1910(%rsp), %r8
leaq 0x1218db(%rip), %rsi    # 0x1d2034
leaq 0x140efe(%rip), %rdx    # 0x1f165e
movl $0x5a, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2194(%rsp)
jmp 0xb286b
movsd 0x2120(%rsp), %xmm0
mulsd 0x2120(%rsp), %xmm0
divsd 0x2118(%rsp), %xmm0
divsd 0x2118(%rsp), %xmm0
movsd %xmm0, 0x2128(%rsp)
movsd 0x121a97(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movsd 0x121a86(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1008(%rax), %xmm0
mulsd 0x2150(%rsp), %xmm0
mulsd 0x2128(%rsp), %xmm0
movsd 0x125fef(%rip), %xmm1   # 0x1d67e8
mulsd %xmm1, %xmm0
movsd 0x125e5b(%rip), %xmm1   # 0x1d6660
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe80(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xe84(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x108(%rsp)
movsd 0x1219cd(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x121999(%rip), %xmm1   # 0x1d2248
addsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
movsd 0x1223c0(%rip), %xmm1   # 0x1d2c80
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x108(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe84(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movswl 0x32(%rax), %eax
cmpl $0x1, %eax
jne 0xb09d2
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xf00(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x100(%rsp)
movsd 0x1218ec(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x1218b8(%rip), %xmm1   # 0x1d2248
addsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
movsd 0x124b47(%rip), %xmm1   # 0x1d54e8
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x100(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xf00(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x122273(%rip), %xmm1   # 0x1d2c80
mulsd %xmm1, %xmm0
movsd 0x12182f(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe80(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe88(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movsd 0x1217aa(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x388(%rcx), %rcx
subsd (%rax,%rcx,8), %xmm0
movsd 0x1221b1(%rip), %xmm1   # 0x1d2c80
mulsd %xmm1, %xmm0
movsd 0x12176d(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe80(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe8c(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe90(%rcx), %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe94(%rcx), %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe98(%rcx), %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe9c(%rcx), %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
movq 0x2188(%rsp), %rax
movsd 0x18(%rax), %xmm0
movsd 0x121697(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xee4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2188(%rsp), %rax
movsd 0x18(%rax), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xee8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movsd (%rax), %xmm0
movsd 0x140881(%rip), %xmm1   # 0x1f1498
mulsd %xmm1, %xmm0
movsd 0x121625(%rip), %xmm1   # 0x1d2248
addsd %xmm1, %xmm0
movsd 0x2150(%rsp), %xmm1
movq 0x2180(%rsp), %rax
movsd 0x121608(%rip), %xmm2   # 0x1d2248
subsd (%rax), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd 0x14083c(%rip), %xmm0   # 0x1f1490
mulsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0x18(%rax), %xmm0
movsd 0x1215db(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeec(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeec(%rcx), %rcx
movsd 0x124813(%rip), %xmm0   # 0x1d54c8
mulsd (%rax,%rcx,8), %xmm0
movsd 0x1229d6(%rip), %xmm1   # 0x1d3698
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xef0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movswl 0x30(%rax), %eax
cmpl $0x1, %eax
jne 0xb0e05
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x380(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xef0(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xef4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x388(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x380(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xef0(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xef8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xe80(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xefc(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2188(%rsp), %rax
movswl 0x4b6(%rax), %eax
cmpl $0x1, %eax
jne 0xb23d9
movq 0x2188(%rsp), %rax
movsd 0x18(%rax), %xmm0
movsd 0x1213de(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xea0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2188(%rsp), %rax
movsd 0x12579d(%rip), %xmm0   # 0x1d6640
mulsd 0x18(%rax), %xmm0
movsd 0x121398(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
movsd 0x12592b(%rip), %xmm1   # 0x1d67f8
mulsd 0x1010(%rax), %xmm1
divsd %xmm1, %xmm0
movsd 0x121367(%rip), %xmm2   # 0x1d2248
addsd 0x2178(%rsp), %xmm2
movsd 0x1227a6(%rip), %xmm1   # 0x1d3698
divsd %xmm1, %xmm2
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
divsd (%rax,%rcx,8), %xmm2
movsd 0x12132e(%rip), %xmm1   # 0x1d2248
subsd %xmm2, %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xea4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movswl 0x36(%rax), %eax
cmpl $0x1, %eax
jne 0xb15b2
movsd 0x1212ed(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movl 0x1058(%rax), %eax
addl $0x2, %eax
cvtsi2sd %eax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x140517(%rip), %xmm0   # 0x1f14a0
mulsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf0(%rax), %xmm0
movq 0x2188(%rsp), %rax
mulsd (%rax), %xmm0
movq 0x2188(%rsp), %rax
mulsd (%rax), %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1050(%rax), %xmm0
movsd %xmm0, 0xf8(%rsp)
movsd 0x12565a(%rip), %xmm0   # 0x1d6630
movsd 0x1244ea(%rip), %xmm1   # 0x1d54c8
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xf8(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd 0x1257ed(%rip), %xmm1   # 0x1d67e8
mulsd %xmm1, %xmm0
movsd 0x1257d9(%rip), %xmm1   # 0x1d67e0
divsd %xmm1, %xmm0
movsd 0x1257e5(%rip), %xmm1   # 0x1d67f8
divsd %xmm1, %xmm0
movsd 0x125641(%rip), %xmm1   # 0x1d6660
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1058(%rax), %xmm1
movsd 0x121c29(%rip), %xmm0   # 0x1d2c80
addsd %xmm1, %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x380(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec8(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xecc(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1058(%rax), %xmm1
movsd 0x121b86(%rip), %xmm0   # 0x1d2c80
addsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec8(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movsd 0x121126(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm1
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm1
movsd 0x1210d9(%rip), %xmm2   # 0x1d2248
addsd 0x2178(%rsp), %xmm2
divsd %xmm2, %xmm1
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1058(%rax), %xmm2
movsd 0x1210b4(%rip), %xmm3   # 0x1d2248
addsd %xmm2, %xmm3
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x388(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm2
movq %xmm2, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm2
mulsd %xmm3, %xmm1
addsd %xmm2, %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xed0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
cmpl $-0x1, 0x1058(%rax)
jne 0xb13ae
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xed4(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0xf0(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec8(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd %xmm0, 0xe0(%rsp)
movsd 0x120fae(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rcx
movl $0xfffffffe, %eax       # imm = 0xFFFFFFFE
subl 0x1058(%rcx), %eax
cvtsi2sd %eax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xe0(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd %xmm0, 0xe8(%rsp)
movsd 0x120f68(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x120f34(%rip), %xmm1   # 0x1d2248
addsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
callq 0x82f0
movaps %xmm0, %xmm1
movsd 0xe8(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd 0x120f0e(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movsd 0x120ef9(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
divsd (%rax,%rcx,8), %xmm0
callq 0x8670
movaps %xmm0, %xmm1
movsd 0xf0(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xed4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb15b0
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xed4(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0xd8(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec8(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd %xmm0, 0xc0(%rsp)
movsd 0x120e08(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rcx
movl $0xfffffffe, %eax       # imm = 0xFFFFFFFE
subl 0x1058(%rcx), %eax
cvtsi2sd %eax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xc0(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1058(%rax), %xmm2
movsd 0x120dbb(%rip), %xmm1   # 0x1d2248
addsd %xmm2, %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, 0xd0(%rsp)
movsd 0x120da2(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movl 0x1058(%rax), %eax
addl $0x1, %eax
cvtsi2sd %eax, %xmm1
callq 0x8610
movsd %xmm0, 0xc8(%rsp)
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x120d4b(%rip), %xmm0   # 0x1d2248
addsd (%rax,%rcx,8), %xmm0
movq 0x2180(%rsp), %rax
movl 0x1058(%rax), %eax
addl $0x1, %eax
cvtsi2sd %eax, %xmm1
callq 0x8610
movsd 0xc8(%rsp), %xmm1
movaps %xmm0, %xmm2
movsd 0xd0(%rsp), %xmm0
subsd %xmm2, %xmm1
mulsd %xmm1, %xmm0
movsd 0x120d07(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movsd 0x120cf2(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
divsd (%rax,%rcx,8), %xmm0
callq 0x8670
movaps %xmm0, %xmm1
movsd 0xd8(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xed4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb15b2
movq 0x2180(%rsp), %rax
movswl 0x34(%rax), %eax
cmpl $0x1, %eax
jne 0xb18fd
movq 0x2180(%rsp), %rax
movsd 0x120c71(%rip), %xmm0   # 0x1d2248
subsd (%rax), %xmm0
movsd %xmm0, 0x2130(%rsp)
movsd 0x13fed4(%rip), %xmm0   # 0x1f14c0
movsd %xmm0, 0x2138(%rsp)
movsd 0x13febb(%rip), %xmm0   # 0x1f14b8
movsd %xmm0, 0x2148(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xee4(%rcx), %rcx
movsd 0x12501b(%rip), %xmm0   # 0x1d6640
mulsd (%rax,%rcx,8), %xmm0
movsd 0x1251c6(%rip), %xmm1   # 0x1d67f8
divsd %xmm1, %xmm0
divsd 0x2138(%rsp), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xea0(%rcx), %rcx
movsd 0x124fe2(%rip), %xmm1   # 0x1d6640
mulsd (%rax,%rcx,8), %xmm1
movsd 0x12518d(%rip), %xmm2   # 0x1d67f8
divsd %xmm2, %xmm1
movq 0x2180(%rsp), %rax
divsd 0x1010(%rax), %xmm1
addsd %xmm1, %xmm0
movsd 0x2148(%rsp), %xmm1
movsd 0x122004(%rip), %xmm2   # 0x1d3698
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movsd %xmm0, 0x2140(%rsp)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x380(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x390(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1030(%rax), %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1040(%rax), %xmm0
movsd 0x2138(%rsp), %xmm1
movq 0x2180(%rsp), %rax
addsd 0x1010(%rax), %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, 0xb0(%rsp)
movsd 0x2140(%rsp), %xmm0
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1038(%rax), %xmm1
movsd 0x120b04(%rip), %xmm2   # 0x1d2248
addsd %xmm2, %xmm1
movsd 0x121530(%rip), %xmm2   # 0x1d2c80
divsd %xmm2, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xb0(%rsp), %xmm0
mulsd %xmm1, %xmm0
mulsd 0x2130(%rsp), %xmm0
movsd %xmm0, 0xb8(%rsp)
movsd 0x124ead(%rip), %xmm0   # 0x1d6630
movsd 0x123d3d(%rip), %xmm1   # 0x1d54c8
callq 0x8610
movaps %xmm0, %xmm2
movsd 0xb8(%rsp), %xmm0
movsd 0x13fd0c(%rip), %xmm1   # 0x1f14b0
mulsd %xmm2, %xmm1
movsd 0x13fcf8(%rip), %xmm2   # 0x1f14a8
divsd %xmm2, %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xed8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xed8(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x380(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movsd 0x120a18(%rip), %xmm2   # 0x1d2248
addsd 0x2178(%rsp), %xmm2
movq 0x2180(%rsp), %rax
cvtsi2sdl 0x1038(%rax), %xmm1
movsd 0x1209f7(%rip), %xmm3   # 0x1d2248
addsd %xmm3, %xmm1
mulsd %xmm1, %xmm2
movsd 0x12141f(%rip), %xmm1   # 0x1d2c80
divsd %xmm1, %xmm2
movq 0x2188(%rsp), %rax
movsd 0x124dcb(%rip), %xmm1   # 0x1d6640
mulsd 0x18(%rax), %xmm1
movsd 0x124f76(%rip), %xmm3   # 0x1d67f8
divsd %xmm3, %xmm1
divsd 0x2138(%rsp), %xmm1
movq 0x2188(%rsp), %rax
movsd 0x124da1(%rip), %xmm3   # 0x1d6640
mulsd 0x18(%rax), %xmm3
movsd 0x124f4c(%rip), %xmm4   # 0x1d67f8
divsd %xmm4, %xmm3
movq 0x2180(%rsp), %rax
divsd 0x1010(%rax), %xmm3
addsd %xmm3, %xmm1
mulsd %xmm1, %xmm2
divsd 0x2140(%rsp), %xmm2
movsd 0x121ea7(%rip), %xmm1   # 0x1d3780
subsd %xmm2, %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xedc(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movswl 0x38(%rax), %eax
cmpl $0x1, %eax
jne 0xb23d7
movq 0x2180(%rsp), %rax
movsd 0x1018(%rax), %xmm0
movsd %xmm0, 0xa0(%rsp)
movsd 0x120915(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movsd 0x13fb84(%rip), %xmm1   # 0x1f14c8
divsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xa0(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf0(%rax), %xmm0
movsd %xmm0, 0xa8(%rsp)
movq 0x2188(%rsp), %rax
movsd 0x8(%rax), %xmm0
movsd 0x1212e5(%rip), %xmm1   # 0x1d2c80
callq 0x8610
movaps %xmm0, %xmm1
movsd 0xa8(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1028(%rax), %xmm0
movsd 0x120831(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeb0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movsd 0x1207ac(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm2
movsd 0x120787(%rip), %xmm1   # 0x1d2248
subsd %xmm1, %xmm2
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x388(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
mulsd 0x1028(%rax), %xmm0
movsd 0x120730(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
mulsd (%rax,%rcx,8), %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeb4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm0
movsd 0x1206d3(%rip), %xmm1   # 0x1d2248
ucomisd %xmm1, %xmm0
jne 0xb1d20
jp 0xb1d20
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xec0(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x98(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x88(%rsp)
movsd 0x120648(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x88(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd %xmm0, 0x90(%rsp)
movsd 0x1205f2(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x1205be(%rip), %xmm1   # 0x1d2248
addsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
callq 0x82f0
movsd 0x90(%rsp), %xmm1
movaps %xmm0, %xmm2
movsd 0x98(%rsp), %xmm0
mulsd %xmm2, %xmm1
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x120573(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
movsd 0x12055e(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb1f0f
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xec0(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x80(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x68(%rsp)
movsd 0x1204b0(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x68(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
movsd 0x12045e(%rip), %xmm1   # 0x1d2248
subsd 0x1028(%rax), %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, 0x78(%rsp)
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x120421(%rip), %xmm0   # 0x1d2248
addsd (%rax,%rcx,8), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movsd 0x120404(%rip), %xmm2   # 0x1d2248
subsd %xmm2, %xmm1
callq 0x8610
movsd %xmm0, 0x70(%rsp)
movsd 0x1203ed(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movsd 0x1203cc(%rip), %xmm2   # 0x1d2248
subsd %xmm2, %xmm1
callq 0x8610
movsd 0x70(%rsp), %xmm2
movsd 0x78(%rsp), %xmm1
movaps %xmm0, %xmm3
movsd 0x80(%rsp), %xmm0
subsd %xmm3, %xmm2
mulsd %xmm2, %xmm1
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x12037f(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
movsd 0x12036a(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec0(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0xb20f3
jp 0xb20f3
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xebc(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x60(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x50(%rsp)
movsd 0x1202a1(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x50(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd 0x1234d7(%rip), %xmm1   # 0x1d54c8
mulsd %xmm1, %xmm0
movsd 0x12169b(%rip), %xmm1   # 0x1d3698
divsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf8(%rax), %xmm0
movq 0x2188(%rsp), %rax
divsd 0xf0(%rax), %xmm0
movsd %xmm0, 0x58(%rsp)
movsd 0x120219(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x1201e5(%rip), %xmm1   # 0x1d2248
addsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
callq 0x82f0
movsd 0x58(%rsp), %xmm1
movaps %xmm0, %xmm2
movsd 0x60(%rsp), %xmm0
mulsd %xmm2, %xmm1
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x1201a0(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
movsd 0x12018b(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xebc(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb230b
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movq 0x2180(%rsp), %rdx
imull 0xf04(%rdx), %ecx
movq 0x2180(%rsp), %rdx
addl 0xebc(%rdx), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x48(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x30(%rsp)
movsd 0x1200e0(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x30(%rsp), %xmm0
mulsd %xmm1, %xmm0
movsd 0x123316(%rip), %xmm1   # 0x1d54c8
mulsd %xmm1, %xmm0
movsd 0x1214da(%rip), %xmm1   # 0x1d3698
divsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf8(%rax), %xmm0
movq 0x2188(%rsp), %rax
divsd 0xf0(%rax), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, 0x40(%rsp)
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rax
movq 0x2180(%rsp), %rcx
movl 0xf08(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd 0x12000a(%rip), %xmm0   # 0x1d2248
addsd (%rax,%rcx,8), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
callq 0x8610
movsd %xmm0, 0x38(%rsp)
movsd 0x11ffe2(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
callq 0x8610
movsd 0x38(%rsp), %xmm2
movsd 0x40(%rsp), %xmm1
movaps %xmm0, %xmm3
movsd 0x48(%rsp), %xmm0
subsd %xmm3, %xmm2
mulsd %xmm2, %xmm1
movq 0x2160(%rsp), %rax
movq 0x2188(%rsp), %rcx
movslq 0x384(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm2
movsd 0x11ff83(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
movsd 0x11ff6e(%rip), %xmm3   # 0x1d2248
addsd 0x2178(%rsp), %xmm3
divsd %xmm3, %xmm2
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xebc(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeac(%rcx), %rcx
movsd 0x12319e(%rip), %xmm0   # 0x1d54c8
mulsd (%rax,%rcx,8), %xmm0
movsd 0x121361(%rip), %xmm1   # 0x1d3698
divsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf8(%rax), %xmm0
movq 0x2188(%rsp), %rax
divsd 0xf0(%rax), %xmm0
movsd 0x11fee5(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movsd %xmm0, 0x28(%rsp)
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xebc(%rcx), %rcx
movsd (%rax,%rcx,8), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
callq 0x8670
movaps %xmm0, %xmm1
movsd 0x28(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xec4(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb23d9
movq 0x2188(%rsp), %rax
movswl 0x4c6(%rax), %eax
cmpl $0x1, %eax
jne 0xb24e0
movq 0x2188(%rsp), %rax
movsd 0x100(%rax), %xmm0
movsd 0x11fe3f(%rip), %xmm1   # 0x1d2248
addsd 0x2178(%rsp), %xmm1
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xea8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x2180(%rsp), %rax
movsd 0x1020(%rax), %xmm0
movsd %xmm0, 0x18(%rsp)
movsd 0x11fdf8(%rip), %xmm0   # 0x1d2248
addsd 0x2178(%rsp), %xmm0
movsd 0x13f067(%rip), %xmm1   # 0x1f14c8
divsd %xmm1, %xmm0
movq 0x2180(%rsp), %rax
movsd 0x1028(%rax), %xmm1
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x18(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2188(%rsp), %rax
mulsd 0xf8(%rax), %xmm0
movsd %xmm0, 0x20(%rsp)
movq 0x2188(%rsp), %rax
movsd 0x8(%rax), %xmm0
movsd 0x1207ce(%rip), %xmm1   # 0x1d2c80
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x20(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x2158(%rsp), %rax
movq 0x2180(%rsp), %rcx
movslq 0xeb8(%rcx), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0xb2860
movq 0x2180(%rsp), %rax
cmpl $0x3, 0x18(%rax)
jne 0xb2517
movsd 0x2178(%rsp), %xmm1
movq 0x2180(%rsp), %rax
movsd 0x120774(%rip), %xmm0   # 0x1d2c80
mulsd 0x28(%rax), %xmm0
ucomisd %xmm1, %xmm0
ja 0xb2540
movq 0x2180(%rsp), %rax
cmpl $0x5, 0x18(%rax)
jne 0xb2635
movsd 0x123f7f(%rip), %xmm0   # 0x1d64b0
ucomisd 0x2178(%rsp), %xmm0
jbe 0xb2635
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rdi
movq 0x2180(%rsp), %rax
movl 0xf08(%rax), %esi
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rdx
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %ecx
movsd 0x2178(%rsp), %xmm0
movq 0x2168(%rsp), %r8
movq 0x2158(%rsp), %r9
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %r10d
movq 0x2180(%rsp), %rax
addq $0x1064, %rax           # imm = 0x1064
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
callq 0x24bb0
cmpl $0x1, %eax
jne 0xb2630
leaq 0x1110(%rsp), %rdi
movq 0x2180(%rsp), %rcx
addq $0x1064, %rcx           # imm = 0x1064
leaq 0x11fdf7(%rip), %rsi    # 0x1d23d8
leaq 0x13f08a(%rip), %rdx    # 0x1f1672
movb $0x0, %al
callq 0x5b9c0
movq 0x2180(%rsp), %rdi
addq $0x1064, %rdi           # imm = 0x1064
leaq 0x1110(%rsp), %r8
leaq 0x11fa27(%rip), %rsi    # 0x1d2034
leaq 0x13f04a(%rip), %rdx    # 0x1f165e
movl $0xf5, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2194(%rsp)
jmp 0xb286b
jmp 0xb285e
cmpl $0x0, 0x2174(%rsp)
jne 0xb274a
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rdi
movq 0x2180(%rsp), %rax
movl 0xf08(%rax), %esi
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rdx
movq 0x2180(%rsp), %rax
movq 0xf28(%rax), %rcx
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %r8d
movsd 0x2178(%rsp), %xmm0
movq 0x2168(%rsp), %r9
movq 0x2158(%rsp), %r11
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %r10d
movq 0x2180(%rsp), %rax
addq $0x1064, %rax           # imm = 0x1064
movq %r11, (%rsp)
movl %r10d, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x24220
cmpl $0x1, %eax
jne 0xb2748
leaq 0x910(%rsp), %rdi
movq 0x2180(%rsp), %rcx
addq $0x1064, %rcx           # imm = 0x1064
leaq 0x11fcdf(%rip), %rsi    # 0x1d23d8
leaq 0x13f00d(%rip), %rdx    # 0x1f170d
movb $0x0, %al
callq 0x5b9c0
movq 0x2180(%rsp), %rdi
addq $0x1064, %rdi           # imm = 0x1064
leaq 0x910(%rsp), %r8
leaq 0x11f90f(%rip), %rsi    # 0x1d2034
leaq 0x13ef32(%rip), %rdx    # 0x1f165e
movl $0x108, %ecx            # imm = 0x108
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2194(%rsp)
jmp 0xb286b
jmp 0xb274a
cmpl $0x1, 0x2174(%rsp)
jne 0xb285c
movq 0x2180(%rsp), %rax
movq 0xf10(%rax), %rdi
movq 0x2180(%rsp), %rax
movl 0xf08(%rax), %esi
movq 0x2180(%rsp), %rax
movq 0xf20(%rax), %rdx
movq 0x2180(%rsp), %rax
movq 0xf28(%rax), %rcx
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %r8d
movsd 0x2178(%rsp), %xmm0
movq 0x2168(%rsp), %r9
movq 0x2158(%rsp), %r11
movq 0x2180(%rsp), %rax
movl 0xf04(%rax), %r10d
movq 0x2180(%rsp), %rax
addq $0x1064, %rax           # imm = 0x1064
movq %r11, (%rsp)
movl %r10d, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x27300
cmpl $0x1, %eax
jne 0xb285a
leaq 0x110(%rsp), %rdi
movq 0x2180(%rsp), %rcx
addq $0x1064, %rcx           # imm = 0x1064
leaq 0x11fbca(%rip), %rsi    # 0x1d23d8
leaq 0x13efb4(%rip), %rdx    # 0x1f17c9
movb $0x0, %al
callq 0x5b9c0
movq 0x2180(%rsp), %rdi
addq $0x1064, %rdi           # imm = 0x1064
leaq 0x110(%rsp), %r8
leaq 0x11f7fa(%rip), %rsi    # 0x1d2034
leaq 0x13ee1d(%rip), %rdx    # 0x1f165e
movl $0x118, %ecx            # imm = 0x118
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2194(%rsp)
jmp 0xb286b
jmp 0xb285c
jmp 0xb285e
jmp 0xb2860
movl $0x0, 0x2194(%rsp)
movl 0x2194(%rsp), %eax
addq $0x2198, %rsp           # imm = 0x2198
retq
nopw (%rax,%rax)