// File: /workspace/github_c_makefile_star2_O3/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 0x11e2c(%rip), %rdi     # 0x26d96
movl $0x1b, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11e2f(%rip), %rsi     # 0x26db2
leaq 0x21526(%rip), %rdx     # 0x364b0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpl $0x2, 0x2150d(%rip)     # 0x364a8
jl 0x14fb6
leaq 0x11e26(%rip), %rdi     # 0x26dca
movl $0x1b, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11e29(%rip), %rdi     # 0x26de6
movl $0x8, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movq 0x216f2(%rip), %rdx     # 0x366c8
leaq 0x11e12(%rip), %rsi     # 0x26def
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x211b3(%rip), %edx     # 0x361a0
leaq 0x11e34(%rip), %rsi     # 0x26e28
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x211a0(%rip), %edx     # 0x361a4
leaq 0x11e55(%rip), %rsi     # 0x26e60
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x2118d(%rip), %edx     # 0x361a8
leaq 0x11e76(%rip), %rax     # 0x26e98
leaq 0x11ea7(%rip), %rsi     # 0x26ed0
cmpb $0x0, 0x21358(%rip)     # 0x36388
cmovneq %rax, %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
leaq 0x11ec3(%rip), %rdi     # 0x26f08
movl $0xe, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movl 0x2114f(%rip), %edx     # 0x361ac
leaq 0x11eb3(%rip), %rsi     # 0x26f17
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x21143(%rip)     # 0x361b8
jne 0x15090
movsd 0x21141(%rip), %xmm0    # 0x361c0
leaq 0x11ec9(%rip), %rsi     # 0x26f4f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x21629(%rip)     # 0x366c0
jne 0x150e9
movsd 0x21127(%rip), %xmm0    # 0x361c8
leaq 0x11ee0(%rip), %rsi     # 0x26f88
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21116(%rip), %xmm0    # 0x361d0
leaq 0x11f00(%rip), %rsi     # 0x26fc1
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x210ed(%rip), %xmm0    # 0x361c0
leaq 0x11e75(%rip), %rsi     # 0x26f4f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
jmp 0x1517b
cmpb $0x1, 0x210c4(%rip)     # 0x361b4
jne 0x1517b
leaq 0x11efd(%rip), %rdi     # 0x26ffa
movl $0x1, %r14d
movl $0x35, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpl $0x0, 0x21094(%rip)     # 0x361b0
jle 0x1517b
leaq 0x11f0b(%rip), %r15     # 0x27030
movq 0x22604(%rip), %rax     # 0x37730
movl (%rax,%r14,4), %ecx
movq 0x225f1(%rip), %rax     # 0x37728
movl (%rax,%r14,4), %r8d
movq 0x225f6(%rip), %rax     # 0x37738
movl (%rax,%r14,4), %r9d
subl -0x4(%rax,%r14,4), %r9d
movq 0x225ee(%rip), %rax     # 0x37740
movsd (%rax,%r14,8), %xmm0
movq %rbx, %rdi
movq %r15, %rsi
movl %r14d, %edx
movb $0x1, %al
callq 0x21c0
leaq 0x1(%r14), %rax
movslq 0x2103d(%rip), %rcx     # 0x361b0
cmpq %rcx, %r14
movq %rax, %r14
jl 0x15125
cmpb $0x1, 0x21202(%rip)     # 0x36384
jne 0x151a1
leaq 0x11ece(%rip), %rsi     # 0x27059
leaq 0x2203e(%rip), %rdx     # 0x371d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x15298
leaq 0x11ee8(%rip), %rdi     # 0x27090
movl $0xb, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x224ee(%rip), %xmm0    # 0x376b0
leaq 0x11ed3(%rip), %rsi     # 0x2709c
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x212ce(%rip)     # 0x364a8
jl 0x151f5
movsd 0x21364(%rip), %xmm0    # 0x36548
leaq 0x11eea(%rip), %rsi     # 0x270d5
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x20fa4(%rip)     # 0x361a0
jl 0x15239
movsd 0x224ca(%rip), %xmm0    # 0x376d0
leaq 0x11f01(%rip), %rsi     # 0x2710e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x2128a(%rip)     # 0x364a8
jl 0x15239
movsd 0x21328(%rip), %xmm0    # 0x36550
leaq 0x11f18(%rip), %rsi     # 0x27147
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x20fa8(%rip)     # 0x361e8
jne 0x1525d
movsd 0x21126(%rip), %xmm0    # 0x36370
leaq 0x11f2f(%rip), %rsi     # 0x27180
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
jmp 0x15298
cmpb $0x1, 0x20f88(%rip)     # 0x361ec
jne 0x1527f
movl 0x20f84(%rip), %edx     # 0x361f0
leaq 0x11f47(%rip), %rsi     # 0x271ba
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x15298
leaq 0x11f6c(%rip), %rdi     # 0x271f2
movl $0x22, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11f76(%rip), %rdi     # 0x27215
movl $0x17, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x2111f(%rip), %xmm0    # 0x363d8
leaq 0x11f6d(%rip), %rsi     # 0x2722d
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x2110e(%rip), %xmm0    # 0x363e0
leaq 0x11f8d(%rip), %rsi     # 0x27266
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x2109e(%rip)     # 0x36388
jne 0x15304
leaq 0x11fac(%rip), %rsi     # 0x2729f
leaq 0x21f56(%rip), %rdx     # 0x37250
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x210b5(%rip)     # 0x363c0
jne 0x15d40
leaq 0x11fbe(%rip), %rdi     # 0x272d6
movl $0x11, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
leaq 0x11fb7(%rip), %rdi     # 0x272e8
movl $0x33, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movl 0x20eab(%rip), %eax     # 0x361f4
testl %eax, %eax
je 0x1535b
cmpl $0x1, %eax
jne 0x15374
leaq 0x11fc3(%rip), %rdi     # 0x2731c
jmp 0x15362
leaq 0x12115(%rip), %rdi     # 0x27477
movl $0x3, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x21051(%rip)     # 0x363cc
jne 0x153e4
movl 0x2104d(%rip), %edx     # 0x363d0
leaq 0x11f96(%rip), %rsi     # 0x27320
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpl $0x0, 0x21035(%rip)     # 0x363d0
jle 0x1552d
xorl %r15d, %r15d
leaq 0x11fab(%rip), %r14     # 0x27356
movq 0x2233e(%rip), %rax     # 0x376f0
movl (%rax,%r15,4), %edx
movq 0x2232b(%rip), %rax     # 0x376e8
movsd (%rax,%r15,8), %xmm0
movq %rbx, %rdi
movq %r14, %rsi
movb $0x1, %al
callq 0x21c0
incq %r15
movslq 0x20ff6(%rip), %rax     # 0x363d0
cmpq %rax, %r15
jl 0x153ab
jmp 0x1552d
movsd 0x20e14(%rip), %xmm1    # 0x36200
xorpd %xmm0, %xmm0
ucomisd %xmm0, %xmm1
jne 0x15416
jp 0x15416
leaq 0x11f92(%rip), %rdi     # 0x27391
movl $0x2a, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
jmp 0x1552d
jbe 0x1552d
movsd 0xdcdc(%rip), %xmm0     # 0x23100
subsd %xmm1, %xmm0
leaq 0x11f8d(%rip), %rsi     # 0x273bc
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x20dbf(%rip), %xmm0    # 0x36200
leaq 0x11fae(%rip), %rsi     # 0x273f6
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x11fd7(%rip), %rdi     # 0x27430
movl $0x33, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movl 0x20d87(%rip), %eax     # 0x361f8
cmpl $0x2, %eax
je 0x1549f
cmpl $0x1, %eax
je 0x15491
testl %eax, %eax
jne 0x15507
leaq 0x11fda(%rip), %rdi     # 0x27464
movl $0xb, %esi
jmp 0x154fa
leaq 0x11fd8(%rip), %rdi     # 0x27470
movl $0xa, %esi
jmp 0x154fa
leaq 0x11fd5(%rip), %rdi     # 0x2747b
movl $0x13, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x20e91(%rip)     # 0x36350
jne 0x154cf
leaq 0x11fc7(%rip), %rdi     # 0x2748f
movl $0x2, %esi
jmp 0x154fa
cmpb $0x1, 0x20e7e(%rip)     # 0x36354
jne 0x154e1
leaq 0x11fb3(%rip), %rdi     # 0x27492
jmp 0x154f5
cmpb $0x1, 0x20e70(%rip)     # 0x36358
jne 0x16070
leaq 0x11fa1(%rip), %rdi     # 0x27496
movl $0x3, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x20e52(%rip)     # 0x36360
jne 0x1605f
movsd 0x20e4c(%rip), %xmm0    # 0x36368
leaq 0x11f7c(%rip), %rsi     # 0x2749f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x1, 0x20cc0(%rip)     # 0x361f4
jne 0x15691
movsd 0x20cbe(%rip), %xmm0    # 0x36200
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x15691
cmpl $0x2, 0x20ca1(%rip)     # 0x361f8
jne 0x15691
testb $0x1, 0x20e68(%rip)     # 0x363cc
jne 0x15691
movsd 0x20c9e(%rip), %xmm0    # 0x36210
movsd 0x20c9e(%rip), %xmm1    # 0x36218
movsd 0x20c9e(%rip), %xmm2    # 0x36220
movsd 0x20c9e(%rip), %xmm3    # 0x36228
leaq 0x11f62(%rip), %rsi     # 0x274f3
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
cmpb $0x1, 0x20db2(%rip)     # 0x36354
jne 0x155c5
movsd 0x20c84(%rip), %xmm0    # 0x36230
movsd 0x22244(%rip), %xmm1    # 0x377f8
leaq 0x11f83(%rip), %rsi     # 0x2753e
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
cmpb $0x1, 0x20c6c(%rip)     # 0x36238
jne 0x15691
movsd 0x20c66(%rip), %xmm0    # 0x36240
movsd 0x20c66(%rip), %xmm1    # 0x36248
movsd 0x20c66(%rip), %xmm2    # 0x36250
movsd 0x20c66(%rip), %xmm3    # 0x36258
leaq 0x11f8f(%rip), %rsi     # 0x27588
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
movsd 0x20c55(%rip), %xmm0    # 0x36260
movsd 0x20c55(%rip), %xmm1    # 0x36268
movsd 0x20c55(%rip), %xmm2    # 0x36270
movsd 0x20c55(%rip), %xmm3    # 0x36278
leaq 0x11fa9(%rip), %r14     # 0x275d3
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x20c41(%rip), %xmm0    # 0x36280
movsd 0x20c41(%rip), %xmm1    # 0x36288
movsd 0x20c41(%rip), %xmm2    # 0x36290
movsd 0x20c41(%rip), %xmm3    # 0x36298
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x20c34(%rip), %xmm0    # 0x362a0
movsd 0x20c34(%rip), %xmm1    # 0x362a8
movsd 0x20c34(%rip), %xmm2    # 0x362b0
movsd 0x20c34(%rip), %xmm3    # 0x362b8
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x20b47(%rip), %xmm0    # 0x361e0
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x156b4
leaq 0x11f74(%rip), %rsi     # 0x2761e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x11f9c(%rip), %rdi     # 0x27657
movl $0xb, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x20cac(%rip)     # 0x36380
jne 0x156ef
movl 0x220cc(%rip), %edx     # 0x377a8
leaq 0x11f80(%rip), %rsi     # 0x27663
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
jmp 0x15743
movsd 0x20ae1(%rip), %xmm0    # 0x361d8
leaq 0x11f9d(%rip), %rsi     # 0x2769b
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x20e20(%rip), %xmm0    # 0x36530
leaq 0x11fbd(%rip), %rsi     # 0x276d4
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x20d80(%rip)     # 0x364a8
jl 0x15743
movsd 0x20e06(%rip), %xmm0    # 0x36538
leaq 0x11fd4(%rip), %rsi     # 0x2770d
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21f45(%rip), %xmm0    # 0x37690
leaq 0x11ff4(%rip), %rsi     # 0x27746
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x20a3d(%rip)     # 0x361a0
jl 0x157a9
testb $0x1, 0x20c14(%rip)     # 0x36380
jne 0x157a9
cmpl $0x2, 0x20d33(%rip)     # 0x364a8
jl 0x15790
movsd 0x20dc1(%rip), %xmm0    # 0x36540
leaq 0x11ff9(%rip), %rsi     # 0x2777f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21f20(%rip), %xmm0    # 0x376b8
leaq 0x12019(%rip), %rsi     # 0x277b8
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21ee7(%rip), %xmm0    # 0x37698
leaq 0x12039(%rip), %rsi     # 0x277f1
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x209d7(%rip)     # 0x361a0
jl 0x1580f
movsd 0x21eed(%rip), %xmm0    # 0x376c0
leaq 0x12050(%rip), %rsi     # 0x2782a
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorps %xmm0, %xmm0
cvtsi2sdl 0x20da1(%rip), %xmm0 # 0x36590
xorps %xmm1, %xmm1
cvtsi2sdl 0x209a6(%rip), %xmm1 # 0x361a0
divsd %xmm1, %xmm0
leaq 0x1205e(%rip), %rsi     # 0x27863
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21df9(%rip), %xmm0    # 0x37610
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x15896
leaq 0x12074(%rip), %rdi     # 0x2789c
movl $0x10, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x21dce(%rip), %xmm0    # 0x37610
leaq 0x12064(%rip), %rsi     # 0x278ad
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21e45(%rip), %xmm0    # 0x376a0
leaq 0x12084(%rip), %rsi     # 0x278e6
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm1, %xmm1
cmpl $0x2, 0x20929(%rip)     # 0x361a0
jl 0x15896
movsd 0x21e47(%rip), %xmm0    # 0x376c8
leaq 0x12097(%rip), %rsi     # 0x2791f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm1, %xmm1
movsd 0x21d5a(%rip), %xmm0    # 0x375f8
ucomisd %xmm1, %xmm0
jbe 0x1590d
leaq 0x120ad(%rip), %rdi     # 0x27958
movl $0x18, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x21d33(%rip), %xmm0    # 0x375f8
leaq 0x120a5(%rip), %rsi     # 0x27971
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x21dca(%rip), %xmm0    # 0x376a8
leaq 0x120c5(%rip), %rsi     # 0x279aa
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpl $0x2, 0x208aa(%rip)     # 0x361a0
jl 0x1590d
leaq 0x120e4(%rip), %rsi     # 0x279e3
xorpd %xmm0, %xmm0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x12108(%rip), %rdi     # 0x27a1c
movl $0x11, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x20aca(%rip), %xmm0    # 0x363f8
xorpd %xmm3, %xmm3
ucomisd %xmm3, %xmm0
jne 0x1597b
jp 0x1597b
movsd 0x20ac6(%rip), %xmm1    # 0x36408
ucomisd %xmm3, %xmm1
jne 0x1597b
jp 0x1597b
movsd 0x20abe(%rip), %xmm1    # 0x36410
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm1
jne 0x1597b
jp 0x1597b
leaq 0x120c9(%rip), %rsi     # 0x27a2e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
xorpd %xmm3, %xmm3
movsd 0x20a7d(%rip), %xmm0    # 0x363f8
ucomisd %xmm3, %xmm0
jbe 0x15992
leaq 0x120df(%rip), %rsi     # 0x27a67
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x20a6e(%rip), %xmm0    # 0x36408
ucomisd 0xd75e(%rip), %xmm0     # 0x23100
jne 0x159c7
jp 0x159c7
movsd 0x20a6a(%rip), %xmm0    # 0x36418
movsd 0x20a6a(%rip), %xmm1    # 0x36420
leaq 0x120e3(%rip), %rsi     # 0x27aa0
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x20a41(%rip), %xmm0    # 0x36410
ucomisd 0xd729(%rip), %xmm0     # 0x23100
jne 0x159fc
jp 0x159fc
movsd 0x20a45(%rip), %xmm0    # 0x36428
movsd 0x20a45(%rip), %xmm1    # 0x36430
leaq 0x120ee(%rip), %rsi     # 0x27ae0
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
cmpb $0x1, 0x209a9(%rip)     # 0x363ac
jne 0x15b19
movsd 0x20a5f(%rip), %xmm0    # 0x36470
ucomisd 0xd6e7(%rip), %xmm0     # 0x23100
movsd 0x20a57(%rip), %xmm0    # 0x36478
jne 0x15a40
jp 0x15a40
movsd 0x20a53(%rip), %xmm1    # 0x36480
leaq 0x120ec(%rip), %rsi     # 0x27b20
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x15a51
leaq 0x12119(%rip), %rsi     # 0x27b60
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x209f7(%rip), %xmm0    # 0x36450
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x15aca
leaq 0x1212f(%rip), %rdi     # 0x27b99
movl $0x16, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpl $0x1, 0x209dd(%rip)     # 0x36460
leaq 0x12126(%rip), %rax     # 0x27bb0
leaq 0x12135(%rip), %rdi     # 0x27bc6
cmoveq %rax, %rdi
movl $0x15, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x209a1(%rip), %xmm0    # 0x36450
movsd 0x209a1(%rip), %xmm1    # 0x36458
leaq 0x1211e(%rip), %rsi     # 0x27bdc
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x15adb
leaq 0x12136(%rip), %rsi     # 0x27c07
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x209a5(%rip), %xmm0    # 0x36488
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x15b08
movsd 0x2099b(%rip), %xmm1    # 0x36490
leaq 0x12144(%rip), %rsi     # 0x27c40
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
jmp 0x15b19
leaq 0x12171(%rip), %rsi     # 0x27c80
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x2091f(%rip), %xmm0    # 0x36440
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x15b5b
jp 0x15b5b
testb $0x1, 0x20878(%rip)     # 0x363ac
jne 0x15b5b
leaq 0x1217c(%rip), %rdi     # 0x27cb9
movl $0x2d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
xorpd %xmm1, %xmm1
movsd 0x208e5(%rip), %xmm0    # 0x36440
ucomisd %xmm1, %xmm0
jbe 0x15b9b
leaq 0x1217f(%rip), %rdi     # 0x27ce7
movl $0xc, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x208be(%rip), %xmm0    # 0x36440
movsd 0x208be(%rip), %xmm1    # 0x36448
leaq 0x12163(%rip), %rsi     # 0x27cf4
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
leaq 0x12192(%rip), %rdi     # 0x27d34
movl $0x5, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
cmpb $0x1, 0x207f1(%rip)     # 0x363ac
jne 0x15c08
cmpb $0x1, 0x2082c(%rip)     # 0x363f0
jne 0x15c26
leaq 0x121a8(%rip), %rdi     # 0x27d75
movl $0x29, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
movsd 0x20801(%rip), %xmm0    # 0x363e8
leaq 0x121b1(%rip), %rsi     # 0x27d9f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
leaq 0x121db(%rip), %rsi     # 0x27dda
leaq 0x20772(%rip), %rax     # 0x36378
jmp 0x15c34
leaq 0x122c3(%rip), %rdi     # 0x27ed2
movl $0x23, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x22b0
jmp 0x15d40
leaq 0x1210d(%rip), %rsi     # 0x27d3a
leaq 0x207b4(%rip), %rax     # 0x363e8
movsd (%rax), %xmm0
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x2081e(%rip), %xmm0    # 0x36468
leaq 0x121c3(%rip), %rsi     # 0x27e14
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x207d5(%rip), %xmm0    # 0x36438
leaq 0x121e4(%rip), %rsi     # 0x27e4e
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x20645(%rip)     # 0x362c0
jne 0x15d40
movsd 0x20647(%rip), %xmm0    # 0x362d0
movsd 0x20647(%rip), %xmm1    # 0x362d8
movsd 0x20647(%rip), %xmm2    # 0x362e0
movsd 0x20647(%rip), %xmm3    # 0x362e8
leaq 0x121df(%rip), %rsi     # 0x27e87
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
movsd 0x20636(%rip), %xmm0    # 0x362f0
movsd 0x20636(%rip), %xmm1    # 0x362f8
movsd 0x20636(%rip), %xmm2    # 0x36300
movsd 0x20636(%rip), %xmm3    # 0x36308
leaq 0x118fa(%rip), %r14     # 0x275d3
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x20622(%rip), %xmm0    # 0x36310
movsd 0x20622(%rip), %xmm1    # 0x36318
movsd 0x20622(%rip), %xmm2    # 0x36320
movsd 0x20622(%rip), %xmm3    # 0x36328
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
movsd 0x20615(%rip), %xmm0    # 0x36330
movsd 0x20615(%rip), %xmm1    # 0x36338
movsd 0x20615(%rip), %xmm2    # 0x36340
movsd 0x20615(%rip), %xmm3    # 0x36348
movq %rbx, %rdi
movq %r14, %rsi
movb $0x4, %al
callq 0x21c0
leaq 0x121af(%rip), %rsi     # 0x27ef6
leaq 0x20b82(%rip), %rdx     # 0x368d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20641(%rip)     # 0x363a0
jne 0x15d9a
leaq 0x121b2(%rip), %rsi     # 0x27f1a
leaq 0x21361(%rip), %rdx     # 0x370d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20644(%rip)     # 0x363c4
jne 0x15d9a
leaq 0x121ad(%rip), %rsi     # 0x27f36
leaq 0x20bc0(%rip), %rdx     # 0x36950
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20603(%rip)     # 0x363a4
jne 0x15ddc
leaq 0x1219c(%rip), %rsi     # 0x27f46
leaq 0x2139f(%rip), %rdx     # 0x37150
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20602(%rip)     # 0x363c4
jne 0x15ddc
leaq 0x1216b(%rip), %rsi     # 0x27f36
leaq 0x20bfe(%rip), %rdx     # 0x369d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x205dd(%rip)     # 0x363c0
jne 0x1603b
cmpb $0x1, 0x2059c(%rip)     # 0x3638c
jne 0x15e2b
leaq 0x1216a(%rip), %rsi     # 0x27f63
leaq 0x21050(%rip), %rdx     # 0x36e50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x205b3(%rip)     # 0x363c4
jne 0x15e2b
leaq 0x1211c(%rip), %rsi     # 0x27f36
leaq 0x20c2f(%rip), %rdx     # 0x36a50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2056a(%rip)     # 0x3639c
jne 0x15e6d
leaq 0x1214d(%rip), %rsi     # 0x27f88
leaq 0x2120e(%rip), %rdx     # 0x37050
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20571(%rip)     # 0x363c4
jne 0x15e6d
leaq 0x120da(%rip), %rsi     # 0x27f36
leaq 0x20ded(%rip), %rdx     # 0x36c50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2051c(%rip)     # 0x36390
jne 0x15ec1
leaq 0x12131(%rip), %rax     # 0x27fae
leaq 0x1215e(%rip), %rsi     # 0x27fe2
cmpb $0x0, 0x2053d(%rip)     # 0x363c8
cmovneq %rax, %rsi
leaq 0x2103a(%rip), %rdx     # 0x36ed0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2051d(%rip)     # 0x363c4
jne 0x15ec1
leaq 0x12086(%rip), %rsi     # 0x27f36
leaq 0x20c19(%rip), %rdx     # 0x36ad0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x204d0(%rip)     # 0x36398
jne 0x15f15
leaq 0x12137(%rip), %rax     # 0x28008
leaq 0x12165(%rip), %rsi     # 0x2803d
cmpb $0x0, 0x204e9(%rip)     # 0x363c8
cmovneq %rax, %rsi
leaq 0x210e6(%rip), %rdx     # 0x36fd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x204c9(%rip)     # 0x363c4
jne 0x15f15
leaq 0x12032(%rip), %rsi     # 0x27f36
leaq 0x20cc5(%rip), %rdx     # 0x36bd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20478(%rip)     # 0x36394
jne 0x15f69
leaq 0x1213f(%rip), %rax     # 0x28064
leaq 0x1216d(%rip), %rsi     # 0x28099
cmpb $0x0, 0x20495(%rip)     # 0x363c8
cmovneq %rax, %rsi
leaq 0x21012(%rip), %rdx     # 0x36f50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x20475(%rip)     # 0x363c4
jne 0x15f69
leaq 0x11fde(%rip), %rsi     # 0x27f36
leaq 0x20bf1(%rip), %rdx     # 0x36b50
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2043c(%rip)     # 0x363ac
jne 0x15fb2
leaq 0x12147(%rip), %rsi     # 0x280c0
leaq 0x220e0(%rip), %rdx     # 0x38060
leaq 0x21449(%rip), %rcx     # 0x373d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2042c(%rip)     # 0x363c4
jne 0x15fb2
leaq 0x11f95(%rip), %rsi     # 0x27f36
leaq 0x20e28(%rip), %rdx     # 0x36dd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x203ff(%rip)     # 0x363b8
jne 0x15ff4
leaq 0x12135(%rip), %rsi     # 0x280f7
leaq 0x21307(%rip), %rdx     # 0x372d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x203ea(%rip)     # 0x363c4
jne 0x15ff4
leaq 0x11f53(%rip), %rsi     # 0x27f36
leaq 0x20ce6(%rip), %rdx     # 0x36cd0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x203c1(%rip)     # 0x363bc
jne 0x16059
leaq 0x12125(%rip), %rsi     # 0x28129
leaq 0x21345(%rip), %rdx     # 0x37350
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x203a8(%rip)     # 0x363c4
jne 0x16059
leaq 0x11f11(%rip), %rsi     # 0x27f36
leaq 0x20d24(%rip), %rdx     # 0x36d50
movq %rbx, %rdi
xorl %eax, %eax
popq %rbx
popq %r14
popq %r15
jmp 0x21c0
leaq 0x1211b(%rip), %rdi     # 0x2815d
movl $0x17, %esi
movl $0x1, %edx
movq %rbx, %rcx
popq %rbx
popq %r14
popq %r15
jmp 0x22b0
popq %rbx
popq %r14
popq %r15
retq
leaq 0x11473(%rip), %rdi     # 0x274d9
movl $0x19, %esi
jmp 0x15404
cmpb $0x1, 0x202e5(%rip)     # 0x3635c
jne 0x15507
leaq 0x11416(%rip), %rdi     # 0x2749a
movl $0x4, %esi
jmp 0x154fa