// File: /workspace/github_c_makefile_star2_O2/PoulinV[P]AxiCLASS/build/../external/HyRec2020/history.c
// Function: rec_get_cosmoparam
void rec_get_cosmoparam(FILE *fin, FILE *fout, REC_COSMOPARAMS *param) {
  double Omega_b, Omega_cb, Omega_k, y, Tnu0;
  int i;
  if (fout!=NULL) fprintf(fout, "Enter Hubble parameter (h) : \n");
  if(fscanf(fin, "%lg", &(param->h))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'h'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter CMB temperature today [Kelvin]: \n");
  if(fscanf(fin, "%lg", &(param->T0))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'CMB temperature today [Kelvin]'\n");exit(1);};

  if (fout!=NULL) fprintf(fout, "Enter baryon density, Omega_b: \n");
  if(fscanf(fin, "%lg", &(Omega_b))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Omega_b'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter matter (CDM+baryons) density, Omega_cb: \n");
  if(fscanf(fin, "%lg", &(Omega_cb))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Omega_cb'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter curvature, Omega_k: \n");
  if(fscanf(fin, "%lg", &(Omega_k))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Omega_k'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter dark energy equation of state parameters, w wa: ");
  if(fscanf(fin, "%lg %lg", &(param->w0), &(param->wa))!=2){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameters 'w wa'\n");exit(1);};

  if (fout!=NULL) fprintf(fout, "Enter number of massive neutrino species, Nmnu: \n");
  if(fscanf(fin, "%lg", &(param->Nmnu))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Nmnu'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter mass of neutrino1, mnu: \n");
  if(fscanf(fin, "%lg", &(param->mnu[0]))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'mnu1'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter mass of neutrino2, mnu: \n");
  if(fscanf(fin, "%lg", &(param->mnu[1]))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'mnu2'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter mass of neutrino3, mnu: \n");
  if(fscanf(fin, "%lg", &(param->mnu[2]))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'mnu3'\n");exit(1);};

  if (fout!=NULL) fprintf(fout, "Enter primordial helium mass fraction, Y: \n");
  if(fscanf(fin, "%lg", &(param->YHe))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Y'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "Enter total effective number of neutrino species, N_eff: \n");
  if(fscanf(fin, "%lg", &(param->Neff))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'N_eff'\n");exit(1);};

  if (fout!=NULL) fprintf(fout, "ratio of fine structure constant at recombination to today's value, fsR: \n");
  if(fscanf(fin, "%lg", &(param->fsR))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'fsR'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ratio of electron mass at recombination to today's value, meR: \n");
  if(fscanf(fin, "%lg", &(param->meR))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'meR'\n");exit(1);};

  param->Nur = param->Neff - param->Nmnu;
  param->orh2  = 4.48162687719e-7 *param->T0*param->T0*param->T0*param->T0 *(1. + 0.227107317660239 *param->Nur);
  param->ocbh2  = Omega_cb *param->h*param->h;
  param->obh2  = Omega_b *param->h*param->h;
  param->okh2  = Omega_k *param->h*param->h;

  Tnu0 = param->T0 * pow(4./11.,1./3.);
  param->onuh2 = 0.;
  if (param->Nmnu != 0){
    for (i=0;i<param->Nmnu;i++){
      y = param->mnu[i]/kBoltz/Tnu0;
      param->onuh2 = param->onuh2 + (1.+0.317322*0.0457584*pow(y,3.47446+1.)
                    + 2.05298*0.0457584*pow(y,3.47446-1.))/(1.+0.0457584*pow(y,3.47446))*(3.450e-8 *Tnu0*Tnu0*Tnu0*Tnu0)*5.6822*2;
    }
  }

  param->odeh2 = (1. -Omega_cb -Omega_k - param->orh2/param->h/param->h- param->onuh2/param->h/param->h)*param->h*param->h;
  param->nH0 = 11.223846333047e-6*param->obh2*(1.-param->YHe);  // number density of hudrogen today in cm-3
  param->fHe = param->YHe/(1-param->YHe)/3.97153;              // abundance of helium by number

  if (fout!=NULL) fprintf(fout, "dark matter annihilation parameter, in cm^3/s/GeV, pann: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->pann))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'pann'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "pann_halo: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->pann_halo))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'pann_halo'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ann_z: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->ann_z))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'ann_z'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ann_zmax: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->ann_zmax))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'ann_zmax'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ann_zmin: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->ann_zmin))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'ann_zmin'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ann_var: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->ann_var))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'ann_var'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "ann_z_halo: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->ann_z_halo))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'ann_z_halo'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "on_the_spot: \n");
  if(fscanf(fin, "%d", &(param->inj_params->on_the_spot))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'on_the_spot'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "decay: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->decay))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'decay'\n");exit(1);};

  if (fout!=NULL) fprintf(fout, "Mpbh: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->Mpbh))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'Mpbh'\n");exit(1);};
  if (fout!=NULL) fprintf(fout, "fpbh: \n");
  if(fscanf(fin, "%lg", &(param->inj_params->fpbh))!=1){if (fout!=NULL) fprintf(fout, "Error in rec_get_cosmoparam when reading parameter 'fpbh'\n");exit(1);};

  param->inj_params->odmh2      = param->ocbh2 - param->obh2;

  if (MODEL == SWIFT) param->dlna = DLNA_SWIFT;
  else param->dlna = DLNA_HYREC;

  if (fout!=NULL) fprintf(fout, "\n");
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rdx, %r14
movq %rsi, %rbx
movq %rdi, %r15
testq %rsi, %rsi
je 0xd0e74
leaq 0x5082a(%rip), %rdi     # 0x121690
pushq $0x1e
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x4f628(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
movq %r14, %rdx
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd16c1
testq %rbx, %rbx
je 0xd0eab
leaq 0x5084a(%rip), %rdi     # 0x1216e7
pushq $0x27
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x8(%r14), %rdx
leaq 0x4f5ed(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd16d6
testq %rbx, %rbx
je 0xd0ee3
leaq 0x5088f(%rip), %rdi     # 0x121764
pushq $0x20
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x4f5b9(%rip), %rsi     # 0x1204a3
leaq 0x28(%rsp), %rdx
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd16ed
testq %rbx, %rbx
je 0xd0f1c
leaq 0x508b5(%rip), %rdi     # 0x1217c3
pushq $0x2f
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x4f580(%rip), %rsi     # 0x1204a3
leaq 0x18(%rsp), %rdx
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1702
testq %rbx, %rbx
je 0xd0f55
leaq 0x508eb(%rip), %rdi     # 0x121832
pushq $0x1b
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x4f547(%rip), %rsi     # 0x1204a3
leaq 0x10(%rsp), %rdx
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1717
testq %rbx, %rbx
je 0xd0f8e
leaq 0x5090c(%rip), %rdi     # 0x12188c
pushq $0x36
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x40(%r14), %rdx
leaq 0x48(%r14), %rcx
leaq 0x4f502(%rip), %rsi     # 0x12049f
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x2, %eax
jne 0xd172c
testq %rbx, %rbx
je 0xd0fca
leaq 0x50943(%rip), %rdi     # 0x1218ff
pushq $0x31
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x60(%r14), %rdx
leaq 0x4f4ce(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1741
testq %rbx, %rbx
je 0xd1002
leaq 0x50978(%rip), %rdi     # 0x12196c
pushq $0x1f
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x68(%r14), %rdx
leaq 0x4f496(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1756
testq %rbx, %rbx
je 0xd103a
leaq 0x5099b(%rip), %rdi     # 0x1219c7
pushq $0x1f
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x70(%r14), %rdx
leaq 0x4f45e(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd176b
testq %rbx, %rbx
je 0xd1072
leaq 0x509be(%rip), %rdi     # 0x121a22
pushq $0x1f
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x78(%r14), %rdx
leaq 0x4f426(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1780
testq %rbx, %rbx
je 0xd10aa
leaq 0x509e1(%rip), %rdi     # 0x121a7d
pushq $0x2b
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x90(%r14), %rdx
leaq 0x4f3eb(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1795
testq %rbx, %rbx
je 0xd10e5
leaq 0x50a0a(%rip), %rdi     # 0x121ae1
pushq $0x3a
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x50(%r14), %rdx
leaq 0x4f3b3(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd17ac
testq %rbx, %rbx
je 0xd111d
leaq 0x50a49(%rip), %rdi     # 0x121b58
pushq $0x4a
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0x98(%r14), %rdx
leaq 0x4f378(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd17c1
testq %rbx, %rbx
je 0xd1158
leaq 0x50a93(%rip), %rdi     # 0x121bdd
pushq $0x40
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
leaq 0xa0(%r14), %rdx
leaq 0x4f33d(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd17d3
movsd 0x50(%r14), %xmm6
movsd 0x60(%r14), %xmm2
subsd %xmm2, %xmm6
movsd %xmm6, 0x58(%r14)
mulsd 0x50479(%rip), %xmm6    # 0x121610
addsd 0x140c1(%rip), %xmm6    # 0xe5260
movsd 0x18(%rsp), %xmm3
movsd 0x28(%rsp), %xmm0
unpcklpd %xmm3, %xmm0            # xmm0 = xmm0[0],xmm3[0]
movsd 0x10(%rsp), %xmm4
movupd (%r14), %xmm1
movapd %xmm1, %xmm8
unpckhpd %xmm1, %xmm8            # xmm8 = xmm8[1],xmm1[1]
movsd 0x5044c(%rip), %xmm5    # 0x121618
mulsd %xmm8, %xmm5
mulsd %xmm8, %xmm5
mulsd %xmm8, %xmm5
movapd %xmm1, %xmm7
unpcklpd %xmm1, %xmm7            # xmm7 = xmm7[0],xmm1[0]
mulpd %xmm7, %xmm0
mulpd %xmm7, %xmm0
movupd %xmm0, 0x10(%r14)
movapd %xmm4, %xmm7
unpcklpd %xmm5, %xmm7            # xmm7 = xmm7[0],xmm5[0]
mulpd %xmm1, %xmm7
movapd %xmm1, %xmm5
unpcklpd %xmm6, %xmm5            # xmm5 = xmm5[0],xmm6[0]
mulpd %xmm7, %xmm5
movupd %xmm5, 0x28(%r14)
andq $0x0, 0x38(%r14)
xorpd %xmm7, %xmm7
ucomisd %xmm7, %xmm2
jne 0xd1224
jnp 0xd1353
mulsd 0x503a3(%rip), %xmm8    # 0x1215d0
movsd 0x503a3(%rip), %xmm0    # 0x1215d8
mulsd %xmm8, %xmm0
mulsd %xmm8, %xmm0
mulsd %xmm8, %xmm0
movapd %xmm8, 0x30(%rsp)
mulsd %xmm8, %xmm0
movsd %xmm0, 0x20(%rsp)
xorl %r12d, %r12d
cvtsi2sd %r12d, %xmm0
ucomisd %xmm0, %xmm2
jbe 0xd1334
movsd 0x68(%r14,%r12,8), %xmm0
divsd 0x4ff91(%rip), %xmm0    # 0x121208
divsd 0x30(%rsp), %xmm0
movsd %xmm0, 0x8(%rsp)
movsd 0x50355(%rip), %xmm1    # 0x1215e0
movapd %xmm7, 0x60(%rsp)
callq 0x8650
mulsd 0x5034a(%rip), %xmm0    # 0x1215e8
addsd 0x13fba(%rip), %xmm0    # 0xe5260
shufpd $0x2, 0x4ba01(%rip), %xmm0 # xmm0 = xmm0[0],mem[1]
movapd %xmm0, 0x50(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x5032d(%rip), %xmm1    # 0x1215f0
callq 0x8650
movaps %xmm0, 0x40(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x5031d(%rip), %xmm1    # 0x1215f8
callq 0x8650
movapd 0x60(%rsp), %xmm7
movapd 0x40(%rsp), %xmm1
unpcklpd %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0]
mulpd 0x50378(%rip), %xmm1    # 0x121670
addpd 0x50(%rsp), %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
divsd %xmm0, %xmm1
mulsd 0x20(%rsp), %xmm1
mulsd 0x502e8(%rip), %xmm1    # 0x121600
addsd %xmm1, %xmm1
addsd %xmm1, %xmm7
movsd %xmm7, 0x38(%r14)
incq %r12
movsd 0x60(%r14), %xmm2
jmp 0xd1259
movsd 0x18(%rsp), %xmm3
movsd 0x10(%rsp), %xmm4
movsd 0x30(%r14), %xmm5
movsd (%r14), %xmm1
movsd 0x10(%r14), %xmm0
jmp 0xd1357
unpckhpd %xmm5, %xmm5            # xmm5 = xmm5[1,1]
movsd 0x13f01(%rip), %xmm2    # 0xe5260
movapd %xmm2, %xmm6
subsd %xmm3, %xmm6
subsd %xmm4, %xmm6
divsd %xmm1, %xmm5
divsd %xmm1, %xmm5
subsd %xmm5, %xmm6
divsd %xmm1, %xmm7
divsd %xmm1, %xmm7
subsd %xmm7, %xmm6
mulsd %xmm1, %xmm6
mulsd %xmm1, %xmm6
movsd %xmm6, 0x20(%r14)
mulsd 0x50287(%rip), %xmm0    # 0x121620
movsd 0x90(%r14), %xmm1
subsd %xmm1, %xmm2
mulsd %xmm2, %xmm0
movsd %xmm0, 0x88(%r14)
divsd %xmm2, %xmm1
divsd 0x50269(%rip), %xmm1    # 0x121628
movsd %xmm1, 0x80(%r14)
testq %rbx, %rbx
je 0xd13e2
leaq 0x50884(%rip), %rdi     # 0x121c58
pushq $0x3a
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x8, %rdx
leaq 0x4f0af(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd17ea
testq %rbx, %rbx
je 0xd1421
leaq 0x508bb(%rip), %rdi     # 0x121cce
pushq $0xc
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x10, %rdx
leaq 0x4f070(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd17ff
testq %rbx, %rbx
je 0xd1460
leaq 0x508c9(%rip), %rdi     # 0x121d1b
pushq $0x8
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x18, %rdx
leaq 0x4f031(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1816
testq %rbx, %rbx
je 0xd149f
leaq 0x508cf(%rip), %rdi     # 0x121d60
pushq $0xb
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x20, %rdx
leaq 0x4eff2(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1828
testq %rbx, %rbx
je 0xd14de
leaq 0x508db(%rip), %rdi     # 0x121dab
pushq $0xb
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x28, %rdx
leaq 0x4efb3(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd183a
testq %rbx, %rbx
je 0xd151d
leaq 0x508e7(%rip), %rdi     # 0x121df6
pushq $0xa
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x30, %rdx
leaq 0x4ef74(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd184a
testq %rbx, %rbx
je 0xd155c
leaq 0x508f1(%rip), %rdi     # 0x121e3f
pushq $0xd
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x38, %rdx
leaq 0x4ef35(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd185a
testq %rbx, %rbx
je 0xd159b
leaq 0x50901(%rip), %rdi     # 0x121e8e
pushq $0xe
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x58, %rdx
leaq 0x22a62(%rip), %rsi     # 0xf400f
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd186a
testq %rbx, %rbx
je 0xd15da
leaq 0x50913(%rip), %rdi     # 0x121edf
pushq $0x8
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x40, %rdx
leaq 0x4eeb7(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd187a
testq %rbx, %rbx
je 0xd1619
leaq 0x50919(%rip), %rdi     # 0x121f24
pushq $0x7
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x48, %rdx
leaq 0x4ee78(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd188a
testq %rbx, %rbx
je 0xd1658
leaq 0x5091d(%rip), %rdi     # 0x121f67
pushq $0x7
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
movq 0xb8(%r14), %rdx
addq $0x50, %rdx
leaq 0x4ee39(%rip), %rsi     # 0x1204a3
movq %r15, %rdi
xorl %eax, %eax
callq 0x86c0
cmpl $0x1, %eax
jne 0xd1898
movsd 0x18(%r14), %xmm0
subsd 0x10(%r14), %xmm0
movq 0xb8(%r14), %rax
movsd %xmm0, (%rax)
movabsq $0x3f70624dd2f1a9fc, %rax # imm = 0x3F70624DD2F1A9FC
movq %rax, 0xa8(%r14)
testq %rbx, %rbx
je 0xd16b5
pushq $0xa
popq %rdi
movq %rbx, %rsi
callq 0x8460
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
testq %rbx, %rbx
je 0xd18b2
leaq 0x4ffde(%rip), %rdi     # 0x1216af
jmp 0xd17a5
testq %rbx, %rbx
je 0xd18b2
leaq 0x50029(%rip), %rdi     # 0x12170f
pushq $0x54
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50088(%rip), %rdi     # 0x121785
jmp 0xd1856
testq %rbx, %rbx
je 0xd18b2
leaq 0x500e1(%rip), %rdi     # 0x1217f3
jmp 0xd1846
testq %rbx, %rbx
je 0xd18b2
leaq 0x50127(%rip), %rdi     # 0x12184e
jmp 0xd1856
testq %rbx, %rbx
je 0xd18b2
leaq 0x50187(%rip), %rdi     # 0x1218c3
jmp 0xd1886
testq %rbx, %rbx
je 0xd18b2
leaq 0x501e0(%rip), %rdi     # 0x121931
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x50226(%rip), %rdi     # 0x12198c
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x5026c(%rip), %rdi     # 0x1219e7
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x502b2(%rip), %rdi     # 0x121a42
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x50304(%rip), %rdi     # 0x121aa9
pushq $0x37
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50360(%rip), %rdi     # 0x121b1c
jmp 0xd1886
testq %rbx, %rbx
je 0xd18b2
leaq 0x503d2(%rip), %rdi     # 0x121ba3
jmp 0xd17e3
testq %rbx, %rbx
je 0xd18b2
leaq 0x5043b(%rip), %rdi     # 0x121c1e
pushq $0x39
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50499(%rip), %rdi     # 0x121c93
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x504cc(%rip), %rdi     # 0x121cdb
pushq $0x3f
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x504fe(%rip), %rdi     # 0x121d24
jmp 0xd1886
testq %rbx, %rbx
je 0xd18b2
leaq 0x50534(%rip), %rdi     # 0x121d6c
jmp 0xd1846
testq %rbx, %rbx
je 0xd18b2
leaq 0x50571(%rip), %rdi     # 0x121db7
pushq $0x3e
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x505ab(%rip), %rdi     # 0x121e01
pushq $0x3d
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x505e7(%rip), %rdi     # 0x121e4d
pushq $0x40
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50627(%rip), %rdi     # 0x121e9d
pushq $0x41
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50662(%rip), %rdi     # 0x121ee8
pushq $0x3b
jmp 0xd18a6
testq %rbx, %rbx
je 0xd18b2
leaq 0x50696(%rip), %rdi     # 0x121f2c
jmp 0xd18a4
testq %rbx, %rbx
je 0xd18b2
leaq 0x506cb(%rip), %rdi     # 0x121f6f
pushq $0x3a
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x8700
pushq $0x1
popq %rdi
callq 0x8440