// File: /workspace/github_c_makefile_star2_O2/dapogon[P]cellcoal/src/cellcoal.c
// Function: PrintRunInformation
static void	PrintRunInformation (FILE *fp)
    {
    int		i;
		
    fprintf (fp, "\n\nRun settings\n------------");
	fprintf (fp, "\n[Parameter file = %s]\n", parameterFile);
	if (noisy > 1)
		fprintf (fp, "\n[Assumptions in brackets]\n");
	fprintf (fp, "\nGeneral");
    fprintf (fp, "\n Seed                                         =   %-3ld", originalSeed);
    fprintf (fp, "\n Number replicate data sets                   =   %-3d",  numDataSets);
    fprintf (fp, "\n Number of cells                              =   %-3d",  numCells);
	if (doUserGenome == YES)
		fprintf (fp, "\n Number of sites in the user genome           =   %-3d",  numSites);
	else
		fprintf (fp, "\n Number of genomic sites                      =   %-3d",  numSites);
		
    fprintf (fp, "\n\nDemographics");
    fprintf (fp, "\n Effective population size                    =   %-3d",  N);
    if (doExponential == YES)
        fprintf (fp, "\n Exponential growth rate                      =   %2.1e", growthRate);
	if (doOthsukiInnanCoal == YES)
		{
		fprintf (fp, "\n Cell birth rate                              =   %2.1e", birthRate);
		fprintf (fp, "\n Cell death rate                              =   %2.1e", deathRate);
		fprintf (fp, "\n Exponential growth rate                      =   %2.1e", growthRate);
		}
	else if (doDemographics == YES)
        {
        fprintf (fp, "\n Period   Nbegin     Nend    Duration    Growth rate");
        for (i=1; i<=numPeriods; i++)
            fprintf (fp, "\n   %d    %7d   %7d     %7d       %+2.1e",
                     i, Nbegin[i], Nend[i], cumDuration[i]-cumDuration[i-1], periodGrowth[i]);
        }
	if (doUserTree == YES)
		fprintf (fp, "\n\nUser tree file                                =   %s", userTreeFile);
	else
		{
		fprintf (fp, "\n\nGenealogy");
		fprintf (fp, "\n Mean time to the MRCA (Ne generations)       =   %6.4f", meanTMRCA);
		if (noisy > 1)
			fprintf (fp, "\n Exp time to the MRCA [constant Ne]           =   %6.4f", expTMRCA);
		if (numDataSets > 1)
			{
			fprintf (fp, "\n Variance time MRCA                           =   %6.4f", varTMRCA);
			if (noisy > 1)
				fprintf (fp, "\n Exp variance time MRCA [constant Ne]         =   %6.4f", expVarTMRCA);
			}
	 
		if (rateVarAmongLineages == YES)
			fprintf (fp, "\n Rate variation among branches (alpha)        =   %-3.2f", alphaBranches);
		else if (doTreeRateSwitches == YES)
			fprintf (fp, "\n Number of tree rate switches                 =   %-3d",  numTreeRateSwitches);
		else
			fprintf (fp, "\n No rate variation among branches");
		}
    fprintf (fp, "\n\nUser-defined branches");
    fprintf (fp, "\n Transforming branch length ratio             =   %2.1e", transformingBranchLengthRatio);
    fprintf (fp, "\n Healthy tip branch length ratio              =   %2.1e", healthyTipBranchLengthRatio);

	if (doUserGenome == YES)
		fprintf (fp, "\n\nUser genome file                              =   %s", userGenomeFile);

    if (doSimulateData == YES)
        {
        fprintf (fp, "\n\nMutation models");
        fprintf (fp, "\n Character alphabet                           =   ");
        if (alphabet == BINARY)
            fprintf (fp, "0/1");
        else if (alphabet == DNA)
            fprintf (fp, "DNA");
		
		if (doGeneticSignatures == YES)
			{
			fprintf (fp, "\n Number of trinucleotide genetic signatures   =   %d", numUserSignatures);
			for (i=0; i<numUserSignatures; i++)
				fprintf (fp, "\n  signature %02d weight                         =   %4.2f", signatureID[i], signatureWeight[i]);
			}
        else if (propAltModelSites == 0)
            fprintf (fp, "\n All sites evolving under the ISM diploid");
			
        else if (propAltModelSites > 0)
            {
			fprintf (fp, "\n Proportion of ISM diploid sites              =   %-3.2f", 1.0 - propAltModelSites);
			fprintf (fp, "\n Proportion of non-ISM diploid sites          =   %-3.2f", propAltModelSites);
			fprintf (fp, "\n Non-ISM diploid mutation model               =   ");
            if (altModel == 0) /* ISM haploid model */
                fprintf (fp, "ISM haploid");
            else if (altModel == 1) /* Markov (Mk2) model */
                fprintf (fp, "Markov 0/1");
             else if (altModel == 2) /* finite DNA model */
                {
                fprintf (fp, "Markov finite DNA: ");
				if (doJC == YES)
					fprintf (fp, "JC");
				else if (doHKY == YES)
					fprintf (fp, "HKY");
				else if (doGTR == YES)
					fprintf (fp, "GTR");
				else if (doGTnR == YES)
					fprintf (fp, "GTnR");
				}
			
			if (rateVarAmongSites == YES)
				fprintf (fp, "\n Rate variation among sites (alpha)           =   %-3.2f", alphaSites);
			else
				fprintf (fp, "\n Equal rates among sites");
		   }

        if (alphabet == DNA && propAltModelSites > 0 && altModel == 2 && doGeneticSignatures == NO)
            {
            fprintf (fp, "\n Base frequencies (ACGT)                      =   %3.2f %3.2f %3.2f %3.2f", freq[0], freq[1], freq[2], freq[3]);
			if (doHKY == YES)
				fprintf (fp, "\n Transition/transversion ratio                =   %3.2f  (kappa = %3.2f)", titv, kappa);
			if (thereIsMij == YES)
				{
				fprintf (fp, "\n Mutation rate matrix                         =   %3.2f %3.2f %3.2f %3.2f", Mij[0][0], Mij[0][1], Mij[0][2], Mij[0][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Mij[1][0], Mij[1][1], Mij[1][2], Mij[1][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Mij[2][0], Mij[2][1], Mij[2][2], Mij[2][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Mij[3][0], Mij[3][1], Mij[3][2], Mij[3][3]);
				}
			}
        if (SNPrate > 0)
            fprintf (fp, "\n SNPrate                                      =   %2.1e", SNPrate);
			
		fprintf (fp, "\n\nSNV rates");
        if (doSimulateFixedNumMutations == YES)
            fprintf (fp, "\n Fixed number of mutations                    =   %-3d", numFixedMutations);
        else
            {
            fprintf (fp, "\n Mutation rate                                =   %2.1e", mutationRate);
            fprintf (fp, "\n Population mutation parameter (4Nu2L)        =   %3.2f", theta);
            if (noisy > 1)
				fprintf (fp, "\n Exp num mutation events [Ne=cte,ISMh]        =   %3.2f", expNumMU);
            }
        fprintf (fp, "\n Mean number of mutation events               =   %3.2f", meanNumMU);
        if (numDataSets > 1)
            {
            if (doSimulateFixedNumMutations == NO)
				{
                if (noisy > 1)
					fprintf (fp, "\n Exp variance num mut events [Ne=cte,ISM]     =   %3.2f", expVarNumMU);
				fprintf (fp, "\n Variance number of mutation events           =   %3.2f", varNumMU);
				}
             }
        fprintf (fp, "\n Mean number of SNVs                          =   %3.2f", meanNumSNVs);
        if (numDataSets > 1)
            {
			fprintf (fp, "\n Variance number of SNVs                      =   %3.2f", varNumSNVs);
			fprintf (fp, "\n Proportion of reps without SNV sites         =   %3.2f", zeroSNVs/(double)numDataSets);
			}

		if (deletionRate > 0)
			{
			fprintf (fp, "\n\nDeletion rates");
			fprintf (fp, "\n Deletion rate                                =   %2.1e", deletionRate);
			fprintf (fp, "\n Mean number of deletion events               =   %3.2f", meanNumDEL);
			if (numDataSets > 1)
				fprintf (fp, "\n Variance number of deletion events           =   %3.2f", varNumDEL);
			}

		if (CNLOHrate > 0)
			{
			fprintf (fp, "\n\nCopy-neutral LOH rates");
			fprintf (fp, "\n CN-LOH rate                                  =   %2.1e", CNLOHrate);
			fprintf (fp, "\n Mean number of CN-LOH events                 =   %3.2f", meanNumCNLOH);
			if (numDataSets > 1)
				fprintf (fp, "\n Variance number of CN-LOH events             =   %3.2f", varNumCNLOH);
			}
 
		fprintf (fp, "\n\nSingle-cell WGA");
		if (fixedADOrate == 0 & doADOcell == NO & doADOsite == NO)
			fprintf (fp, "\n Alellic dropout                              =   %2.1f", fixedADOrate);
		if (fixedADOrate > 0)
			fprintf (fp, "\n Alellic dropout fixed                        =   %2.1e", fixedADOrate);
		if (doADOcell == YES)
			fprintf (fp, "\n Alellic dropout per cell (mean, var)         =   %2.1e, %2.1e", meanADOcell, varADOcell);
		if (doADOsite == YES)
			fprintf (fp, "\n Alellic dropout per site (mean, var)         =   %2.1e, %2.1e", meanADOsite, varADOsite);

		if (doNGS == YES)
			{
			if (doAllelicImbalance == YES)
				fprintf (fp, "\n Maternal allelic imbalance (mean, var)       =   %2.1e, %2.1e", meanAllelicImbalance, varAllelicImbalance);
			else
				fprintf (fp, "\n Maternal allelic imbalance                   =   %2.1f", meanAllelicImbalance);

			if (meanAmplificationError > 0)
				{
				fprintf (fp, "\n Amplification error ");
				if (simulateOnlyTwoTemplates == YES)
					fprintf (fp, "\n  (2-template model)");
				else
					fprintf (fp, "\n  (4-template model)");
				fprintf (fp, " (mean, var)              =   %2.1e, %2.1e", meanAmplificationError, varAmplificationError);
				}
			else
				fprintf (fp, "\n Amplification error                          =   %2.1f", meanAmplificationError);

			if (meanDoubletRate > 0)
				fprintf (fp, "\n Doublet rate per cell (mean, var)            =   %2.1e, %2.1e", meanDoubletRate, varDoubletRate);
			else
				fprintf (fp, "\n Doublet rate per cell                        =   %2.1f", meanDoubletRate);
			}
	
		if (meanGenotypingError == 0 && doNGS == NO)
			fprintf (fp, "\n\nNGS genotype errors are not being simulated");

		if (meanGenotypingError > 0)
			{
			fprintf (fp, "\n\nGenotyping");
			fprintf (fp, "\n Genotype error (mean, var)                   =   %2.1e, %2.1e", meanGenotypingError, varGenotypingError);
			//fprintf (fp, "\n Exp number of FP SNVs due to genotype errors =   %3.2f", (1 - pow(1-genotypingError, numCells+1)) * numSites);
			}

		fprintf (fp, "\n\nNGS");
		if (doNGS == YES)
			{
			if (rateVarCoverage == NO)
				fprintf (fp, "\n Sequencing coverage (Poisson)                =   %-3.2fX", coverage);
			else
				{
				fprintf (fp, "\n Sequencing coverage (Negative binomial)");
				fprintf (fp, "\n  mean                                        =   %-3.2fX", coverage);
				fprintf (fp, "\n  dispersion (alpha)                          =   %-3.2f", alphaCoverage);
				}
			fprintf (fp, "\n Haploid coverage reduction                   =   %-3.2f", haploidCoverageReduction);
			fprintf (fp, "\n Sequencing error                             =   %2.1e", sequencingError);
			if (thereIsEij == YES)
				{
				fprintf (fp, "\n NGS error rate matrix                        =   %3.2f %3.2f %3.2f %3.2f", Eij[0][0], Eij[0][1], Eij[0][2], Eij[0][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Eij[1][0], Eij[1][1], Eij[1][2], Eij[1][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Eij[2][0], Eij[2][1], Eij[2][2], Eij[2][3]);
				fprintf (fp, "\n                                                  %3.2f %3.2f %3.2f %3.2f", Eij[3][0], Eij[3][1], Eij[3][2], Eij[3][3]);
				}
			}
		else
			fprintf (fp, "\n No sequencing reads were produced");
		}

	   fprintf (fp, "\n\n\nOutput files are in folder \"%s\":", resultsDir);
		   
		   if (doPrintTree == YES)
			   {
			   fprintf (fp, "\n Tree printed to file \"%s\"", treeFile);
			   if (doPrintSeparateReplicates == YES)
				   fprintf (fp, " in folder \"%s\"", treeDir);
	   
			   }
	
		   if (doPrintTimes == YES)
			   {
			   fprintf (fp, "\n Times printed to file \"%s\"", timesFile);
			   if (doPrintSeparateReplicates == YES)
				   fprintf (fp, " in folder \"%s\"", timesDir);
			   }
		   
		   if (doSimulateData == YES)
			   {
			   if (doPrintSNVgenotypes == YES)
				   {
				   fprintf (fp, "\n SNV genotypes printed to file \"%s\"", SNVgenotypesFile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", SNVgenotypesDir);
				  }
	
			   if (doPrintFullGenotypes == YES)
				   {
				   fprintf (fp, "\n Full genotypes printed to file \"%s\"", fullGenotypesFile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", fullGenotypesDir);
				   }
	
			   if (doPrintSNVhaplotypes == YES)
				   {
				   if (doPrintIUPAChaplotypes == YES)
					   fprintf (fp, "\n SNV haplotypes (IUPAC codes) printed to file \"%s\"", SNVhaplotypesFile);
				   else
					   fprintf (fp, "\n SNV haplotypes printed to file \"%s\"", SNVhaplotypesFile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", SNVhaplotypesDir);
				   }

			   if (doPrintFullHaplotypes == YES)
				   {
				   if (doPrintIUPAChaplotypes == YES)
					   fprintf (fp, "\n Full haplotypes (IUPAC codes) printed to file \"%s\"", fullHaplotypesFile);
				   else
					   fprintf (fp, "\n Full haplotypes printed to file \"%s\"", fullHaplotypesFile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", fullHaplotypesDir);
				   }

			   if (doPrintTrueHaplotypes == YES)
				   {
				   if (doPrintIUPAChaplotypes == YES)
					   fprintf (fp, "\n True haplotypes (IUPAC codes) printed to file \"%s\"", trueHaplotypesFile);
				   else
					   fprintf (fp, "\n True haplotypes printed to file \"%s\"", trueHaplotypesFile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", trueHaplotypesDir);
				   }

			   if (doNGS == YES)
				   {
				   fprintf (fp, "\n Genotype likelihoods (%s model) printed to file \"%s\"", GLmodel, VCFfile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", VCFdir);
				   }

			   if (doPrintCATG == YES)
				   {
				   fprintf (fp, "\n Read counts printed in CATG format to file \"%s\"", CATGfile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", CATGdir);
				   }

			   if (doPrintPILEUP == YES)
				   {
				   fprintf (fp, "\n Read counts printed in PILEUP format to file \"%s\"", PILEUPfile);
				   if (doPrintSeparateReplicates == YES)
					   fprintf (fp, " in folder \"%s\"", PILEUPdir);
				   }
			  }
		   else
			   fprintf (fp, "\n\n\nNo output data files");

	}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
leaq 0x11243(%rip), %rdi     # 0x22d00
pushq $0x1b
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
leaq 0x1124a(%rip), %rsi     # 0x22d1c
leaq 0x1e9d7(%rip), %rdx     # 0x304b0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpl $0x2, 0x1e9be(%rip)     # 0x304a8
jl 0x11b01
leaq 0x11241(%rip), %rdi     # 0x22d34
pushq $0x1b
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11248(%rip), %rdi     # 0x22d50
pushq $0x8
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
movq 0x1eba7(%rip), %rdx     # 0x306c8
leaq 0x11231(%rip), %rsi     # 0x22d59
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x1e668(%rip), %edx     # 0x301a0
leaq 0x11253(%rip), %rsi     # 0x22d92
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x1e655(%rip), %edx     # 0x301a4
leaq 0x11274(%rip), %rsi     # 0x22dca
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x1e642(%rip), %edx     # 0x301a8
leaq 0x11295(%rip), %rax     # 0x22e02
leaq 0x112c6(%rip), %rsi     # 0x22e3a
cmpb $0x0, 0x1e80d(%rip)     # 0x30388
cmovneq %rax, %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
leaq 0x112e2(%rip), %rdi     # 0x22e72
pushq $0xe
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
movl 0x1e608(%rip), %edx     # 0x301ac
leaq 0x112d6(%rip), %rsi     # 0x22e81
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1e5fc(%rip)     # 0x301b8
jne 0x11bd7
movsd 0x1e5fa(%rip), %xmm0    # 0x301c0
leaq 0x112ec(%rip), %rsi     # 0x22eb9
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x1eae2(%rip)     # 0x306c0
jne 0x11c2d
movsd 0x1e5e0(%rip), %xmm0    # 0x301c8
leaq 0x11303(%rip), %rsi     # 0x22ef2
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1e5cf(%rip), %xmm0    # 0x301d0
leaq 0x11323(%rip), %rsi     # 0x22f2b
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1e5a6(%rip), %xmm0    # 0x301c0
leaq 0x11298(%rip), %rsi     # 0x22eb9
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
jmp 0x11ca6
cmpb $0x1, 0x1e580(%rip)     # 0x301b4
jne 0x11ca6
leaq 0x11327(%rip), %rdi     # 0x22f64
pushq $0x35
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11348(%rip), %r15     # 0x22f9a
movslq 0x1e557(%rip), %rax     # 0x301b0
cmpq %rax, %r14
jg 0x11ca6
movq 0x1facb(%rip), %rax     # 0x31730
movl (%rax,%r14,4), %ecx
movq 0x1fab8(%rip), %rax     # 0x31728
movl (%rax,%r14,4), %r8d
movq 0x1fabd(%rip), %rax     # 0x31738
movl (%rax,%r14,4), %r9d
subl -0x4(%rax,%r14,4), %r9d
movq 0x1fab5(%rip), %rax     # 0x31740
movsd (%rax,%r14,8), %xmm0
movq %rbx, %rdi
movq %r15, %rsi
movl %r14d, %edx
movb $0x1, %al
callq 0x21c0
incq %r14
jmp 0x11c52
cmpb $0x1, 0x1e6d7(%rip)     # 0x30384
jne 0x11ccc
leaq 0x1130d(%rip), %rsi     # 0x22fc3
leaq 0x1f513(%rip), %rdx     # 0x311d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x11dbb
leaq 0x11327(%rip), %rdi     # 0x22ffa
pushq $0xb
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1f9c7(%rip), %xmm0    # 0x316b0
leaq 0x11316(%rip), %rsi     # 0x23006
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1e7a7(%rip)     # 0x304a8
jl 0x11d1c
movsd 0x1e83d(%rip), %xmm0    # 0x30548
leaq 0x1132d(%rip), %rsi     # 0x2303f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1e47d(%rip)     # 0x301a0
jl 0x11d60
movsd 0x1f9a3(%rip), %xmm0    # 0x316d0
leaq 0x11344(%rip), %rsi     # 0x23078
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1e763(%rip)     # 0x304a8
jl 0x11d60
movsd 0x1e801(%rip), %xmm0    # 0x30550
leaq 0x1135b(%rip), %rsi     # 0x230b1
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x1e481(%rip)     # 0x301e8
jne 0x11d84
movsd 0x1e5ff(%rip), %xmm0    # 0x30370
leaq 0x11372(%rip), %rsi     # 0x230ea
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
jmp 0x11dbb
cmpb $0x1, 0x1e461(%rip)     # 0x301ec
jne 0x11da6
movl 0x1e45d(%rip), %edx     # 0x301f0
leaq 0x1138a(%rip), %rsi     # 0x23124
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x11dbb
leaq 0x113af(%rip), %rdi     # 0x2315c
pushq $0x22
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
leaq 0x113bd(%rip), %rdi     # 0x2317f
pushq $0x17
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1e600(%rip), %xmm0    # 0x303d8
leaq 0x113b8(%rip), %rsi     # 0x23197
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1e5ef(%rip), %xmm0    # 0x303e0
leaq 0x113d8(%rip), %rsi     # 0x231d0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x1e57f(%rip)     # 0x30388
jne 0x11e23
leaq 0x113f7(%rip), %rsi     # 0x23209
leaq 0x1f437(%rip), %rdx     # 0x31250
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1e596(%rip)     # 0x303c0
jne 0x12800
leaq 0x11409(%rip), %rdi     # 0x23240
pushq $0x11
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11402(%rip), %rdi     # 0x23252
pushq $0x33
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
movl 0x1e390(%rip), %eax     # 0x301f4
testl %eax, %eax
je 0x11e76
cmpl $0x1, %eax
jne 0x11e8b
leaq 0x11412(%rip), %rdi     # 0x23286
jmp 0x11e7d
leaq 0x11564(%rip), %rdi     # 0x233e1
pushq $0x3
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x1e53a(%rip)     # 0x303cc
jne 0x11eef
movl 0x1e536(%rip), %edx     # 0x303d0
leaq 0x113e9(%rip), %rsi     # 0x2328a
xorl %r15d, %r15d
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
leaq 0x1140b(%rip), %r14     # 0x232c0
movslq 0x1e514(%rip), %rax     # 0x303d0
cmpq %rax, %r15
jge 0x1201b
movq 0x1f824(%rip), %rax     # 0x316f0
movl (%rax,%r15,4), %edx
movq 0x1f811(%rip), %rax     # 0x316e8
movsd (%rax,%r15,8), %xmm0
movq %rbx, %rdi
movq %r14, %rsi
movb $0x1, %al
callq 0x21c0
incq %r15
jmp 0x11eb5
movsd 0x1e309(%rip), %xmm1    # 0x30200
xorpd %xmm0, %xmm0
ucomisd %xmm0, %xmm1
jne 0x11f1d
jp 0x11f1d
leaq 0x113f1(%rip), %rdi     # 0x232fb
pushq $0x2a
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
jmp 0x1201b
jbe 0x1201b
movsd 0xd185(%rip), %xmm0     # 0x1f0b0
subsd %xmm1, %xmm0
leaq 0x113f0(%rip), %rsi     # 0x23326
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1e2b8(%rip), %xmm0    # 0x30200
leaq 0x11411(%rip), %rsi     # 0x23360
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x1143a(%rip), %rdi     # 0x2339a
pushq $0x33
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movl 0x1e284(%rip), %eax     # 0x301f8
cmpl $0x2, %eax
je 0x11f98
cmpl $0x1, %eax
je 0x11f8d
testl %eax, %eax
jne 0x11ff5
leaq 0x11445(%rip), %rdi     # 0x233ce
pushq $0xb
jmp 0x11fe9
leaq 0x11446(%rip), %rdi     # 0x233da
pushq $0xa
jmp 0x11fe9
leaq 0x11446(%rip), %rdi     # 0x233e5
pushq $0x13
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x1e39c(%rip)     # 0x30350
jne 0x11fc1
leaq 0x1143c(%rip), %rdi     # 0x233f9
pushq $0x2
jmp 0x11fe9
cmpb $0x1, 0x1e38c(%rip)     # 0x30354
jne 0x11fd3
leaq 0x1142b(%rip), %rdi     # 0x233fc
jmp 0x11fe7
cmpb $0x1, 0x1e37e(%rip)     # 0x30358
jne 0x12b29
leaq 0x11419(%rip), %rdi     # 0x23400
pushq $0x3
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x1e364(%rip)     # 0x30360
jne 0x12b1b
movsd 0x1e35e(%rip), %xmm0    # 0x30368
leaq 0x113f8(%rip), %rsi     # 0x23409
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x1, 0x1e1d2(%rip)     # 0x301f4
jne 0x1217f
movsd 0x1e1d0(%rip), %xmm0    # 0x30200
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x1217f
cmpl $0x2, 0x1e1b3(%rip)     # 0x301f8
jne 0x1217f
testb $0x1, 0x1e37a(%rip)     # 0x303cc
jne 0x1217f
movsd 0x1e1b0(%rip), %xmm0    # 0x30210
movsd 0x1e1b0(%rip), %xmm1    # 0x30218
movsd 0x1e1b0(%rip), %xmm2    # 0x30220
movsd 0x1e1b0(%rip), %xmm3    # 0x30228
leaq 0x113de(%rip), %rsi     # 0x2345d
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
cmpb $0x1, 0x1e2c4(%rip)     # 0x30354
jne 0x120b3
movsd 0x1e196(%rip), %xmm0    # 0x30230
movsd 0x1f756(%rip), %xmm1    # 0x317f8
leaq 0x113ff(%rip), %rsi     # 0x234a8
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
cmpb $0x1, 0x1e17e(%rip)     # 0x30238
jne 0x1217f
movsd 0x1e178(%rip), %xmm0    # 0x30240
movsd 0x1e178(%rip), %xmm1    # 0x30248
movsd 0x1e178(%rip), %xmm2    # 0x30250
movsd 0x1e178(%rip), %xmm3    # 0x30258
leaq 0x1140b(%rip), %rsi     # 0x234f2
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
movsd 0x1e167(%rip), %xmm0    # 0x30260
movsd 0x1e167(%rip), %xmm1    # 0x30268
movsd 0x1e167(%rip), %xmm2    # 0x30270
movsd 0x1e167(%rip), %xmm3    # 0x30278
leaq 0x11425(%rip), %r14     # 0x2353d
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x1e153(%rip), %xmm0    # 0x30280
movsd 0x1e153(%rip), %xmm1    # 0x30288
movsd 0x1e153(%rip), %xmm2    # 0x30290
movsd 0x1e153(%rip), %xmm3    # 0x30298
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x1e146(%rip), %xmm0    # 0x302a0
movsd 0x1e146(%rip), %xmm1    # 0x302a8
movsd 0x1e146(%rip), %xmm2    # 0x302b0
movsd 0x1e146(%rip), %xmm3    # 0x302b8
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x1e059(%rip), %xmm0    # 0x301e0
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x121a2
leaq 0x113f0(%rip), %rsi     # 0x23588
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x11418(%rip), %rdi     # 0x235c1
pushq $0xb
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x1e1c2(%rip)     # 0x30380
jne 0x121d9
movl 0x1f5e2(%rip), %edx     # 0x317a8
leaq 0x11400(%rip), %rsi     # 0x235cd
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x1222d
movsd 0x1dff7(%rip), %xmm0    # 0x301d8
leaq 0x1141d(%rip), %rsi     # 0x23605
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1e336(%rip), %xmm0    # 0x30530
leaq 0x1143d(%rip), %rsi     # 0x2363e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1e296(%rip)     # 0x304a8
jl 0x1222d
movsd 0x1e31c(%rip), %xmm0    # 0x30538
leaq 0x11454(%rip), %rsi     # 0x23677
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f45b(%rip), %xmm0    # 0x31690
leaq 0x11474(%rip), %rsi     # 0x236b0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1df53(%rip)     # 0x301a0
jl 0x12293
testb $0x1, 0x1e12a(%rip)     # 0x30380
jne 0x12293
cmpl $0x2, 0x1e249(%rip)     # 0x304a8
jl 0x1227a
movsd 0x1e2d7(%rip), %xmm0    # 0x30540
leaq 0x11479(%rip), %rsi     # 0x236e9
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f436(%rip), %xmm0    # 0x316b8
leaq 0x11499(%rip), %rsi     # 0x23722
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f3fd(%rip), %xmm0    # 0x31698
leaq 0x114b9(%rip), %rsi     # 0x2375b
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1deed(%rip)     # 0x301a0
jl 0x122f3
movsd 0x1f403(%rip), %xmm0    # 0x316c0
leaq 0x114d0(%rip), %rsi     # 0x23794
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cvtsi2sdl 0x1e2ba(%rip), %xmm0 # 0x30590
cvtsi2sdl 0x1dec2(%rip), %xmm1 # 0x301a0
divsd %xmm1, %xmm0
leaq 0x114e4(%rip), %rsi     # 0x237cd
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f315(%rip), %xmm0    # 0x31610
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x12376
leaq 0x114fa(%rip), %rdi     # 0x23806
pushq $0x10
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1f2ee(%rip), %xmm0    # 0x31610
leaq 0x114ee(%rip), %rsi     # 0x23817
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f365(%rip), %xmm0    # 0x316a0
leaq 0x1150e(%rip), %rsi     # 0x23850
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm1, %xmm1
cmpl $0x2, 0x1de49(%rip)     # 0x301a0
jl 0x12376
movsd 0x1f367(%rip), %xmm0    # 0x316c8
leaq 0x11521(%rip), %rsi     # 0x23889
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm1, %xmm1
movsd 0x1f27a(%rip), %xmm0    # 0x315f8
ucomisd %xmm1, %xmm0
jbe 0x123e9
leaq 0x11537(%rip), %rdi     # 0x238c2
pushq $0x18
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1f257(%rip), %xmm0    # 0x315f8
leaq 0x11533(%rip), %rsi     # 0x238db
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1f2ee(%rip), %xmm0    # 0x316a8
leaq 0x11553(%rip), %rsi     # 0x23914
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x1ddce(%rip)     # 0x301a0
jl 0x123e9
leaq 0x11572(%rip), %rsi     # 0x2394d
xorpd %xmm0, %xmm0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x11596(%rip), %rdi     # 0x23986
pushq $0x11
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1dff2(%rip), %xmm0    # 0x303f8
xorpd %xmm3, %xmm3
ucomisd %xmm3, %xmm0
jne 0x12453
jp 0x12453
movsd 0x1dfee(%rip), %xmm1    # 0x30408
ucomisd %xmm3, %xmm1
jne 0x12453
jp 0x12453
movsd 0x1dfe6(%rip), %xmm1    # 0x30410
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm1
jne 0x12453
jp 0x12453
leaq 0x1155b(%rip), %rsi     # 0x23998
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm3, %xmm3
movsd 0x1dfa5(%rip), %xmm0    # 0x303f8
ucomisd %xmm3, %xmm0
jbe 0x1246a
leaq 0x11571(%rip), %rsi     # 0x239d1
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1df96(%rip), %xmm0    # 0x30408
ucomisd 0xcc36(%rip), %xmm0     # 0x1f0b0
jne 0x1249f
jp 0x1249f
movsd 0x1df92(%rip), %xmm0    # 0x30418
movsd 0x1df92(%rip), %xmm1    # 0x30420
leaq 0x11575(%rip), %rsi     # 0x23a0a
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x1df69(%rip), %xmm0    # 0x30410
ucomisd 0xcc01(%rip), %xmm0     # 0x1f0b0
jne 0x124d4
jp 0x124d4
movsd 0x1df6d(%rip), %xmm0    # 0x30428
movsd 0x1df6d(%rip), %xmm1    # 0x30430
leaq 0x11580(%rip), %rsi     # 0x23a4a
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
cmpb $0x1, 0x1ded1(%rip)     # 0x303ac
jne 0x125ed
movsd 0x1df87(%rip), %xmm0    # 0x30470
ucomisd 0xcbbf(%rip), %xmm0     # 0x1f0b0
movsd 0x1df7f(%rip), %xmm0    # 0x30478
jne 0x12518
jp 0x12518
movsd 0x1df7b(%rip), %xmm1    # 0x30480
leaq 0x1157e(%rip), %rsi     # 0x23a8a
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x12529
leaq 0x115ab(%rip), %rsi     # 0x23aca
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1df1f(%rip), %xmm0    # 0x30450
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x1259e
leaq 0x115c1(%rip), %rdi     # 0x23b03
pushq $0x16
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
cmpl $0x1, 0x1df05(%rip)     # 0x30460
leaq 0x115b8(%rip), %rax     # 0x23b1a
leaq 0x115c7(%rip), %rdi     # 0x23b30
cmoveq %rax, %rdi
pushq $0x15
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1decd(%rip), %xmm0    # 0x30450
movsd 0x1decd(%rip), %xmm1    # 0x30458
leaq 0x115b4(%rip), %rsi     # 0x23b46
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x125af
leaq 0x115cc(%rip), %rsi     # 0x23b71
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1ded1(%rip), %xmm0    # 0x30488
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x125dc
movsd 0x1dec7(%rip), %xmm1    # 0x30490
leaq 0x115da(%rip), %rsi     # 0x23baa
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x125ed
leaq 0x11607(%rip), %rsi     # 0x23bea
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1de4b(%rip), %xmm0    # 0x30440
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x1262b
jp 0x1262b
testb $0x1, 0x1dda4(%rip)     # 0x303ac
jne 0x1262b
leaq 0x11612(%rip), %rdi     # 0x23c23
pushq $0x2d
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
xorpd %xmm1, %xmm1
movsd 0x1de15(%rip), %xmm0    # 0x30440
ucomisd %xmm1, %xmm0
jbe 0x12667
leaq 0x11619(%rip), %rdi     # 0x23c51
pushq $0xc
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1ddf2(%rip), %xmm0    # 0x30440
movsd 0x1ddf2(%rip), %xmm1    # 0x30448
leaq 0x11601(%rip), %rsi     # 0x23c5e
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
leaq 0x11630(%rip), %rdi     # 0x23c9e
pushq $0x5
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x1dd29(%rip)     # 0x303ac
jne 0x126cc
cmpb $0x1, 0x1dd64(%rip)     # 0x303f0
jne 0x126e6
leaq 0x1164a(%rip), %rdi     # 0x23cdf
pushq $0x29
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
movsd 0x1dd3d(%rip), %xmm0    # 0x303e8
leaq 0x11657(%rip), %rsi     # 0x23d09
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x11681(%rip), %rsi     # 0x23d44
leaq 0x1dcae(%rip), %rax     # 0x30378
jmp 0x126f4
leaq 0x11769(%rip), %rdi     # 0x23e3c
pushq $0x23
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x22b0
jmp 0x12800
leaq 0x115b7(%rip), %rsi     # 0x23ca4
leaq 0x1dcf4(%rip), %rax     # 0x303e8
movsd (%rax), %xmm0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1dd5e(%rip), %xmm0    # 0x30468
leaq 0x1166d(%rip), %rsi     # 0x23d7e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x1dd15(%rip), %xmm0    # 0x30438
leaq 0x1168e(%rip), %rsi     # 0x23db8
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x1db85(%rip)     # 0x302c0
jne 0x12800
movsd 0x1db87(%rip), %xmm0    # 0x302d0
movsd 0x1db87(%rip), %xmm1    # 0x302d8
movsd 0x1db87(%rip), %xmm2    # 0x302e0
movsd 0x1db87(%rip), %xmm3    # 0x302e8
leaq 0x11689(%rip), %rsi     # 0x23df1
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
movsd 0x1db76(%rip), %xmm0    # 0x302f0
movsd 0x1db76(%rip), %xmm1    # 0x302f8
movsd 0x1db76(%rip), %xmm2    # 0x30300
movsd 0x1db76(%rip), %xmm3    # 0x30308
leaq 0x10da4(%rip), %r14     # 0x2353d
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x1db62(%rip), %xmm0    # 0x30310
movsd 0x1db62(%rip), %xmm1    # 0x30318
movsd 0x1db62(%rip), %xmm2    # 0x30320
movsd 0x1db62(%rip), %xmm3    # 0x30328
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x1db55(%rip), %xmm0    # 0x30330
movsd 0x1db55(%rip), %xmm1    # 0x30338
movsd 0x1db55(%rip), %xmm2    # 0x30340
movsd 0x1db55(%rip), %xmm3    # 0x30348
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
leaq 0x11659(%rip), %rsi     # 0x23e60
leaq 0x1e0c2(%rip), %rdx     # 0x308d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1db81(%rip)     # 0x303a0
jne 0x1285a
leaq 0x1165c(%rip), %rsi     # 0x23e84
leaq 0x1e8a1(%rip), %rdx     # 0x310d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1db84(%rip)     # 0x303c4
jne 0x1285a
leaq 0x11657(%rip), %rsi     # 0x23ea0
leaq 0x1e100(%rip), %rdx     # 0x30950
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1db43(%rip)     # 0x303a4
jne 0x1289c
leaq 0x11646(%rip), %rsi     # 0x23eb0
leaq 0x1e8df(%rip), %rdx     # 0x31150
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1db42(%rip)     # 0x303c4
jne 0x1289c
leaq 0x11615(%rip), %rsi     # 0x23ea0
leaq 0x1e13e(%rip), %rdx     # 0x309d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1db1d(%rip)     # 0x303c0
jne 0x12afb
cmpb $0x1, 0x1dadc(%rip)     # 0x3038c
jne 0x128eb
leaq 0x11614(%rip), %rsi     # 0x23ecd
leaq 0x1e590(%rip), %rdx     # 0x30e50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1daf3(%rip)     # 0x303c4
jne 0x128eb
leaq 0x115c6(%rip), %rsi     # 0x23ea0
leaq 0x1e16f(%rip), %rdx     # 0x30a50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1daaa(%rip)     # 0x3039c
jne 0x1292d
leaq 0x115f7(%rip), %rsi     # 0x23ef2
leaq 0x1e74e(%rip), %rdx     # 0x31050
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1dab1(%rip)     # 0x303c4
jne 0x1292d
leaq 0x11584(%rip), %rsi     # 0x23ea0
leaq 0x1e32d(%rip), %rdx     # 0x30c50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1da5c(%rip)     # 0x30390
jne 0x12981
leaq 0x115db(%rip), %rax     # 0x23f18
leaq 0x11608(%rip), %rsi     # 0x23f4c
cmpb $0x0, 0x1da7d(%rip)     # 0x303c8
cmovneq %rax, %rsi
leaq 0x1e57a(%rip), %rdx     # 0x30ed0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1da5d(%rip)     # 0x303c4
jne 0x12981
leaq 0x11530(%rip), %rsi     # 0x23ea0
leaq 0x1e159(%rip), %rdx     # 0x30ad0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1da10(%rip)     # 0x30398
jne 0x129d5
leaq 0x115e1(%rip), %rax     # 0x23f72
leaq 0x1160f(%rip), %rsi     # 0x23fa7
cmpb $0x0, 0x1da29(%rip)     # 0x303c8
cmovneq %rax, %rsi
leaq 0x1e626(%rip), %rdx     # 0x30fd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1da09(%rip)     # 0x303c4
jne 0x129d5
leaq 0x114dc(%rip), %rsi     # 0x23ea0
leaq 0x1e205(%rip), %rdx     # 0x30bd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d9b8(%rip)     # 0x30394
jne 0x12a29
leaq 0x115e9(%rip), %rax     # 0x23fce
leaq 0x11617(%rip), %rsi     # 0x24003
cmpb $0x0, 0x1d9d5(%rip)     # 0x303c8
cmovneq %rax, %rsi
leaq 0x1e552(%rip), %rdx     # 0x30f50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d9b5(%rip)     # 0x303c4
jne 0x12a29
leaq 0x11488(%rip), %rsi     # 0x23ea0
leaq 0x1e131(%rip), %rdx     # 0x30b50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d97c(%rip)     # 0x303ac
jne 0x12a72
leaq 0x115f1(%rip), %rsi     # 0x2402a
leaq 0x1f620(%rip), %rdx     # 0x32060
leaq 0x1e989(%rip), %rcx     # 0x313d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d96c(%rip)     # 0x303c4
jne 0x12a72
leaq 0x1143f(%rip), %rsi     # 0x23ea0
leaq 0x1e368(%rip), %rdx     # 0x30dd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d93f(%rip)     # 0x303b8
jne 0x12ab4
leaq 0x115df(%rip), %rsi     # 0x24061
leaq 0x1e847(%rip), %rdx     # 0x312d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d92a(%rip)     # 0x303c4
jne 0x12ab4
leaq 0x113fd(%rip), %rsi     # 0x23ea0
leaq 0x1e226(%rip), %rdx     # 0x30cd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d901(%rip)     # 0x303bc
jne 0x12b15
leaq 0x115cf(%rip), %rsi     # 0x24093
leaq 0x1e885(%rip), %rdx     # 0x31350
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x1d8e8(%rip)     # 0x303c4
jne 0x12b15
leaq 0x113bb(%rip), %rsi     # 0x23ea0
leaq 0x1e264(%rip), %rdx     # 0x30d50
movq %rbx, %rdi
xorl %eax, %eax
popq %rbx
popq %r14
popq %r15
jmp 0x21c0
leaq 0x115c5(%rip), %rdi     # 0x240c7
pushq $0x17
popq %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
popq %rbx
popq %r14
popq %r15
jmp 0x22b0
popq %rbx
popq %r14
popq %r15
retq
leaq 0x10921(%rip), %rdi     # 0x23443
pushq $0x19
jmp 0x11f0c
cmpb $0x1, 0x1d82c(%rip)     # 0x3035c
jne 0x11ff5
leaq 0x108c7(%rip), %rdi     # 0x23404
pushq $0x4
jmp 0x11fe9