// File: /workspace/github_cpp_makefile_star2_O1/millanek[P]Dsuite/./Dsuite_utils.h
// Function: TrioDinfo::makeOutVec(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> const&, bool, bool, int)
std::vector<string> makeOutVec(const std::vector<string>& trio, const bool fStats, const bool KS_test, const int arrangement) {
        
        int numCols = 9; if (fStats) numCols++; if(KS_test) numCols = numCols + 2;
        std::vector<string> outVec; outVec.resize(numCols);
        int patternsI = 6; if (fStats) patternsI++; if(KS_test) patternsI = patternsI + 2; // Where will the BBAA, ABBA, etc. counts be put
        
        double KSpval; double KSpvalStrongSitesOnly;
        if (KS_test) {
            KSpval = testIfStrongSitesUniformlyDistributed(arrangement);
            if (KSpval < 2.3e-16) KSpval = 2.3e-16;
            KSpvalStrongSitesOnly = testIfStrongSitesUniformlyDistributed(arrangement, "strongSitesOnly");
            if (KSpvalStrongSitesOnly < 2.3e-16) KSpvalStrongSitesOnly = 2.3e-16;
        }
        
        if (std::fabs(D1_p) < 2.3e-16) { D1_p = 2.3e-16; }
        if (std::fabs(D2_p) < 2.3e-16) { D2_p = 2.3e-16; }
        if (std::fabs(D3_p) < 2.3e-16) { D3_p = 2.3e-16; }
        
        double f4ratio; double Dnum;
        
        switch (arrangement) {
                
        case P3isTrios2_Dpositive:
            outVec[0] = trio[0]; outVec[1] = trio[1]; outVec[2] = trio[2];
            outVec[3] = numToString(D1); outVec[4] = numToString(D1_Z);
            outVec[5] = numToString(D1_p); outVec[patternsI] = numToString(BBAAtotal);
            outVec[patternsI+1] = numToString(ABBAtotal); outVec[patternsI+2] = numToString(BABAtotal);
            if (fStats) { Dnum = ABBAtotal-BABAtotal; f4ratio = Dnum/F_G_denom1; }
            break;
                
        case P3isTrios2_Dnegative:
            outVec[0] = trio[1]; outVec[1] = trio[0]; outVec[2] = trio[2];
            outVec[3] = numToString(std::fabs(D1)); outVec[4] = numToString(D1_Z);
            outVec[5] = numToString(D1_p); outVec[patternsI] = numToString(BBAAtotal);
            outVec[patternsI+1] = numToString(BABAtotal); outVec[patternsI+2] = numToString(ABBAtotal);
            if (fStats) { Dnum = BABAtotal-ABBAtotal; f4ratio = Dnum/F_G_denom1_reversed; }
            break;
                
        case P3isTrios1_Dpositive:
            outVec[0] = trio[0]; outVec[1] = trio[2];
            outVec[2] = trio[1]; outVec[3] = numToString(std::fabs(D2)); outVec[4] = numToString(D2_Z);
            outVec[5] = numToString(D2_p); outVec[patternsI] = numToString(BABAtotal);
            outVec[patternsI+1] = numToString(ABBAtotal); outVec[patternsI+2] = numToString(BBAAtotal);
            if (fStats) { Dnum = ABBAtotal - BBAAtotal; f4ratio = Dnum/F_G_denom2; }
            break;
        
        case P3isTrios1_Dnegative:
            outVec[0] = trio[2]; outVec[1] = trio[0];
            outVec[2] = trio[1]; outVec[3] = numToString(std::fabs(D2)); outVec[4] = numToString(D2_Z);
            outVec[5] = numToString(D2_p); outVec[patternsI] = numToString(BABAtotal);
            outVec[patternsI+1] = numToString(BBAAtotal); outVec[patternsI+2] = numToString(ABBAtotal);
            if (fStats) { Dnum = BBAAtotal - ABBAtotal; f4ratio = Dnum/F_G_denom2_reversed; }
            break;
                
        case P3isTrios0_Dpositive:
            outVec[0] = trio[2]; outVec[1] = trio[1];
            outVec[2] = trio[0]; outVec[3] = numToString(std::fabs(D3)); outVec[4] = numToString(D3_Z);
            outVec[5] = numToString(D3_p); outVec[patternsI] = numToString(ABBAtotal);
            outVec[patternsI+1] = numToString(BBAAtotal); outVec[patternsI+2] = numToString(BABAtotal);
            if (fStats) { Dnum = BBAAtotal - BABAtotal; f4ratio = Dnum/F_G_denom3; }
            break;
        
        case P3isTrios0_Dnegative:
            outVec[0] = trio[1]; outVec[1] = trio[2];
            outVec[2] = trio[0]; outVec[3] = numToString(std::fabs(D3)); outVec[4] = numToString(D3_Z);
            outVec[5] = numToString(D3_p); outVec[patternsI] = numToString(ABBAtotal);
            outVec[patternsI+1] = numToString(BABAtotal); outVec[patternsI+2] = numToString(BBAAtotal);
            if (fStats) { Dnum = BABAtotal - BBAAtotal; f4ratio = Dnum/F_G_denom3_reversed; }
            break;
                
        }
        
        /* investigating rare cases of unexpected f4-ratio values
        if (f4ratio < 0 || f4ratio > 1) {
            std::cerr << "trio[0]: " << trio[0] << "trio[1]: " << trio[1] << "trio[2]: " << trio[2] << std::endl;
            std::cerr << "Arrangement: " << arrangement << std::endl;
            std::cerr << "D1: " << D1 << " D2: " << D2  << " D3: " << D3 << std::endl;
            std::cerr << "ABBAtotal: " << ABBAtotal << "BBAAtotal: " << BBAAtotal  << "BABAtotal: " << BABAtotal << std::endl;
            std::cerr << "ABBAtotal-BABAtotal: " << ABBAtotal-BABAtotal << "ABBAtotal-BBAAtotal: " << ABBAtotal- BBAAtotal  << "BBAAtotal-BABAtotal: " << BBAAtotal-BABAtotal << std::endl;
            std::cerr << "F_G_denom1: " << F_G_denom1 << "; F_G_denom1_reversed: " << F_G_denom1_reversed << std::endl;
            std::cerr << "F_G_denom2: " << F_G_denom2 << "; F_G_denom2_reversed: " << F_G_denom2_reversed << std::endl;
            std::cerr << "F_G_denom3: " << F_G_denom3 << "; F_G_denom3_reversed: " << F_G_denom3_reversed << std::endl;
            std::cerr << "f4ratio: " << f4ratio << std::endl;
        }
        */
        
        
        if (fStats) { // For now just bounding those unexpected cases to the 0 to 1 range
            if (f4ratio < 0) { f4ratio = 0; }
            if (f4ratio > 1) { f4ratio = 1; }
            outVec[6] = numToString(f4ratio);
        }
        if (KS_test) {
            if (fStats) { outVec[7] = numToString(KSpval); outVec[8] = numToString(KSpvalStrongSitesOnly); }
            else  { outVec[6] = numToString(KSpval); outVec[7] = numToString(KSpvalStrongSitesOnly); }
        }
        
        return outVec;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movl %r9d, %ebp
movl %r8d, %r14d
movl %ecx, %r15d
movq %rdx, %r13
movq %rsi, %r12
movq %rdi, %rbx
leal 0x9(%r15,%r14,2), %esi
xorpd %xmm0, %xmm0
movupd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
callq 0x1fa52
movq %r15, 0x40(%rsp)
movzbl %r15b, %r15d
leal 0x6(%r15), %eax
orl $0x8, %r15d
movq %r14, 0x48(%rsp)
testb %r14b, %r14b
cmovel %eax, %r15d
je 0x1d7a5
movq %rbx, 0x18(%rsp)
leaq 0x98(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x24097(%rip), %rsi     # 0x41765
leaq 0x24098(%rip), %rdx     # 0x4176d
leaq 0x88(%rsp), %rdi
callq 0x88ba
leaq 0x88(%rsp), %rdx
movq %r12, %rdi
movl %ebp, %esi
callq 0x1fa82
movsd %xmm0, 0x50(%rsp)
movq 0x88(%rsp), %rdi
cmpq %r14, %rdi
je 0x1d717
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x7420
leaq 0x78(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x24047(%rip), %rsi     # 0x4176e
leaq 0x2404f(%rip), %rdx     # 0x4177d
leaq 0x68(%rsp), %rdi
callq 0x88ba
leaq 0x68(%rsp), %rdx
movq %r12, %rdi
movl %ebp, %esi
callq 0x1fa82
movapd %xmm0, %xmm2
movsd 0x23a95(%rip), %xmm0    # 0x411e8
movsd %xmm0, 0x58(%rsp)
movq 0x68(%rsp), %rdi
cmpq %r14, %rdi
je 0x1d77c
movq 0x78(%rsp), %rsi
incq %rsi
movsd %xmm2, 0x60(%rsp)
callq 0x7420
movsd 0x60(%rsp), %xmm2
movsd 0x23a64(%rip), %xmm0    # 0x411e8
movapd %xmm0, %xmm1
maxsd 0x50(%rsp), %xmm1
movsd %xmm1, 0x50(%rsp)
ucomisd %xmm2, %xmm0
ja 0x1d7a0
movsd %xmm2, 0x58(%rsp)
movq 0x18(%rsp), %rbx
fldt 0x30(%r12)
fabs
fldl 0x23a36(%rip)           # 0x411e8
fucomi %st(1), %st
fstp %st(1)
jbe 0x1d7bf
fld %st(0)
fstpt 0x30(%r12)
fldt 0x40(%r12)
fabs
fxch %st(1)
fucomi %st(1), %st
fstp %st(1)
jbe 0x1d7d5
fld %st(0)
fstpt 0x40(%r12)
fldt 0x50(%r12)
fabs
fxch %st(1)
fucomi %st(1), %st
fstp %st(1)
jbe 0x1d7eb
fstpt 0x50(%r12)
fldz
fstp %st(0)
decl %ebp
cmpl $0x5, %ebp
ja 0x1e32f
leaq 0x23a49(%rip), %rax     # 0x41248
movslq (%rax,%rbp,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq (%r13), %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x18(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1d87c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x60(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1d8b7
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x30(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1d8f4
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1d932
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1d970
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1d9af
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd (%r12), %xmm0
subsd 0x8(%r12), %xmm0
divsd 0x98(%r12), %xmm0
jmp 0x1e339
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x28(%r12), %xmm0
andpd 0x237cf(%rip), %xmm0    # 0x411f0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1da5a
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x70(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1da95
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x50(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dad2
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1db0f
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1db4e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1db8d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd 0x10(%r12), %xmm0
subsd 0x8(%r12), %xmm0
divsd 0xf8(%r12), %xmm0
jmp 0x1e339
movq (%r13), %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x20(%r12), %xmm0
andpd 0x235f0(%rip), %xmm0    # 0x411f0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1dc39
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x68(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dc74
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x40(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dcb1
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dcef
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dd2d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1dd6c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd (%r12), %xmm0
subsd 0x10(%r12), %xmm0
divsd 0xc8(%r12), %xmm0
jmp 0x1e339
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x20(%r12), %xmm0
andpd 0x23412(%rip), %xmm0    # 0x411f0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1de17
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x68(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1de52
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x40(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1de8f
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1decd
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1df0c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1df4a
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd 0x10(%r12), %xmm0
subsd (%r12), %xmm0
divsd 0xd0(%r12), %xmm0
jmp 0x1e339
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x18(%r12), %xmm0
andpd 0x23234(%rip), %xmm0    # 0x411f0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1dff5
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x60(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e030
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x30(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e06d
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e0ab
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e0ea
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e128
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd 0x8(%r12), %xmm0
subsd (%r12), %xmm0
divsd 0xa0(%r12), %xmm0
jmp 0x1e339
movq (%r13), %rsi
addq $0x20, %rsi
movq (%rbx), %rdi
callq 0x7210
movq (%r13), %rsi
addq $0x40, %rsi
movq (%rbx), %rdi
addq $0x20, %rdi
callq 0x7210
movq (%r13), %rsi
movq (%rbx), %rdi
addq $0x40, %rdi
callq 0x7210
movsd 0x28(%r12), %xmm0
andpd 0x23056(%rip), %xmm0    # 0x411f0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
addq $0x60, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
leaq 0x30(%rsp), %rbp
cmpq %rbp, %rdi
je 0x1e1d3
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x70(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rdi
subq $-0x80, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e20e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
fldt 0x50(%r12)
fstpt (%rsp)
leaq 0x20(%rsp), %rdi
callq 0x1fea7
movl $0xa0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e24b
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd (%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
shll $0x5, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e288
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x8(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x20, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e2c7
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movsd 0x10(%r12), %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movq (%rbx), %rax
leaq (%rax,%r15), %rdi
addq $0x40, %rdi
leaq 0x20(%rsp), %r13
movq %r13, %rsi
callq 0x7520
movq (%r13), %rdi
cmpq %rbp, %rdi
je 0x1e306
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq 0x40(%rsp), %r15
testb %r15b, %r15b
movq 0x48(%rsp), %r14
je 0x1e339
movsd 0x8(%r12), %xmm0
subsd 0x10(%r12), %xmm0
divsd 0x100(%r12), %xmm0
jmp 0x1e339
movq 0x48(%rsp), %r14
movq 0x40(%rsp), %r15
testb %r15b, %r15b
je 0x1e38c
xorpd %xmm1, %xmm1
maxsd %xmm0, %xmm1
movsd 0x22122(%rip), %xmm0    # 0x40470
minsd %xmm1, %xmm0
leaq 0x20(%rsp), %rdi
callq 0x1fdbd
movl $0xc0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r12
movq %r12, %rsi
callq 0x7520
movq (%r12), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x1e38c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
testb %r14b, %r14b
je 0x1e469
testb %r15b, %r15b
je 0x1e3f0
leaq 0x20(%rsp), %rdi
movsd 0x50(%rsp), %xmm0
callq 0x1fdbd
movl $0xe0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r14
movq %r14, %rsi
callq 0x7520
movq (%r14), %rdi
leaq 0x30(%rsp), %r15
cmpq %r15, %rdi
je 0x1e3d9
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
leaq 0x20(%rsp), %rdi
movsd 0x58(%rsp), %xmm0
callq 0x1fdbd
movl $0x100, %edi            # imm = 0x100
jmp 0x1e444
leaq 0x20(%rsp), %rdi
movsd 0x50(%rsp), %xmm0
callq 0x1fdbd
movl $0xc0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r14
movq %r14, %rsi
callq 0x7520
movq (%r14), %rdi
leaq 0x30(%rsp), %r15
cmpq %r15, %rdi
je 0x1e42f
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
leaq 0x20(%rsp), %rdi
movsd 0x58(%rsp), %xmm0
callq 0x1fdbd
movl $0xe0, %edi
addq (%rbx), %rdi
leaq 0x20(%rsp), %r14
movq %r14, %rsi
callq 0x7520
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x1e469
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x7420
movq %rbx, %rax
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
jmp 0x1e521
movq %rax, %r15
movq 0x68(%rsp), %rdi
cmpq %r14, %rdi
je 0x1e529
movq 0x78(%rsp), %rsi
jmp 0x1e513
jmp 0x1e526
movq %rax, %r15
movq 0x88(%rsp), %rdi
cmpq %r14, %rdi
je 0x1e529
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x7420
jmp 0x1e529
jmp 0x1e526
jmp 0x1e521
movq %rbx, 0x18(%rsp)
movq %rax, %r15
movq 0x18(%rsp), %rdi
callq 0xd250
movq %r15, %rdi
callq 0x7740
nop