// File: /workspace/github_cpp_makefile_star2_O1/bobverity[P]MavericK/MCMCobject_noAdmixture.cpp
// Function: MCMCobject_noAdmixture::MCMCobject_noAdmixture(globals&, int, int, int, int, double)
MCMCobject_noAdmixture::MCMCobject_noAdmixture(globals &globals, int _Kindex, int _burnin, int _samples, int _thinning, double _beta) {
    
    // copy some values over from globals object
    outputQmatrix_pop_on = globals.outputQmatrix_pop_on;
    
    Kindex = _Kindex;
    K = globals.Kmin+Kindex;
    n = globals.n;
    loci = globals.loci;
    J = globals.J;
    ploidy_vec = globals.ploidy_vec;
    data = globals.data;
    lambda = globals.lambda;
    beta = _beta;
    uniquePops = globals.uniquePops;
    
    burnin = _burnin;
    samples = _samples;
    thinning = _thinning;
    
    group = vector<int>(n,1);
    
    // initialise allele counts and frequencies
    alleleCounts = vector< vector< vector<int> > >(K);
    alleleCountsTotals = vector< vector<int> >(K);
    alleleFreqs = vector< vector< vector<double> > >(K);
    for (int k=0; k<K; k++) {
        alleleCounts[k] = vector< vector<int> >(loci);
        alleleCountsTotals[k] = vector<int>(loci);
        alleleFreqs[k] = vector< vector<double> >(loci);
        for (int l=0; l<loci; l++) {
            alleleCounts[k][l] = vector<int>(J[l]);
            alleleFreqs[k][l] = vector<double>(J[l]);
        }
    }
    
    // initialise objects for calculating assignment probabilities
    logProbVec = vector<double>(K);
    logProbVecSum = 0;  // (used in Qmatrix calculation)
    logProbVecMax = 0;
    probVec = vector<double>(K);
    probVecSum = 0;
    
    // initialise Qmatrices
    logQmatrix_ind_old = vector< vector<double> >(n, vector<double>(K));
    logQmatrix_ind_new = vector< vector<double> >(n, vector<double>(K));
    logQmatrix_ind_running = vector< vector<double> >(n, vector<double>(K));
    
    logQmatrix_ind = vector< vector<double> >(n, vector<double>(K));
    Qmatrix_ind = vector< vector<double> >(n, vector<double>(K));
    Qmatrix_pop = vector< vector<double> >(uniquePops.size(), vector<double>(K));
    
    // initialise objects for Hungarian algorithm
    costMat = vector< vector<double> >(K, vector<double>(K));
    bestPermOrder = vector<int>(K);
    
    edgesLeft = vector<int>(K);
    edgesRight = vector<int>(K);
    blockedLeft = vector<int>(K);
    blockedRight = vector<int>(K);
    
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc8, %rsp
movsd %xmm0, 0x78(%rsp)
movl %r9d, 0x38(%rsp)
movl %r8d, 0x88(%rsp)
movl %ecx, 0x80(%rsp)
movl %edx, %r15d
movq %rsi, %r13
movq %rdi, %r14
xorps %xmm0, %xmm0
movups %xmm0, (%rdi)
xorl %eax, %eax
movq %rax, 0x10(%rdi)
leaq 0x28(%rdi), %rbx
leaq 0x40(%rdi), %r12
leaq 0x58(%rdi), %rcx
movq %rcx, 0x98(%rsp)
addq $0x90, %rdi
leaq 0xa8(%r14), %rcx
movq %rcx, 0xb0(%rsp)
leaq 0xc0(%r14), %rcx
movq %rcx, 0xa0(%rsp)
leaq 0xd8(%r14), %rcx
movq %rcx, 0xa8(%rsp)
movups %xmm0, 0x130(%r14)
movq %rax, 0x140(%r14)
movups %xmm0, 0x170(%r14)
movq %rax, 0x180(%r14)
movups %xmm0, 0x198(%r14)
movq %rax, 0x1a8(%r14)
leaq 0x1b8(%r14), %rbp
movups %xmm0, 0x28(%r14)
movups %xmm0, 0x38(%r14)
movups %xmm0, 0x48(%r14)
movups %xmm0, 0x58(%r14)
movq %rax, 0x68(%r14)
movl $0x90, %edx
movq %rdi, 0xc0(%rsp)
xorl %esi, %esi
callq 0x31d0
movl $0x138, %edx            # imm = 0x138
movq %rbp, 0xb8(%rsp)
movq %rbp, %rdi
xorl %esi, %esi
callq 0x31d0
movb 0x2c3f(%r13), %al
movb %al, 0x80(%r14)
movl %r15d, 0x18(%r14)
addl 0x2bc8(%r13), %r15d
movl %r15d, 0x1c(%r14)
movq 0x2d18(%r13), %rax
movq %rax, 0x20(%r14)
leaq 0x2d20(%r13), %rsi
movq %rbx, 0x90(%rsp)
movq %rbx, %rdi
callq 0xb2d4
leaq 0x2cd0(%r13), %rsi
movq %r12, %rdi
callq 0xb2d4
leaq 0x2d00(%r13), %rsi
movq %r14, %rdi
callq 0xb17e
movsd 0x2c50(%r13), %xmm0
movsd %xmm0, 0x70(%r14)
movsd 0x78(%rsp), %xmm0
movsd %xmm0, 0x78(%r14)
addq $0x2c88, %r13           # imm = 0x2C88
movq 0x98(%rsp), %rdi
movq %r13, %rsi
callq 0xb3a2
movl 0x80(%rsp), %eax
movl %eax, 0x84(%r14)
movl 0x88(%rsp), %eax
movl %eax, 0x88(%r14)
movl 0x38(%rsp), %eax
movl %eax, 0x8c(%r14)
movslq 0x20(%r14), %rsi
leaq 0x40(%rsp), %rdx
movl $0x1, (%rdx)
leaq 0x10(%rsp), %rdi
leaq 0x60(%rsp), %rcx
callq 0xed32
movq 0x90(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x98(%r14), %xmm1
movups %xmm0, 0x90(%r14)
movq %rax, 0xa0(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xc524
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xc533
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0xb4ea
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0xa8(%r14), %xmm0
movq 0xb8(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0xa8(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0xb8(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0xb572
movq %r15, %rdi
callq 0xb572
movslq 0x1c(%r14), %rsi
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0xb5ac
leaq 0x10(%rsp), %rdi
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0xc0(%r14), %xmm0
movq 0xd0(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0xc0(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0xd0(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0xb634
movq %r15, %rdi
callq 0xb634
movslq 0x1c(%r14), %rsi
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x5a30
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0xd8(%r14), %xmm0
movq 0xe8(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0xd8(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0xe8(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5ab8
movq %r15, %rdi
callq 0x5ab8
movl 0x1c(%r14), %eax
testl %eax, %eax
jle 0xc947
movq %r12, 0x38(%rsp)
xorl %ebx, %ebx
leaq 0x40(%rsp), %r13
leaq 0x60(%rsp), %rbp
leaq 0x10(%rsp), %r15
movslq 0x24(%r14), %rsi
movq %r13, %rdi
movq %rbp, %rdx
callq 0xb5ac
movq 0xa8(%r14), %rax
leaq (%rbx,%rbx,2), %r12
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
movups (%rax,%r12,8), %xmm0
movq 0x10(%rax,%r12,8), %rcx
movaps 0x40(%rsp), %xmm1
movups %xmm1, (%rax,%r12,8)
movq 0x50(%rsp), %rdx
movq %rdx, 0x10(%rax,%r12,8)
movq 0x20(%rsp), %rax
movq %rcx, 0x20(%rsp)
movaps 0x10(%rsp), %xmm1
movaps %xmm0, 0x10(%rsp)
movaps %xmm1, 0x40(%rsp)
movq %rax, 0x50(%rsp)
movq %r15, %rdi
callq 0xb634
movq %r13, %rdi
callq 0xb634
movslq 0x24(%r14), %rsi
movq %r15, %rdi
movq %r13, %rdx
callq 0x6b04
movq 0xa0(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r12,8), %rdi
movaps 0x10(%rsp), %xmm0
movups 0x8(%rax,%r12,8), %xmm1
movups %xmm0, (%rax,%r12,8)
movq 0x20(%rsp), %rcx
movq %rcx, 0x10(%rax,%r12,8)
movq %rdi, 0x10(%rsp)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xc785
callq 0x3310
movq %rbx, 0x78(%rsp)
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xc799
callq 0x3310
movslq 0x24(%r14), %rsi
movq %r13, %rdi
movq %rbp, %rdx
callq 0x5af2
movq 0xd8(%r14), %rax
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
movups (%rax,%r12,8), %xmm0
movq 0x10(%rax,%r12,8), %rcx
movaps 0x40(%rsp), %xmm1
movups %xmm1, (%rax,%r12,8)
movq 0x50(%rsp), %rdx
movq %rdx, 0x10(%rax,%r12,8)
movq 0x20(%rsp), %rax
movq %rcx, 0x20(%rsp)
movaps 0x10(%rsp), %xmm1
movaps %xmm0, 0x10(%rsp)
movaps %xmm1, 0x40(%rsp)
movq %rax, 0x50(%rsp)
movq %r15, %rdi
callq 0x5b7a
movq %r13, %rdi
callq 0x5b7a
movq %r14, %rbp
cmpl $0x0, 0x24(%r14)
jle 0xc925
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x90(%rsp), %rax
movq (%rax), %rax
movslq (%rax,%r14,4), %rsi
movq %r15, %rdi
movq %r13, %rdx
callq 0x6b04
movq 0xb0(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r12,8), %rax
movq (%rax,%rbx), %rdi
movaps 0x10(%rsp), %xmm0
movups 0x8(%rax,%rbx), %xmm1
movups %xmm0, (%rax,%rbx)
movq 0x20(%rsp), %rcx
movq %rcx, 0x10(%rax,%rbx)
movq %rdi, 0x10(%rsp)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xc889
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xc898
callq 0x3310
movq 0x90(%rsp), %rax
movq (%rax), %rax
movslq (%rax,%r14,4), %rsi
movq %r15, %rdi
movq %r13, %rdx
callq 0x5916
movq 0xa8(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r12,8), %rax
movq (%rax,%rbx), %rdi
movaps 0x10(%rsp), %xmm0
movups 0x8(%rax,%rbx), %xmm1
movups %xmm0, (%rax,%rbx)
movq 0x20(%rsp), %rcx
movq %rcx, 0x10(%rax,%rbx)
movq %rdi, 0x10(%rsp)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xc902
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xc911
callq 0x3310
incq %r14
movslq 0x24(%rbp), %rax
addq $0x18, %rbx
cmpq %rax, %r14
jl 0xc81f
movq 0x78(%rsp), %rbx
incq %rbx
movq %rbp, %r14
movslq 0x1c(%rbp), %rax
cmpq %rax, %rbx
leaq 0x60(%rsp), %rbp
jl 0xc6b1
movq 0x38(%rsp), %r12
movslq %eax, %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x5916
movq 0x170(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x178(%r14), %xmm1
movups %xmm0, 0x170(%r14)
movq %rax, 0x180(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xc9a6
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xc9b5
callq 0x3310
xorps %xmm0, %xmm0
movups %xmm0, 0x188(%r14)
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x5916
movq 0x198(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x1a0(%r14), %xmm1
movups %xmm0, 0x198(%r14)
movq %rax, 0x1a8(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xca20
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xca2f
callq 0x3310
movq $0x0, 0x1b0(%r14)
movslq 0x20(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x1b8(%r14), %xmm0
movq 0x1c8(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x1b8(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x1c8(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xcad8
callq 0x3310
movslq 0x20(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x1d0(%r14), %xmm0
movq 0x1e0(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x1d0(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x1e0(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xcb76
callq 0x3310
movslq 0x20(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x1e8(%r14), %xmm0
movq 0x1f8(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x1e8(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x1f8(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xcc14
callq 0x3310
movslq 0x20(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x200(%r14), %xmm0
movq 0x210(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x200(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x210(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xccb2
callq 0x3310
movslq 0x20(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x218(%r14), %xmm0
movq 0x228(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x218(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x228(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xcd50
callq 0x3310
movq 0x58(%r14), %rbx
movq 0x60(%r14), %r15
movslq 0x1c(%r14), %rsi
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x5916
subq %rbx, %r15
sarq $0x5, %r15
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x230(%r14), %xmm0
movq 0x240(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x230(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x240(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xcdf9
callq 0x3310
movslq 0x1c(%r14), %r15
leaq 0x60(%rsp), %rdi
leaq 0xf(%rsp), %rdx
movq %r15, %rsi
callq 0x5916
leaq 0x40(%rsp), %rdi
leaq 0x60(%rsp), %rdx
leaq 0xe(%rsp), %rcx
movq %r15, %rsi
callq 0x59a0
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0x248(%r14), %xmm0
movq 0x258(%r14), %rax
leaq 0x40(%rsp), %r15
movaps (%r15), %xmm1
movups %xmm1, 0x248(%r14)
movq 0x10(%r15), %rcx
movq %rcx, 0x258(%r14)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movaps %xmm1, (%r15)
movq %rcx, 0x10(%r15)
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xce96
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x6b04
movq 0x278(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x280(%r14), %xmm1
movups %xmm0, 0x278(%r14)
movq %rax, 0x288(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xcef6
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xcf05
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x6b04
movq 0x290(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x298(%r14), %xmm1
movups %xmm0, 0x290(%r14)
movq %rax, 0x2a0(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xcf65
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xcf74
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x6b04
movq 0x2a8(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x2b0(%r14), %xmm1
movups %xmm0, 0x2a8(%r14)
movq %rax, 0x2b8(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xcfd4
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xcfe3
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x6b04
movq 0x2c0(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x2c8(%r14), %xmm1
movups %xmm0, 0x2c0(%r14)
movq %rax, 0x2d0(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xd043
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xd052
callq 0x3310
movslq 0x1c(%r14), %rsi
leaq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rdx
callq 0x6b04
movq 0x2d8(%r14), %rdi
movaps 0x10(%rsp), %xmm0
movq 0x20(%rsp), %rax
movq %rdi, 0x10(%rsp)
movups 0x2e0(%r14), %xmm1
movups %xmm0, 0x2d8(%r14)
movq %rax, 0x2e8(%r14)
movups %xmm1, 0x18(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
testq %rdi, %rdi
je 0xd0b2
callq 0x3310
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0xd0c1
callq 0x3310
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
jmp 0xd0f5
jmp 0xd11e
movq %r12, 0x38(%rsp)
movq %rax, 0x30(%rsp)
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xd13a
callq 0x3310
jmp 0xd13a
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
jmp 0xd11e
movq %r12, 0x38(%rsp)
jmp 0xd129
jmp 0xd129
jmp 0xd129
movq %rax, 0x30(%rsp)
jmp 0xd13a
jmp 0xd132
movq %rax, 0x30(%rsp)
movq %rbp, %r14
movq 0x2d8(%r14), %rdi
testq %rdi, %rdi
je 0xd14b
callq 0x3310
movq 0x2c0(%r14), %rdi
testq %rdi, %rdi
je 0xd15c
callq 0x3310
movq 0x2a8(%r14), %rdi
testq %rdi, %rdi
je 0xd16d
callq 0x3310
movq 0x290(%r14), %rdi
testq %rdi, %rdi
je 0xd17e
callq 0x3310
movq 0x278(%r14), %rdi
testq %rdi, %rdi
je 0xd18f
callq 0x3310
leaq 0x198(%r14), %rbx
leaq 0x1d0(%r14), %rbp
leaq 0x1e8(%r14), %rax
movq %rax, 0x78(%rsp)
leaq 0x200(%r14), %rax
movq %rax, 0x88(%rsp)
leaq 0x218(%r14), %rax
movq %rax, 0x80(%rsp)
leaq 0x230(%r14), %r15
leaq 0x248(%r14), %r13
movq 0x260(%r14), %rdi
testq %rdi, %rdi
je 0xd1e6
callq 0x3310
movq %r14, %r12
addq $0x170, %r14            # imm = 0x170
movq %r13, %rdi
callq 0x5b7a
movq %r15, %rdi
callq 0x5b7a
movq 0x80(%rsp), %rdi
callq 0x5b7a
movq 0x88(%rsp), %rdi
callq 0x5b7a
movq 0x78(%rsp), %rdi
callq 0x5b7a
movq %rbp, %rdi
callq 0x5b7a
movq 0xb8(%rsp), %rdi
callq 0x5b7a
movq (%rbx), %rdi
testq %rdi, %rdi
je 0xd246
callq 0x3310
leaq 0x130(%r12), %rbx
movq (%r14), %rdi
testq %rdi, %rdi
je 0xd25b
callq 0x3310
movq %r12, %r14
leaq 0xf0(%r12), %r15
leaq 0x108(%r12), %r13
movq (%rbx), %rdi
testq %rdi, %rdi
je 0xd27b
callq 0x3310
movq %r13, %rdi
callq 0xb634
movq %r15, %rdi
callq 0xb572
movq 0xa8(%rsp), %rdi
callq 0x5ab8
movq 0xa0(%rsp), %rdi
callq 0xb634
movq 0xb0(%rsp), %rdi
callq 0xb572
movq 0xc0(%rsp), %rax
movq (%rax), %rdi
testq %rdi, %rdi
movq 0x38(%rsp), %rbx
je 0xd2cc
callq 0x3310
movq 0x98(%rsp), %rdi
callq 0xb704
movq (%rbx), %rdi
testq %rdi, %rdi
je 0xd2e6
callq 0x3310
movq 0x90(%rsp), %rax
movq (%rax), %rdi
testq %rdi, %rdi
je 0xd2fb
callq 0x3310
movq %r14, %rdi
callq 0xb572
movq 0x30(%rsp), %rdi
callq 0x3580
nop