// File: /workspace/github_cpp_makefile_star2_O2/bobverity[P]MavericK/readIn.cpp
// Function: readParameters(globals&)
void readParameters(globals &globals) {
    
    cout << "Loading parameters...\n";
    
    // open file stream
    globals.parameters_fileStream = safe_ifstream(globals.parameters_filePath, false, globals.outputLog_fileStream);
    
    // read in parameters file as strings
    vector<string> params;
    string line1;
    while (safe_getline(globals.parameters_fileStream, line1)) {
        istringstream ss(line1);
        string line2;
        while (getline(ss, line2, '\t')) {
            if (line2.size()>0) {
                string line3 = istringstream(line2).str();
                params.push_back(line3);
            }
        }
    }
    
    // close file stream
    globals.parameters_fileStream.close();
    
    // extract paths from file
    for (int i=1; i<int(params.size()); i++) {
        
        if (params[i]=="outputRoot" && i+1<int(params.size()))
            globals.outputRoot_fileName = params[i+1];
        
        if (params[i]=="data" && i+1<int(params.size()))
            globals.data_fileName = params[i+1];
        
        if (params[i]=="outputLog" && i+1<int(params.size()))
            globals.outputLog_fileName = params[i+1];
        
        if (params[i]=="outputLikelihood" && i+1<int(params.size()))
            globals.outputLikelihood_fileName = params[i+1];
        
        if (params[i]=="outputQmatrix_ind" && i+1<int(params.size()))
            globals.outputQmatrix_ind_fileName = params[i+1];
        
        if (params[i]=="outputQmatrix_pop" && i+1<int(params.size()))
            globals.outputQmatrix_pop_fileName = params[i+1];
        
        if (params[i]=="outputQmatrix_gene" && i+1<int(params.size()))
            globals.outputQmatrix_gene_fileName = params[i+1];
        
        if (params[i]=="outputQmatrixError_ind" && i+1<int(params.size()))
            globals.outputQmatrixError_ind_fileName = params[i+1];
        
        if (params[i]=="outputQmatrixError_pop" && i+1<int(params.size()))
            globals.outputQmatrixError_pop_fileName = params[i+1];
        
        if (params[i]=="outputQmatrixError_gene" && i+1<int(params.size()))
            globals.outputQmatrixError_gene_fileName = params[i+1];
        
        if (params[i]=="outputEvidence" && i+1<int(params.size()))
            globals.outputEvidence_fileName = params[i+1];
        
        if (params[i]=="outputEvidenceNormalised" && i+1<int(params.size()))
            globals.outputEvidenceNormalised_fileName = params[i+1];
        
        if (params[i]=="outputEvidenceDetails" && i+1<int(params.size()))
            globals.outputEvidenceDetails_fileName = params[i+1];
        
        if (params[i]=="outputPosteriorGrouping" && i+1<int(params.size()))
            globals.outputPosteriorGrouping_fileName = params[i+1];
        
        if (params[i]=="outputComparisonStatistics" && i+1<int(params.size()))
            globals.outputComparisonStatistics_fileName = params[i+1];
        
        if (params[i]=="outputEvanno" && i+1<int(params.size()))
            globals.outputEvanno_fileName = params[i+1];
        
        if (params[i]=="outputMaxLike_alleleFreqs" && i+1<int(params.size()))
            globals.outputMaxLike_alleleFreqs_fileName = params[i+1];
        
        if (params[i]=="outputMaxLike_admixFreqs" && i+1<int(params.size()))
            globals.outputMaxLike_admixFreqs_fileName = params[i+1];
        
    }
    
    // extract parameter values (as strings) from file
    for (int i=1; i<int(params.size()); i++) {
        
        if (params[i]=="headerRow_on" && i+1<int(params.size()))
            globals.parameterStrings["headerRow_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="popCol_on" && i+1<int(params.size()))
            globals.parameterStrings["popCol_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="ploidyCol_on" && i+1<int(params.size()))
            globals.parameterStrings["ploidyCol_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="ploidy" && i+1<int(params.size()))
            globals.parameterStrings["ploidy"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="missingData" && i+1<int(params.size()))
            globals.parameterStrings["missingData"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="Kmin" && i+1<int(params.size()))
            globals.parameterStrings["Kmin"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="Kmax" && i+1<int(params.size()))
            globals.parameterStrings["Kmax"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="admix_on" && i+1<int(params.size()))
            globals.parameterStrings["admix_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="fixAlpha_on" && i+1<int(params.size()))
            globals.parameterStrings["fixAlpha_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="alpha" && i+1<int(params.size()))
            globals.parameterStrings["alpha"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="alphaPropSD" && i+1<int(params.size()))
            globals.parameterStrings["alphaPropSD"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="exhaustive_on" && i+1<int(params.size()))
            globals.parameterStrings["exhaustive_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="mainRepeats" && i+1<int(params.size()))
            globals.parameterStrings["mainRepeats"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="mainBurnin" && i+1<int(params.size()))
            globals.parameterStrings["mainBurnin"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="mainSamples" && i+1<int(params.size()))
            globals.parameterStrings["mainSamples"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="mainThinning" && i+1<int(params.size()))
            globals.parameterStrings["mainThinning"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="thermodynamic_on" && i+1<int(params.size()))
            globals.parameterStrings["thermodynamic_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="thermodynamicRungs" && i+1<int(params.size()))
            globals.parameterStrings["thermodynamicRungs"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="thermodynamicBurnin" && i+1<int(params.size()))
            globals.parameterStrings["thermodynamicBurnin"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="thermodynamicSamples" && i+1<int(params.size()))
            globals.parameterStrings["thermodynamicSamples"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="thermodynamicThinning" && i+1<int(params.size()))
            globals.parameterStrings["thermodynamicThinning"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="EMalgorithm_on" && i+1<int(params.size()))
            globals.parameterStrings["EMalgorithm_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="EMrepeats" && i+1<int(params.size()))
            globals.parameterStrings["EMrepeats"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="EMiterations" && i+1<int(params.size()))
            globals.parameterStrings["EMiterations"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputLog_on" && i+1<int(params.size()))
            globals.parameterStrings["outputLog_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputLikelihood_on" && i+1<int(params.size()))
            globals.parameterStrings["outputLikelihood_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrix_ind_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrix_ind_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrix_pop_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrix_pop_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrix_gene_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrix_gene_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrixError_ind_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrixError_ind_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrixError_pop_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrixError_pop_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrixError_gene_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrixError_gene_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputEvidence_on" && i+1<int(params.size()))
            globals.parameterStrings["outputEvidence_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputEvidenceNormalised_on" && i+1<int(params.size()))
            globals.parameterStrings["outputEvidenceNormalised_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputEvidenceDetails_on" && i+1<int(params.size()))
            globals.parameterStrings["outputEvidenceDetails_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputPosteriorGrouping_on" && i+1<int(params.size()))
            globals.parameterStrings["outputPosteriorGrouping_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputComparisonStatistics_on" && i+1<int(params.size()))
            globals.parameterStrings["outputComparisonStatistics_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputEvanno_on" && i+1<int(params.size()))
            globals.parameterStrings["outputEvanno_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputMaxLike_alleleFreqs_on" && i+1<int(params.size()))
            globals.parameterStrings["outputMaxLike_alleleFreqs_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputMaxLike_admixFreqs_on" && i+1<int(params.size()))
            globals.parameterStrings["outputMaxLike_admixFreqs_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="outputQmatrix_structureFormat_on" && i+1<int(params.size()))
            globals.parameterStrings["outputQmatrix_structureFormat_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="suppressWarning1_on" && i+1<int(params.size()))
            globals.parameterStrings["suppressWarning1_on"] = pair<string,int>(params[i+1],1);
        
        if (params[i]=="fixLabels_on" && i+1<int(params.size()))
            globals.parameterStrings["fixLabels_on"] = pair<string,int>(params[i+1],1);
        
    }
    
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4b8, %rsp            # imm = 0x4B8
movq %rdi, %r14
movq 0x1c3b2(%rip), %rdi     # 0x33fb8
leaq 0x1032b(%rip), %rsi     # 0x27f38
callq 0x3350
leaq 0x300(%r14), %rsi
leaq 0x478(%rsp), %rbx
movq %rbx, %rdi
callq 0x3430
leaq 0x970(%r14), %rcx
leaq 0xd0(%rsp), %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0x17702
movq %r14, 0x18(%rsp)
leaq 0x560(%r14), %rdi
leaq 0xd0(%rsp), %rsi
movq %rdi, 0x20(%rsp)
callq 0x34f0
leaq 0xd0(%rsp), %r15
movq %r15, %rdi
callq 0x30e0
leaq 0x478(%rsp), %rdi
callq 0x3170
movq %rsp, %rax
andq $0x0, 0x10(%rax)
xorps %xmm0, %xmm0
movaps %xmm0, (%rax)
leaq 0x2e8(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
pushq $0x8
popq %rbx
leaq 0xb0(%rsp), %r14
pushq $0x9
popq %rbp
leaq 0x2f8(%rsp), %r12
leaq 0x498(%rsp), %r13
movq 0x20(%rsp), %rdi
leaq 0x2d8(%rsp), %rsi
callq 0x17a2f
movq 0x18(%rsp), %rcx
movq 0x560(%rcx), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x580(%rcx,%rax)
jne 0x17d95
movq %r15, %rdi
leaq 0x2d8(%rsp), %rsi
movl %ebx, %edx
callq 0x3520
leaq 0xc0(%rsp), %rax
movq %rax, 0xb0(%rsp)
andq $0x0, 0xb8(%rsp)
movb $0x0, 0xc0(%rsp)
movq %r15, %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x35e0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x17d80
cmpq $0x0, 0xb8(%rsp)
je 0x17d20
movq %r12, %rdi
movq %r14, %rsi
movl %ebx, %edx
callq 0x3520
movq %r13, %rdi
leaq 0x308(%rsp), %rsi
callq 0x34b0
movq %r12, %rdi
callq 0x3180
movq %rsp, %rdi
movq %r13, %rsi
callq 0x218a6
movq %r13, %rdi
callq 0x3170
jmp 0x17d20
movq %r14, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3180
jmp 0x17cbd
movq 0x20(%rsp), %rdi
callq 0x3090
movq 0x18(%rsp), %rax
leaq 0x40(%rax), %rcx
movq %rcx, 0x20(%rsp)
leaq 0x60(%rax), %rcx
movq %rcx, 0xa8(%rsp)
leaq 0xa0(%rax), %rcx
movq %rcx, 0xa0(%rsp)
leaq 0xc0(%rax), %rcx
movq %rcx, 0x98(%rsp)
leaq 0xe0(%rax), %rcx
movq %rcx, 0x90(%rsp)
leaq 0x100(%rax), %rcx
movq %rcx, 0x88(%rsp)
leaq 0x120(%rax), %rcx
movq %rcx, 0x80(%rsp)
leaq 0x140(%rax), %rcx
movq %rcx, 0x78(%rsp)
leaq 0x160(%rax), %rcx
movq %rcx, 0x70(%rsp)
leaq 0x180(%rax), %rcx
movq %rcx, 0x68(%rsp)
leaq 0x1a0(%rax), %rcx
movq %rcx, 0x60(%rsp)
leaq 0x1c0(%rax), %rcx
movq %rcx, 0x58(%rsp)
leaq 0x1e0(%rax), %rcx
movq %rcx, 0x50(%rsp)
leaq 0x200(%rax), %rcx
movq %rcx, 0x48(%rsp)
leaq 0x220(%rax), %rcx
movq %rcx, 0x40(%rsp)
leaq 0x240(%rax), %rcx
movq %rcx, 0x38(%rsp)
leaq 0x260(%rax), %rcx
movq %rcx, 0x30(%rsp)
leaq 0x280(%rax), %rax
movq %rax, 0x28(%rsp)
pushq $0x1
popq %rbx
pushq $0x20
popq %r15
leaq 0x101c8(%rip), %r12     # 0x2805e
leaq 0x101dd(%rip), %r13     # 0x2807a
leaq 0x101e4(%rip), %rbp     # 0x28088
leaq 0x101f8(%rip), %r14     # 0x280a3
movq (%rsp), %rdi
movq 0x8(%rsp), %rcx
movq %rcx, %rax
subq %rdi, %rax
shrq $0x5, %rax
cltq
cmpq %rax, %rbx
jge 0x18353
addq %r15, %rdi
leaq 0x1007f(%rip), %rsi     # 0x27f52
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x17f09
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x17f09
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x20(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0x1004b(%rip), %rsi     # 0x27f5e
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x17f4c
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x17f4c
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0xa8(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0x1000e(%rip), %rsi     # 0x27f64
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x17f8f
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x17f8f
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0xa0(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xffd6(%rip), %rsi      # 0x27f6f
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x17fd2
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x17fd2
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x98(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xffa5(%rip), %rsi      # 0x27f81
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18015
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18015
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x90(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xff75(%rip), %rsi      # 0x27f94
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18058
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18058
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x88(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xff45(%rip), %rsi      # 0x27fa7
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1809b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1809b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x80(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xff16(%rip), %rsi      # 0x27fbb
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x180db
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x180db
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x78(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfeee(%rip), %rsi      # 0x27fd3
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1811b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1811b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x70(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfec6(%rip), %rsi      # 0x27feb
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1815b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1815b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x68(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfe9f(%rip), %rsi      # 0x28004
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1819b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1819b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x60(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfe6f(%rip), %rsi      # 0x28014
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x181db
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x181db
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x58(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfe49(%rip), %rsi      # 0x2802e
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1821b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1821b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x50(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
leaq 0xfe20(%rip), %rsi      # 0x28045
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1825b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1825b
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x48(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
movq %r12, %rsi
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18297
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18297
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x40(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
movq %r13, %rsi
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x182d3
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x182d3
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x38(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
movq %rbp, %rsi
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1830f
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1830f
leaq (%rdi,%r15), %rsi
addq $0x20, %rsi
movq 0x30(%rsp), %rdi
callq 0x31f0
movq (%rsp), %rdi
addq %r15, %rdi
movq %r14, %rsi
callq 0x1687c
testb %al, %al
je 0x18347
movq (%rsp), %rax
movq 0x8(%rsp), %rcx
subq %rax, %rcx
shrq $0x5, %rcx
leal 0x1(%rbx), %edx
cmpl %ecx, %edx
jge 0x18347
leaq (%rax,%r15), %rsi
addq $0x20, %rsi
movq 0x28(%rsp), %rdi
callq 0x31f0
addq $0x20, %r15
incq %rbx
jmp 0x17eab
addq $0x2b70, 0x18(%rsp)     # imm = 0x2B70
pushq $0x1
popq %rbx
pushq $0x20
popq %rbp
leaq 0xd0(%rsp), %r15
leaq 0x2f8(%rsp), %r12
leaq 0xb0(%rsp), %r13
leaq 0xf390(%rip), %r14      # 0x27711
subq %rdi, %rcx
shrq $0x5, %rcx
movslq %ecx, %rax
cmpq %rax, %rbx
jge 0x199a1
addq %rbp, %rdi
leaq 0xf07b(%rip), %rsi      # 0x27419
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18417
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18417
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xf036(%rip), %rsi      # 0x27419
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xf005(%rip), %rsi      # 0x27426
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1849a
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1849a
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xefc0(%rip), %rsi      # 0x27426
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xef8c(%rip), %rsi      # 0x27430
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1851d
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1851d
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xef47(%rip), %rsi      # 0x27430
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xef18(%rip), %rsi      # 0x2743f
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x185a0
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x185a0
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xeed3(%rip), %rsi      # 0x2743f
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xee9f(%rip), %rsi      # 0x27449
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18623
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18623
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xee5a(%rip), %rsi      # 0x27449
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xee28(%rip), %rsi      # 0x27455
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x186a6
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x186a6
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xede3(%rip), %rsi      # 0x27455
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xedaa(%rip), %rsi      # 0x2745a
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18729
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18729
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xed65(%rip), %rsi      # 0x2745a
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xed2c(%rip), %rsi      # 0x2745f
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x187ac
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x187ac
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xece7(%rip), %rsi      # 0x2745f
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xecb7(%rip), %rsi      # 0x2746d
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1882f
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1882f
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xec72(%rip), %rsi      # 0x2746d
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0x10ef6(%rip), %rsi     # 0x2972f
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x188b2
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x188b2
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0x10eb1(%rip), %rsi     # 0x2972f
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xebc5(%rip), %rsi      # 0x27481
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18935
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18935
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xeb80(%rip), %rsi      # 0x27481
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xeb4e(%rip), %rsi      # 0x2748d
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x189b8
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x189b8
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xeb09(%rip), %rsi      # 0x2748d
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xead9(%rip), %rsi      # 0x2749b
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18a3b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18a3b
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xea94(%rip), %rsi      # 0x2749b
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xea66(%rip), %rsi      # 0x274ab
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18abe
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18abe
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xea21(%rip), %rsi      # 0x274ab
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe9f3(%rip), %rsi      # 0x274bb
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18b41
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18b41
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe9ae(%rip), %rsi      # 0x274bb
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe97c(%rip), %rsi      # 0x274c7
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18bc4
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18bc4
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe937(%rip), %rsi      # 0x274c7
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe906(%rip), %rsi      # 0x274d4
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18c47
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18c47
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe8c1(%rip), %rsi      # 0x274d4
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe897(%rip), %rsi      # 0x274e8
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18cca
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18cca
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe852(%rip), %rsi      # 0x274e8
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe827(%rip), %rsi      # 0x274fb
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18d4d
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18d4d
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe7e2(%rip), %rsi      # 0x274fb
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe7b8(%rip), %rsi      # 0x2750f
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18dd0
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18dd0
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe773(%rip), %rsi      # 0x2750f
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe74a(%rip), %rsi      # 0x27524
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18e53
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18e53
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe705(%rip), %rsi      # 0x27524
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe6dd(%rip), %rsi      # 0x2753a
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18ed6
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18ed6
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe698(%rip), %rsi      # 0x2753a
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe66c(%rip), %rsi      # 0x2754c
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18f59
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18f59
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe627(%rip), %rsi      # 0x2754c
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe5f3(%rip), %rsi      # 0x27556
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x18fdc
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x18fdc
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe5ae(%rip), %rsi      # 0x27556
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe57d(%rip), %rsi      # 0x27563
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1905f
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1905f
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe538(%rip), %rsi      # 0x27563
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe507(%rip), %rsi      # 0x27570
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x190e2
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x190e2
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe4c2(%rip), %rsi      # 0x27570
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe498(%rip), %rsi      # 0x27584
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19165
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19165
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe453(%rip), %rsi      # 0x27584
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe42a(%rip), %rsi      # 0x27599
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x191e8
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x191e8
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe3e5(%rip), %rsi      # 0x27599
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe3bc(%rip), %rsi      # 0x275ae
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1926b
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1926b
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe377(%rip), %rsi      # 0x275ae
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe34f(%rip), %rsi      # 0x275c4
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x192ee
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x192ee
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe30a(%rip), %rsi      # 0x275c4
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe2e6(%rip), %rsi      # 0x275de
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19371
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19371
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe2a1(%rip), %rsi      # 0x275de
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe27d(%rip), %rsi      # 0x275f8
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x193f4
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x193f4
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe238(%rip), %rsi      # 0x275f8
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe215(%rip), %rsi      # 0x27613
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19477
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19477
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe1d0(%rip), %rsi      # 0x27613
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe1a4(%rip), %rsi      # 0x27625
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x194fa
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x194fa
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe15f(%rip), %rsi      # 0x27625
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe13d(%rip), %rsi      # 0x27641
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1957d
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1957d
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe0f8(%rip), %rsi      # 0x27641
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe0d3(%rip), %rsi      # 0x2765a
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19600
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19600
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe08e(%rip), %rsi      # 0x2765a
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe06b(%rip), %rsi      # 0x27675
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19683
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19683
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xe026(%rip), %rsi      # 0x27675
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xe006(%rip), %rsi      # 0x27693
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19706
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19706
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xdfc1(%rip), %rsi      # 0x27693
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xdf93(%rip), %rsi      # 0x276a3
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19789
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19789
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xdf4e(%rip), %rsi      # 0x276a3
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xdf2d(%rip), %rsi      # 0x276c0
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1980c
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1980c
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xdee8(%rip), %rsi      # 0x276c0
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xdec6(%rip), %rsi      # 0x276dc
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x1988f
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x1988f
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xde81(%rip), %rsi      # 0x276dc
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
leaq 0xde64(%rip), %rsi      # 0x276fd
callq 0x1687c
movq (%rsp), %rdi
testb %al, %al
je 0x19912
movq 0x8(%rsp), %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %ecx
cmpl %eax, %ecx
jge 0x19912
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
leaq 0xde1f(%rip), %rsi      # 0x276fd
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
addq %rbp, %rdi
movq %r14, %rsi
callq 0x1687c
movq (%rsp), %rdi
movq 0x8(%rsp), %rcx
testb %al, %al
je 0x19995
movq %rcx, %rax
subq %rdi, %rax
shrq $0x5, %rax
leal 0x1(%rbx), %edx
cmpl %eax, %edx
jge 0x19995
leaq (%rdi,%rbp), %rsi
addq $0x20, %rsi
movq %r15, %rdi
callq 0x3430
movl $0x1, 0xf0(%rsp)
movq %r12, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x3130
movq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x11150
movq %rax, %rdi
movq %r15, %rsi
callq 0x111b6
movq %r12, %rdi
callq 0x3170
movq %r15, %rdi
callq 0x3170
movq (%rsp), %rdi
movq 0x8(%rsp), %rcx
addq $0x20, %rbp
incq %rbx
jmp 0x18381
leaq 0x2d8(%rsp), %rdi
callq 0x3170
movq %rsp, %rdi
callq 0x995e
addq $0x4b8, %rsp            # imm = 0x4B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x19bfe
movq %rax, %rbx
leaq 0xd0(%rsp), %rdi
callq 0x30e0
jmp 0x199e2
movq %rax, %rbx
leaq 0x478(%rsp), %rdi
callq 0x3170
jmp 0x19c5b
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bfe
jmp 0x19bd2
jmp 0x19bd2
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bdb
jmp 0x19bfe
jmp 0x19bdb
jmp 0x19bd2
jmp 0x19bd2
movq %rax, %rbx
jmp 0x19beb
jmp 0x19bfe
jmp 0x19bfe
movq %rax, %rbx
leaq 0x2f8(%rsp), %rdi
callq 0x3170
leaq 0xd0(%rsp), %rdi
callq 0x3170
jmp 0x19c46
jmp 0x19bfe
jmp 0x19bfe
movq %rax, %rbx
jmp 0x19c46
movq %rax, %rbx
leaq 0x498(%rsp), %rdi
callq 0x3170
jmp 0x19c2c
movq %rax, %rbx
leaq 0x2f8(%rsp), %rdi
callq 0x3180
jmp 0x19c2c
jmp 0x19c29
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0x3170
leaq 0xd0(%rsp), %rdi
callq 0x3180
leaq 0x2d8(%rsp), %rdi
callq 0x3170
movq %rsp, %rdi
callq 0x995e
movq %rbx, %rdi
callq 0x35a0