// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../source/input.c
// Function: input_try_unknown_parameters
int input_try_unknown_parameters(double * unknown_parameter,
                                 int unknown_parameters_size,
                                 void * voidpfzw,
                                 double * output,
                                 ErrorMsg errmsg){
  /** Summary */

  /** Define local variables */
  struct precision pr;        /* for precision parameters */
  struct background ba;       /* for cosmological background */
  struct thermodynamics th;           /* for thermodynamics */
  struct perturbations pt;         /* for source functions */
  struct transfer tr;        /* for transfer functions */
  struct primordial pm;       /* for primordial spectra */
  struct harmonic hr;          /* for output spectra */
  struct fourier fo;        /* for non-linear spectra */
  struct lensing le;          /* for lensed spectra */
  struct distortions sd;      /* for spectral distortions */
  struct output op;           /* for output files */

  int i;
  double rho_dcdm_today, rho_dr_today;
  struct fzerofun_workspace * pfzw;
  int input_verbose;
  int flag;
  int param;
  double ac;
  short compute_sigma8 = _FALSE_;

  /* Assume for now shooting did not fail */
  ba.shooting_failed = _FALSE_;

  pfzw = (struct fzerofun_workspace *) voidpfzw;
  /** Read input parameters */
  // This needs to be done with enough accuracy. A standard double has a relative
  // precision of around 1e-16, so 1e-20 should be good enough for the shooting
  for (i=0; i < unknown_parameters_size; i++) {
    class_sprintf(pfzw->fc.value[pfzw->unknown_parameters_index[i]],"%.20e",unknown_parameter[i]);
  }

  class_call(input_read_precisions(&(pfzw->fc),&pr,&ba,&th,&pt,&tr,&pm,&hr,&fo,&le,&sd,&op,
                                   errmsg),
             errmsg,
             errmsg);

  class_call(input_read_parameters(&(pfzw->fc),&pr,&ba,&th,&pt,&tr,&pm,&hr,&fo,&le,&sd,&op,
                                   errmsg),
             errmsg,
             errmsg);

  class_call(parser_read_int(&(pfzw->fc),"input_verbose",&param,&flag,errmsg),
             errmsg,
             errmsg);

  if (flag == _TRUE_)
    input_verbose = param;
  else
    input_verbose = 0;

  /** Optimise flags for sigma8 calculation.*/
  for (i=0; i < unknown_parameters_size; i++) {
    if (pfzw->target_name[i] == sigma8) {
      compute_sigma8 = _TRUE_;
    }
    if (pfzw->target_name[i] == S8) {
      compute_sigma8 = _TRUE_;
    }
  }

  /* Sigma8 depends on linear P(k), so no need to run anything except linear P(k) during shooting */
  if (compute_sigma8 == _TRUE_) {
    /* In June 2020 the k_max_for_pk was increased for higher precision,
       and in February 2022 the value was converted into a set of two precision parameters */
    pt.k_max_for_pk=
      MIN(MAX(pr.k_max_for_pk_sigma8_min, pt.k_max_for_pk),
          pr.k_max_for_pk_sigma8_max);
    pt.has_pk_matter=_TRUE_;
    pt.has_perturbations = _TRUE_;
    pt.has_cl_cmb_temperature = _FALSE_;
    pt.has_cls = _FALSE_;
    pt.has_cl_cmb_polarization = _FALSE_;
    pt.has_cl_cmb_lensing_potential = _FALSE_;
    pt.has_cl_number_count = _FALSE_;
    pt.has_cl_lensing_potential=_FALSE_;
    pt.has_density_transfers=_FALSE_;
    pt.has_velocity_transfers=_FALSE_;
    fo.has_pk_eq=_FALSE_;
    fo.method=nl_none;
  }

  /** Shoot forward into class up to required stage */
  if (pfzw->required_computation_stage >= cs_background){
    if (input_verbose>2)
      printf("Stage 1: background\n");
    ba.background_verbose = 0;
    class_call_except(background_init(&pr,&ba), ba.error_message, errmsg, background_free_input(&ba);thermodynamics_free_input(&th);perturbations_free_input(&pt););
  }

  if (pfzw->required_computation_stage >= cs_thermodynamics){
    if (input_verbose>2)
      printf("Stage 2: thermodynamics\n");
    pr.thermo_Nz_lin = 10000;
    pr.thermo_Nz_log = 500;
    th.thermodynamics_verbose = 0;
    th.hyrec_verbose = 0;
    class_call_except(thermodynamics_init(&pr,&ba,&th), th.error_message, errmsg, background_free(&ba);thermodynamics_free_input(&th);perturbations_free_input(&pt););
  }

  if (pfzw->required_computation_stage >= cs_perturbations){
    if (input_verbose>2)
      printf("Stage 3: perturbations\n");
    pt.perturbations_verbose = 0;
    class_call_except(perturbations_init(&pr,&ba,&th,&pt), pt.error_message, errmsg, thermodynamics_free(&th);background_free(&ba);perturbations_free_input(&pt););
  }

  if (pfzw->required_computation_stage >= cs_primordial){
    if (input_verbose>2)
      printf("Stage 4: primordial\n");
    pm.primordial_verbose = 0;
    class_call_except(primordial_init(&pr,&pt,&pm), pm.error_message, errmsg, perturbations_free(&pt);thermodynamics_free(&th);background_free(&ba));
  }

  if (pfzw->required_computation_stage >= cs_nonlinear){
    if (input_verbose>2)
      printf("Stage 5: nonlinear\n");
    fo.fourier_verbose = 0;
    class_call_except(fourier_init(&pr,&ba,&th,&pt,&pm,&fo), fo.error_message, errmsg, primordial_free(&pm);perturbations_free(&pt);thermodynamics_free(&th);background_free(&ba));
  }

  if (pfzw->required_computation_stage >= cs_transfer){
    if (input_verbose>2)
      printf("Stage 6: transfer\n");
    tr.transfer_verbose = 0;
    class_call_except(transfer_init(&pr,&ba,&th,&pt,&fo,&tr), tr.error_message, errmsg, fourier_free(&fo);primordial_free(&pm);perturbations_free(&pt);thermodynamics_free(&th);background_free(&ba));
  }

  if (pfzw->required_computation_stage >= cs_spectra){
    if (input_verbose>2)
      printf("Stage 7: spectra\n");
    hr.harmonic_verbose = 0;
    class_call_except(harmonic_init(&pr,&ba,&pt,&pm,&fo,&tr,&hr),hr.error_message, errmsg, transfer_free(&tr);fourier_free(&fo);primordial_free(&pm);perturbations_free(&pt);thermodynamics_free(&th);background_free(&ba));
  }

  /** Get the corresponding shoot variable and put into output */
  for (i=0; i < pfzw->target_size; i++) {
    switch (pfzw->target_name[i]) {
      case theta_s:
      case theta_s_100:
        output[i] = 100.*th.rs_rec/th.ra_rec-pfzw->target_value[i];
        break;
      case Neff:
        output[i] = ba.Neff-pfzw->target_value[i];
        break;
      case Omega_dcdmdr:
        rho_dcdm_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dcdm];
        if (ba.has_dr == _TRUE_)
          rho_dr_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dr];
        else
          rho_dr_today = 0.;
        output[i] = (rho_dcdm_today+rho_dr_today)/(ba.H0*ba.H0)-pfzw->target_value[i];
        break;
      case omega_dcdmdr:
        rho_dcdm_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dcdm];
        if (ba.has_dr == _TRUE_)
          rho_dr_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dr];
        else
          rho_dr_today = 0.;
        output[i] = (rho_dcdm_today+rho_dr_today)/(ba.H0*ba.H0)-pfzw->target_value[i]/ba.h/ba.h;
        break;
      case fraction_axion_ac: // TLS where to print out log10_fraction_axion_ac and axion_ac
        // output[i] = log10(ba.f_ede)-pfzw->target_value[i];
        output[i] = ba.f_ede-pfzw->target_value[i];
        if(input_verbose>10)printf("ba.f_ede %e  pfzw->target_value[i] %e output[i] %e\n", ba.f_ede,pfzw->target_value[i],output[i]);
        break;
      case log10_axion_ac:
        ac = 1./(pow(10,ba.log10_z_c)+1);
        output[i] = log10(ac)-pfzw->target_value[i];
         if(input_verbose>10)printf("ac %e  pfzw->target_value[i] %e output[i] %e\n", log10(ac),pfzw->target_value[i],output[i]);
        break;
      case log10_fraction_axion_ac_phi2n: // TLS where to print out log10_fraction_axion_ac and axion_ac
        output[i] = log10(ba.f_ede)-pfzw->target_value[i];
         // printf("ba.f_ede %e  pfzw->target_value[i] %e output[i] %e\n", log10(ba.f_ede),pfzw->target_value[i],output[i]);
        break;
      case Omega_scf_shoot_fa:
         output[i] = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0)
          -ba.Omega0_scf;
        pfzw->target_value[i] = ba.Omega0_scf;
        if(input_verbose>10){
            printf("Shooting in f_a for Omega_ax \n");
            printf("f_axion: %e\n", ba.f_axion);
            printf("rho_ax / rho_crit: %e\n",ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0));
            printf("distance away from target: %e\n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0) - ba.Omega0_scf);
          }
        break;
      case log10_axion_ac_phi2n:
        ac = 1./(pow(10,ba.log10_z_c)+1);
        output[i] = log10(ac)-pfzw->target_value[i];
         // printf("ac %e  pfzw->target_value[i] %e output[i] %e\n", log10(ac),pfzw->target_value[i],output[i]);
        break;

      case Omega_scf:
        /** - In case scalar field is used to fill, pba->Omega0_scf is not equal to pfzw->target_value[i].*/
      /*cjcomment is this the value of energy density used for matching in shooting? */
      /*COComment This must be updated to use value of rho from fluid equation */
        output[i] = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0)
          -ba.Omega0_scf;
        pfzw->target_value[i] = ba.Omega0_scf;
          // printf("output[i] for scalar field %e \n", output[i]);
          // COComment Old print statements for scalar field, not relevant now using fluid equations as phi no longer evolves to end
          // printf("Made up of minus : %e \n", -ba.Omega0_scf);
          // printf("background table [] %e where bt_size = %e, bg_size = %e and index_bg_rho_scf = %e \n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf],ba.bt_size,ba.bg_size,ba.index_bg_rho_scf);
          // printf("backgroundtable[] / H0^2 = %e \n ", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0));
          if(input_verbose>10){
            printf("Where does the code end up? \n");
            printf("rho_ax / rho_crit: %e\n",ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0));
            printf("distance away from target: %e\n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_scf]/(ba.H0*ba.H0) - ba.Omega0_scf);
          }
          // printf("phi: %e\n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_phi_scf]);
          // printf("phidot: %e\n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_phi_prime_scf]);
          // printf("K.E (not divided by a, as a=1?): %e\n", ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_phi_prime_scf]*ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_phi_prime_scf]/2);
          // printf("potential: %e\n",ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_V_scf]);


        break;
      case Omega_ini_dcdm:
      case omega_ini_dcdm:
        rho_dcdm_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dcdm];

        if (ba.has_dr == _TRUE_)
          rho_dr_today = ba.background_table[(ba.bt_size-1)*ba.bg_size+ba.index_bg_rho_dr];
        else
          rho_dr_today = 0.;
        output[i] = -(rho_dcdm_today+rho_dr_today)/(ba.H0*ba.H0)+ba.Omega0_dcdmdr;
        break;
      case a_peak_eq:
        output[i] = ba.a_peak-ba.a_eq;
        if(input_verbose>2) printf("a_peak from bg = %e \t a_peak - a_eq = %e\n", ba.a_peak, output[i]);
        break;
      case sigma8:
        output[i] = fo.sigma8[fo.index_pk_m];
        break;
      case S8:
        output[i] = fo.sigma8[fo.index_pk_m]*sqrt(ba.Omega0_m/0.3);
        break;
    }
  }

  /** Free structures */
  if (pfzw->required_computation_stage >= cs_spectra){
    class_call(harmonic_free(&hr), hr.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_transfer){
    class_call(transfer_free(&tr), tr.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_nonlinear){
    class_call(fourier_free(&fo), fo.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_primordial){
    class_call(primordial_free(&pm), pm.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_perturbations){
    class_call(perturbations_free(&pt), pt.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_thermodynamics){
    class_call(thermodynamics_free(&th), th.error_message, errmsg);
  }
  if (pfzw->required_computation_stage >= cs_background){
    class_call(background_free(&ba), ba.error_message, errmsg);
  }

  /** Set filecontent to unread */
  for (i=0; i<pfzw->fc.size; i++) {
    pfzw->fc.read[i] = _FALSE_;
  }

  /** Free pointers allocated on input if neccessary */
  if (pfzw->required_computation_stage < cs_perturbations) {
    /** Some pointers in ppt may not be allocated if has_perturbations is _FALSE_, but this is handled in perturbations_free_input as neccessary. */
    perturbations_free_input(&pt);
  }
  if (pfzw->required_computation_stage < cs_thermodynamics) {
    thermodynamics_free_input(&th);
  }
  if (pfzw->required_computation_stage < cs_background) {
    background_free_input(&ba);
  }
  return _SUCCESS_;

}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x19f28, %rsp          # imm = 0x19F28
movq %rdi, 0x19f18(%rsp)
movl %esi, 0x19f14(%rsp)
movq %rdx, 0x19f08(%rsp)
movq %rcx, 0x19f00(%rsp)
movq %r8, 0x19ef8(%rsp)
movw $0x0, 0x886e(%rsp)
movw $0x0, 0x17cc0(%rsp)
movq 0x19f08(%rsp), %rax
movq %rax, 0x8888(%rsp)
movl $0x0, 0x88a4(%rsp)
movl 0x88a4(%rsp), %eax
cmpl 0x19f14(%rsp), %eax
jge 0x70ced
jmp 0x70c4a
movq 0x19f18(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm0
xorl %eax, %eax
movl %eax, %esi
leaq 0x163731(%rip), %rdx    # 0x1d439b
movq %rsi, %rdi
movb $0x1, %al
callq 0x8540
movl %eax, 0x8868(%rsp)
movq 0x8888(%rsp), %rax
movq 0x20(%rax), %rdi
movq 0x8888(%rsp), %rax
movq (%rax), %rax
movslq 0x88a4(%rsp), %rcx
movslq (%rax,%rcx,4), %rax
shlq $0xa, %rax
addq %rax, %rdi
movl 0x8868(%rsp), %eax
addl $0x1, %eax
movslq %eax, %rsi
movq 0x19f18(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm0
leaq 0x1636cd(%rip), %rdx    # 0x1d439b
movb $0x1, %al
callq 0x8540
jmp 0x70cd7
movl 0x88a4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x88a4(%rsp)
jmp 0x70c34
movq 0x8888(%rsp), %rdi
addq $0x8, %rdi
movq 0x19ef8(%rsp), %rax
leaq 0x18cc8(%rsp), %rsi
leaq 0x177a8(%rsp), %rdx
leaq 0x15f40(%rsp), %rcx
leaq 0xeab0(%rsp), %r8
leaq 0xd940(%rsp), %r9
leaq 0xcdf0(%rsp), %r12
leaq 0xc500(%rsp), %r15
leaq 0xbb68(%rsp), %r14
leaq 0xb2d0(%rsp), %rbx
leaq 0x94c8(%rsp), %r11
leaq 0x88a8(%rsp), %r10
movq %r12, (%rsp)
movq %r15, 0x8(%rsp)
movq %r14, 0x10(%rsp)
movq %rbx, 0x18(%rsp)
movq %r11, 0x20(%rsp)
movq %r10, 0x28(%rsp)
movq %rax, 0x30(%rsp)
callq 0x5e490
cmpl $0x1, %eax
jne 0x70de4
leaq 0x8060(%rsp), %rdi
movq 0x19ef8(%rsp), %rcx
leaq 0x16163c(%rip), %rsi    # 0x1d23d8
leaq 0x16741f(%rip), %rdx    # 0x1d81c2
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x8060(%rsp), %r8
leaq 0x161273(%rip), %rsi    # 0x1d2034
leaq 0x167611(%rip), %rdx    # 0x1d83d9
movl $0x775, %ecx            # imm = 0x775
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
movq 0x8888(%rsp), %rdi
addq $0x8, %rdi
movq 0x19ef8(%rsp), %rax
leaq 0x18cc8(%rsp), %rsi
leaq 0x177a8(%rsp), %rdx
leaq 0x15f40(%rsp), %rcx
leaq 0xeab0(%rsp), %r8
leaq 0xd940(%rsp), %r9
leaq 0xcdf0(%rsp), %r12
leaq 0xc500(%rsp), %r15
leaq 0xbb68(%rsp), %r14
leaq 0xb2d0(%rsp), %rbx
leaq 0x94c8(%rsp), %r11
leaq 0x88a8(%rsp), %r10
movq %r12, (%rsp)
movq %r15, 0x8(%rsp)
movq %r14, 0x10(%rsp)
movq %rbx, 0x18(%rsp)
movq %r11, 0x20(%rsp)
movq %r10, 0x28(%rsp)
movq %rax, 0x30(%rsp)
callq 0x6c0f0
cmpl $0x1, %eax
jne 0x70edb
leaq 0x7860(%rsp), %rdi
movq 0x19ef8(%rsp), %rcx
leaq 0x161545(%rip), %rsi    # 0x1d23d8
leaq 0x16738f(%rip), %rdx    # 0x1d8229
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x7860(%rsp), %r8
leaq 0x16117c(%rip), %rsi    # 0x1d2034
leaq 0x16751a(%rip), %rdx    # 0x1d83d9
movl $0x77a, %ecx            # imm = 0x77A
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
movq 0x8888(%rsp), %rdi
addq $0x8, %rdi
movq 0x19ef8(%rsp), %r8
leaq 0x165ece(%rip), %rsi    # 0x1d6dc4
leaq 0x887c(%rsp), %rdx
leaq 0x8880(%rsp), %rcx
callq 0x38300
cmpl $0x1, %eax
jne 0x70f6f
leaq 0x7060(%rsp), %rdi
movq 0x19ef8(%rsp), %rcx
leaq 0x1614b1(%rip), %rsi    # 0x1d23d8
leaq 0x1674c8(%rip), %rdx    # 0x1d83f6
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x7060(%rsp), %r8
leaq 0x1610e8(%rip), %rsi    # 0x1d2034
leaq 0x167486(%rip), %rdx    # 0x1d83d9
movl $0x77e, %ecx            # imm = 0x77E
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
cmpl $0x1, 0x8880(%rsp)
jne 0x70f89
movl 0x887c(%rsp), %eax
movl %eax, 0x8884(%rsp)
jmp 0x70f94
movl $0x0, 0x8884(%rsp)
movl $0x0, 0x88a4(%rsp)
movl 0x88a4(%rsp), %eax
cmpl 0x19f14(%rsp), %eax
jge 0x7100c
movq 0x8888(%rsp), %rax
movq 0x30(%rax), %rax
movslq 0x88a4(%rsp), %rcx
cmpl $0xe, (%rax,%rcx,4)
jne 0x70fd3
movw $0x1, 0x886e(%rsp)
movq 0x8888(%rsp), %rax
movq 0x30(%rax), %rax
movslq 0x88a4(%rsp), %rcx
cmpl $0xf, (%rax,%rcx,4)
jne 0x70ff7
movw $0x1, 0x886e(%rsp)
jmp 0x70ff9
movl 0x88a4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x88a4(%rsp)
jmp 0x70f9f
movswl 0x886e(%rsp), %eax
cmpl $0x1, %eax
jne 0x71147
movsd 0x19508(%rsp), %xmm1
movsd 0xeb08(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x71046
movsd 0xeb08(%rsp), %xmm0
movsd %xmm0, 0x58(%rsp)
jmp 0x71055
movsd 0x19508(%rsp), %xmm0
movsd %xmm0, 0x58(%rsp)
movsd 0x58(%rsp), %xmm1
movsd 0x19510(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x710b0
movsd 0x19508(%rsp), %xmm1
movsd 0xeb08(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x71093
movsd 0xeb08(%rsp), %xmm0
movsd %xmm0, 0x50(%rsp)
jmp 0x710a2
movsd 0x19508(%rsp), %xmm0
movsd %xmm0, 0x50(%rsp)
movsd 0x50(%rsp), %xmm0
movsd %xmm0, 0x48(%rsp)
jmp 0x710bf
movsd 0x19510(%rsp), %xmm0
movsd %xmm0, 0x48(%rsp)
movsd 0x48(%rsp), %xmm0
movsd %xmm0, 0xeb08(%rsp)
movw $0x1, 0xeae2(%rsp)
movw $0x1, 0xeab0(%rsp)
movw $0x0, 0xead8(%rsp)
movw $0x0, 0xeabc(%rsp)
movw $0x0, 0xeada(%rsp)
movw $0x0, 0xeadc(%rsp)
movw $0x0, 0xeae0(%rsp)
movw $0x0, 0xeade(%rsp)
movw $0x0, 0xeae4(%rsp)
movw $0x0, 0xeae6(%rsp)
movw $0x0, 0xbb90(%rsp)
movl $0x0, 0xbb68(%rsp)
movq 0x8888(%rsp), %rax
cmpl $0x0, 0x44(%rax)
jb 0x71228
cmpl $0x2, 0x8884(%rsp)
jle 0x71171
leaq 0x1672cd(%rip), %rdi    # 0x1d8437
movb $0x0, %al
callq 0x8030
movw $0x0, 0x184c2(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
callq 0xa2940
cmpl $0x1, %eax
jne 0x71226
leaq 0x6860(%rsp), %rdi
leaq 0x177a8(%rsp), %rcx
addq $0xd1c, %rcx            # imm = 0xD1C
leaq 0x161221(%rip), %rsi    # 0x1d23d8
leaq 0x16728e(%rip), %rdx    # 0x1d844c
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x6860(%rsp), %r8
leaq 0x160e58(%rip), %rsi    # 0x1d2034
leaq 0x1671f6(%rip), %rdx    # 0x1d83d9
movl $0x7a9, %ecx            # imm = 0x7A9
movb $0x0, %al
callq 0x5b9c0
leaq 0x177a8(%rsp), %rdi
callq 0xa9070
leaq 0x15f40(%rsp), %rdi
callq 0xbacb0
leaq 0xeab0(%rsp), %rdi
callq 0xd1ad0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71228
movq 0x8888(%rsp), %rax
cmpl $0x1, 0x44(%rax)
jb 0x71331
cmpl $0x2, 0x8884(%rsp)
jle 0x71252
leaq 0x16721a(%rip), %rdi    # 0x1d8465
movb $0x0, %al
callq 0x8030
movl $0x2710, 0x18e70(%rsp) # imm = 0x2710
movl $0x1f4, 0x18e74(%rsp) # imm = 0x1F4
movw $0x0, 0x16fa0(%rsp)
movw $0x0, 0x16fa2(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
leaq 0x15f40(%rsp), %rdx
callq 0xb2880
cmpl $0x1, %eax
jne 0x7132f
leaq 0x6060(%rsp), %rdi
leaq 0x15f40(%rsp), %rcx
addq $0x1064, %rcx           # imm = 0x1064
leaq 0x161118(%rip), %rsi    # 0x1d23d8
leaq 0x1671b7(%rip), %rdx    # 0x1d847e
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x6060(%rsp), %r8
leaq 0x160d4f(%rip), %rsi    # 0x1d2034
leaq 0x1670ed(%rip), %rdx    # 0x1d83d9
movl $0x7b3, %ecx            # imm = 0x7B3
movb $0x0, %al
callq 0x5b9c0
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
leaq 0x15f40(%rsp), %rdi
callq 0xbacb0
leaq 0xeab0(%rsp), %rdi
callq 0xd1ad0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71331
movq 0x8888(%rsp), %rax
cmpl $0x2, 0x44(%rax)
jb 0x71422
cmpl $0x2, 0x8884(%rsp)
jle 0x7135b
leaq 0x16714b(%rip), %rdi    # 0x1d849f
movb $0x0, %al
callq 0x8030
movw $0x0, 0x15738(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
leaq 0x15f40(%rsp), %rdx
leaq 0xeab0(%rsp), %rcx
callq 0xca790
cmpl $0x1, %eax
jne 0x71420
leaq 0x5860(%rsp), %rdi
leaq 0xeab0(%rsp), %rcx
addq $0x6c8a, %rcx           # imm = 0x6C8A
leaq 0x161027(%rip), %rsi    # 0x1d23d8
leaq 0x1670ff(%rip), %rdx    # 0x1d84b7
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x5860(%rsp), %r8
leaq 0x160c5e(%rip), %rsi    # 0x1d2034
leaq 0x166ffc(%rip), %rdx    # 0x1d83d9
movl $0x7ba, %ecx            # imm = 0x7BA
movb $0x0, %al
callq 0x5b9c0
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
leaq 0xeab0(%rsp), %rdi
callq 0xd1ad0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71422
movq 0x8888(%rsp), %rax
cmpl $0x3, 0x44(%rax)
jb 0x7150b
cmpl $0x2, 0x8884(%rsp)
jle 0x7144c
leaq 0x167096(%rip), %rdi    # 0x1d84db
movb $0x0, %al
callq 0x8030
movw $0x0, 0xd118(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0xeab0(%rsp), %rsi
leaq 0xcdf0(%rsp), %rdx
callq 0x111d00
cmpl $0x1, %eax
jne 0x71509
leaq 0x5060(%rsp), %rdi
leaq 0xcdf0(%rsp), %rcx
addq $0x32a, %rcx            # imm = 0x32A
leaq 0x160f3e(%rip), %rsi    # 0x1d23d8
leaq 0x16704f(%rip), %rdx    # 0x1d84f0
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x5060(%rsp), %r8
leaq 0x160b75(%rip), %rsi    # 0x1d2034
leaq 0x166f13(%rip), %rdx    # 0x1d83d9
movl $0x7c1, %ecx            # imm = 0x7C1
movb $0x0, %al
callq 0x5b9c0
leaq 0xeab0(%rsp), %rdi
callq 0xd1b20
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x7150b
movq 0x8888(%rsp), %rax
cmpl $0x4, 0x44(%rax)
jb 0x71619
cmpl $0x2, 0x8884(%rsp)
jle 0x71535
leaq 0x166fdf(%rip), %rdi    # 0x1d850d
movb $0x0, %al
callq 0x8030
movw $0x0, 0xbcf8(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
leaq 0x15f40(%rsp), %rdx
leaq 0xeab0(%rsp), %rcx
leaq 0xcdf0(%rsp), %r8
leaq 0xbb68(%rsp), %r9
callq 0x128e40
cmpl $0x1, %eax
jne 0x71617
leaq 0x4860(%rsp), %rdi
leaq 0xbb68(%rsp), %rcx
addq $0x192, %rcx            # imm = 0x192
leaq 0x160e3d(%rip), %rsi    # 0x1d23d8
leaq 0x166f7f(%rip), %rdx    # 0x1d8521
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x4860(%rsp), %r8
leaq 0x160a74(%rip), %rsi    # 0x1d2034
leaq 0x166e12(%rip), %rdx    # 0x1d83d9
movl $0x7c8, %ecx            # imm = 0x7C8
movb $0x0, %al
callq 0x5b9c0
leaq 0xcdf0(%rsp), %rdi
callq 0x115f20
leaq 0xeab0(%rsp), %rdi
callq 0xd1b20
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71619
movq 0x8888(%rsp), %rax
cmpl $0x5, 0x44(%rax)
jb 0x71734
cmpl $0x2, 0x8884(%rsp)
jle 0x71643
leaq 0x166f0b(%rip), %rdi    # 0x1d8547
movb $0x0, %al
callq 0x8030
movw $0x0, 0xe2a8(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
leaq 0x15f40(%rsp), %rdx
leaq 0xeab0(%rsp), %rcx
leaq 0xbb68(%rsp), %r8
leaq 0xd940(%rsp), %r9
callq 0x12fd70
cmpl $0x1, %eax
jne 0x71732
leaq 0x4060(%rsp), %rdi
leaq 0xd940(%rsp), %rcx
addq $0x96a, %rcx            # imm = 0x96A
leaq 0x160d2f(%rip), %rsi    # 0x1d23d8
leaq 0x166eaa(%rip), %rdx    # 0x1d855a
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x4060(%rsp), %r8
leaq 0x160966(%rip), %rsi    # 0x1d2034
leaq 0x166d04(%rip), %rdx    # 0x1d83d9
movl $0x7cf, %ecx            # imm = 0x7CF
movb $0x0, %al
callq 0x5b9c0
leaq 0xbb68(%rsp), %rdi
callq 0x12e4a0
leaq 0xcdf0(%rsp), %rdi
callq 0x115f20
leaq 0xeab0(%rsp), %rdi
callq 0xd1b20
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71734
movq 0x8888(%rsp), %rax
cmpl $0x6, 0x44(%rax)
jb 0x71868
cmpl $0x2, 0x8884(%rsp)
jle 0x7175e
leaq 0x166e2a(%rip), %rdi    # 0x1d8581
movb $0x0, %al
callq 0x8030
movw $0x0, 0xc5e8(%rsp)
leaq 0x18cc8(%rsp), %rdi
leaq 0x177a8(%rsp), %rsi
leaq 0xeab0(%rsp), %rdx
leaq 0xcdf0(%rsp), %rcx
leaq 0xbb68(%rsp), %r8
leaq 0xd940(%rsp), %r9
leaq 0xc500(%rsp), %rax
movq %rax, (%rsp)
callq 0x14d2c0
cmpl $0x1, %eax
jne 0x71866
leaq 0x3860(%rsp), %rdi
leaq 0xc500(%rsp), %rcx
addq $0xea, %rcx
leaq 0x160c08(%rip), %rsi    # 0x1d23d8
leaq 0x166dbc(%rip), %rdx    # 0x1d8593
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x3860(%rsp), %r8
leaq 0x16083f(%rip), %rsi    # 0x1d2034
leaq 0x166bdd(%rip), %rdx    # 0x1d83d9
movl $0x7d6, %ecx            # imm = 0x7D6
movb $0x0, %al
callq 0x5b9c0
leaq 0xd940(%rsp), %rdi
callq 0x1379e0
leaq 0xbb68(%rsp), %rdi
callq 0x12e4a0
leaq 0xcdf0(%rsp), %rdi
callq 0x115f20
leaq 0xeab0(%rsp), %rdi
callq 0xd1b20
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x71868
movl $0x0, 0x88a4(%rsp)
movl 0x88a4(%rsp), %eax
movq 0x8888(%rsp), %rcx
cmpl 0x40(%rcx), %eax
jge 0x721aa
movq 0x8888(%rsp), %rax
movq 0x30(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movl (%rax,%rcx,4), %eax
movq %rax, 0x40(%rsp)
subq $0xf, %rax
ja 0x72192
movq 0x40(%rsp), %rax
leaq 0x164fb3(%rip), %rcx    # 0x1d6870
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movsd 0x16138a(%rip), %xmm0   # 0x1d2c58
mulsd 0x16e80(%rsp), %xmm0
divsd 0x16e90(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movsd 0x17ad0(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b5c(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8898(%rsp)
movswl 0x17c62(%rsp), %eax
cmpl $0x1, %eax
jne 0x719c2
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b60(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8890(%rsp)
jmp 0x719ce
xorps %xmm0, %xmm0
movsd %xmm0, 0x8890(%rsp)
movsd 0x8898(%rsp), %xmm0
addsd 0x8890(%rsp), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b5c(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8898(%rsp)
movswl 0x17c62(%rsp), %eax
cmpl $0x1, %eax
jne 0x71a9c
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b60(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8890(%rsp)
jmp 0x71aa8
xorps %xmm0, %xmm0
movsd %xmm0, 0x8890(%rsp)
movsd 0x8898(%rsp), %xmm0
addsd 0x8890(%rsp), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm1
divsd 0x177b0(%rsp), %xmm1
divsd 0x177b0(%rsp), %xmm1
subsd %xmm1, %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movsd 0x179a8(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
cmpl $0xa, 0x8884(%rsp)
jle 0x71b9f
movsd 0x179a8(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm1
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm2
leaq 0x166a26(%rip), %rdi    # 0x1d85be
movb $0x3, %al
callq 0x8030
jmp 0x72192
movsd 0x17998(%rsp), %xmm1
movsd 0x160c2b(%rip), %xmm0   # 0x1d27e0
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x160683(%rip), %xmm0   # 0x1d2248
addsd %xmm0, %xmm1
movsd 0x160677(%rip), %xmm0   # 0x1d2248
divsd %xmm1, %xmm0
movsd %xmm0, 0x8870(%rsp)
movsd 0x8870(%rsp), %xmm0
callq 0x81e0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
cmpl $0xa, 0x8884(%rsp)
jle 0x71c6e
movsd 0x8870(%rsp), %xmm0
callq 0x81e0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm1
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm2
leaq 0x16698b(%rip), %rdi    # 0x1d85f2
movb $0x3, %al
callq 0x8030
jmp 0x72192
movsd 0x179a8(%rsp), %xmm0
callq 0x81e0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
subsd 0x178d0(%rsp), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
movsd 0x178d0(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
cmpl $0xa, 0x8884(%rsp)
jle 0x71e09
leaq 0x1668d8(%rip), %rdi    # 0x1d8620
movb $0x0, %al
callq 0x8030
movsd 0x17938(%rsp), %xmm0
leaq 0x1668e0(%rip), %rdi    # 0x1d863f
movb $0x1, %al
callq 0x8030
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
leaq 0x1668a0(%rip), %rdi    # 0x1d864c
movb $0x1, %al
callq 0x8030
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
subsd 0x178d0(%rsp), %xmm0
leaq 0x166861(%rip), %rdi    # 0x1d8663
movb $0x1, %al
callq 0x8030
jmp 0x72192
movsd 0x17998(%rsp), %xmm1
movsd 0x1609c1(%rip), %xmm0   # 0x1d27e0
callq 0x8610
movaps %xmm0, %xmm1
movsd 0x160419(%rip), %xmm0   # 0x1d2248
addsd %xmm0, %xmm1
movsd 0x16040d(%rip), %xmm0   # 0x1d2248
divsd %xmm1, %xmm0
movsd %xmm0, 0x8870(%rsp)
movsd 0x8870(%rsp), %xmm0
callq 0x81e0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
subsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
subsd 0x178d0(%rsp), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
movsd 0x178d0(%rsp), %xmm0
movq 0x8888(%rsp), %rax
movq 0x38(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
cmpl $0xa, 0x8884(%rsp)
jle 0x71fc7
leaq 0x166765(%rip), %rdi    # 0x1d8682
movb $0x0, %al
callq 0x8030
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
leaq 0x1666e2(%rip), %rdi    # 0x1d864c
movb $0x1, %al
callq 0x8030
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b78(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
subsd 0x178d0(%rsp), %xmm0
leaq 0x1666a3(%rip), %rdi    # 0x1d8663
movb $0x1, %al
callq 0x8030
jmp 0x72192
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b5c(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8898(%rsp)
movswl 0x17c62(%rsp), %eax
cmpl $0x1, %eax
jne 0x7203f
movq 0x17c08(%rsp), %rax
movl 0x17be8(%rsp), %ecx
subl $0x1, %ecx
imull 0x17be4(%rsp), %ecx
addl 0x17b60(%rsp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x8890(%rsp)
jmp 0x7204b
xorps %xmm0, %xmm0
movsd %xmm0, 0x8890(%rsp)
movsd 0x8898(%rsp), %xmm0
addsd 0x8890(%rsp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x177a8(%rsp), %xmm1
mulsd 0x177a8(%rsp), %xmm1
divsd %xmm1, %xmm0
addsd 0x178b0(%rsp), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movsd 0x17860(%rsp), %xmm0
subsd 0x17b08(%rsp), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
cmpl $0x2, 0x8884(%rsp)
jle 0x7210a
movsd 0x17860(%rsp), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm1
leaq 0x16659d(%rip), %rdi    # 0x1d86a0
movb $0x2, %al
callq 0x8030
jmp 0x72192
movq 0xbc30(%rsp), %rax
movslq 0xbbbc(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72192
movq 0xbc30(%rsp), %rax
movslq 0xbbbc(%rsp), %rcx
movsd (%rax,%rcx,8), %xmm0
movsd %xmm0, 0x38(%rsp)
movsd 0x17ae8(%rsp), %xmm0
movsd 0x160121(%rip), %xmm1   # 0x1d2288
divsd %xmm1, %xmm0
callq 0x82e0
movaps %xmm0, %xmm1
movsd 0x38(%rsp), %xmm0
mulsd %xmm1, %xmm0
movq 0x19f00(%rsp), %rax
movslq 0x88a4(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x72194
movl 0x88a4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x88a4(%rsp)
jmp 0x71873
movq 0x8888(%rsp), %rax
cmpl $0x6, 0x44(%rax)
jb 0x72232
leaq 0xc500(%rsp), %rdi
callq 0x14f9a0
cmpl $0x1, %eax
jne 0x72230
leaq 0x3060(%rsp), %rdi
leaq 0xc500(%rsp), %rcx
addq $0xea, %rcx
leaq 0x1601f0(%rip), %rsi    # 0x1d23d8
leaq 0x1664db(%rip), %rdx    # 0x1d86ca
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x3060(%rsp), %r8
leaq 0x15fe27(%rip), %rsi    # 0x1d2034
leaq 0x1661c5(%rip), %rdx    # 0x1d83d9
movl $0x843, %ecx            # imm = 0x843
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x72232
movq 0x8888(%rsp), %rax
cmpl $0x5, 0x44(%rax)
jb 0x722ba
leaq 0xd940(%rsp), %rdi
callq 0x1379e0
cmpl $0x1, %eax
jne 0x722b8
leaq 0x2860(%rsp), %rdi
leaq 0xd940(%rsp), %rcx
addq $0x96a, %rcx            # imm = 0x96A
leaq 0x160168(%rip), %rsi    # 0x1d23d8
leaq 0x166466(%rip), %rdx    # 0x1d86dd
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x2860(%rsp), %r8
leaq 0x15fd9f(%rip), %rsi    # 0x1d2034
leaq 0x16613d(%rip), %rdx    # 0x1d83d9
movl $0x846, %ecx            # imm = 0x846
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x722ba
movq 0x8888(%rsp), %rax
cmpl $0x4, 0x44(%rax)
jb 0x72342
leaq 0xbb68(%rsp), %rdi
callq 0x12e4a0
cmpl $0x1, %eax
jne 0x72340
leaq 0x2060(%rsp), %rdi
leaq 0xbb68(%rsp), %rcx
addq $0x192, %rcx            # imm = 0x192
leaq 0x1600e0(%rip), %rsi    # 0x1d23d8
leaq 0x1663f1(%rip), %rdx    # 0x1d86f0
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x2060(%rsp), %r8
leaq 0x15fd17(%rip), %rsi    # 0x1d2034
leaq 0x1660b5(%rip), %rdx    # 0x1d83d9
movl $0x849, %ecx            # imm = 0x849
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x72342
movq 0x8888(%rsp), %rax
cmpl $0x3, 0x44(%rax)
jb 0x723ca
leaq 0xcdf0(%rsp), %rdi
callq 0x115f20
cmpl $0x1, %eax
jne 0x723c8
leaq 0x1860(%rsp), %rdi
leaq 0xcdf0(%rsp), %rcx
addq $0x32a, %rcx            # imm = 0x32A
leaq 0x160058(%rip), %rsi    # 0x1d23d8
leaq 0x16637b(%rip), %rdx    # 0x1d8702
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x1860(%rsp), %r8
leaq 0x15fc8f(%rip), %rsi    # 0x1d2034
leaq 0x16602d(%rip), %rdx    # 0x1d83d9
movl $0x84c, %ecx            # imm = 0x84C
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x723ca
movq 0x8888(%rsp), %rax
cmpl $0x2, 0x44(%rax)
jb 0x72452
leaq 0xeab0(%rsp), %rdi
callq 0xd1b20
cmpl $0x1, %eax
jne 0x72450
leaq 0x1060(%rsp), %rdi
leaq 0xeab0(%rsp), %rcx
addq $0x6c8a, %rcx           # imm = 0x6C8A
leaq 0x15ffd0(%rip), %rsi    # 0x1d23d8
leaq 0x166308(%rip), %rdx    # 0x1d8717
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x1060(%rsp), %r8
leaq 0x15fc07(%rip), %rsi    # 0x1d2034
leaq 0x165fa5(%rip), %rdx    # 0x1d83d9
movl $0x84f, %ecx            # imm = 0x84F
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x72452
movq 0x8888(%rsp), %rax
cmpl $0x1, 0x44(%rax)
jb 0x724da
leaq 0x15f40(%rsp), %rdi
callq 0xbab10
cmpl $0x1, %eax
jne 0x724d8
leaq 0x860(%rsp), %rdi
leaq 0x15f40(%rsp), %rcx
addq $0x1064, %rcx           # imm = 0x1064
leaq 0x15ff48(%rip), %rsi    # 0x1d23d8
leaq 0x166298(%rip), %rdx    # 0x1d872f
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x860(%rsp), %r8
leaq 0x15fb7f(%rip), %rsi    # 0x1d2034
leaq 0x165f1d(%rip), %rdx    # 0x1d83d9
movl $0x852, %ecx            # imm = 0x852
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x724da
movq 0x8888(%rsp), %rax
cmpl $0x0, 0x44(%rax)
jb 0x7255c
leaq 0x177a8(%rsp), %rdi
callq 0xa8ec0
cmpl $0x1, %eax
jne 0x7255a
leaq 0x60(%rsp), %rdi
leaq 0x177a8(%rsp), %rcx
addq $0xd1c, %rcx            # imm = 0xD1C
leaq 0x15fec3(%rip), %rsi    # 0x1d23d8
leaq 0x16622c(%rip), %rdx    # 0x1d8748
movb $0x0, %al
callq 0x5b9c0
movq 0x19ef8(%rsp), %rdi
leaq 0x60(%rsp), %r8
leaq 0x15fafd(%rip), %rsi    # 0x1d2034
leaq 0x165e9b(%rip), %rdx    # 0x1d83d9
movl $0x855, %ecx            # imm = 0x855
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x19f24(%rsp)
jmp 0x72604
jmp 0x7255c
movl $0x0, 0x88a4(%rsp)
movl 0x88a4(%rsp), %eax
movq 0x8888(%rsp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x725a8
movq 0x8888(%rsp), %rax
movq 0x28(%rax), %rax
movslq 0x88a4(%rsp), %rcx
movw $0x0, (%rax,%rcx,2)
movl 0x88a4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x88a4(%rsp)
jmp 0x72567
movq 0x8888(%rsp), %rax
cmpl $0x2, 0x44(%rax)
jae 0x725c3
leaq 0xeab0(%rsp), %rdi
callq 0xd1ad0
movq 0x8888(%rsp), %rax
cmpl $0x1, 0x44(%rax)
jae 0x725de
leaq 0x15f40(%rsp), %rdi
callq 0xbacb0
movq 0x8888(%rsp), %rax
cmpl $0x0, 0x44(%rax)
jae 0x725f9
leaq 0x177a8(%rsp), %rdi
callq 0xa9070
movl $0x0, 0x19f24(%rsp)
movl 0x19f24(%rsp), %eax
addq $0x19f28, %rsp          # imm = 0x19F28
popq %rbx
popq %r12
popq %r14
popq %r15
retq
nopw (%rax,%rax)