// File: /workspace/github_cpp_makefile_star2_O2/eniac[P]Mantis/src/compile/compile_p4.cpp
// Function: generateDupRegArgProg(std::vector<AstNode*, std::allocator<AstNode*>>*, std::vector<AstNode*, std::allocator<AstNode*>>*, std::vector<ReactionArgNode*, std::allocator<ReactionArgNode*>> const&, int, int)
void generateDupRegArgProg(vector<AstNode*>* newNodes,
                         vector<AstNode*>* nodeArray,
                         const vector<ReactionArgNode*>& reaction_args,
                         int ing_iso_opt, int egr_iso_opt) {
    ostringstream oss;
    vector<P4RegisterNode*> regNodes = findP4RegisterNode(*nodeArray);
    vector<P4ExprNode*> blackboxes = findBlackbox(*nodeArray);

    for (auto ra : reaction_args) {
        if (ra->argType_==ReactionArgNode::REGISTER) {
            if ((findRegargInIng(ra, *nodeArray) && (((unsigned int)ing_iso_opt) & 0b1)) || 
                (!findRegargInIng(ra, *nodeArray) && (((unsigned int)egr_iso_opt) & 0b1))
                ) {
                PRINT_VERBOSE("Duplicate for %s\n", ra->toString().c_str());
            } else {
                continue;
            }
        } else {
            continue;
        }
        for(auto reg : regNodes) {
            if(reg->name_->toString().compare(ra->toString())==0) {
                // Duplicate registers
                oss.str(""); 
                oss << "register " << reg->name_->toString() << kP4rRegReplicasSuffix0
                    << "{\n"
                    << "  width : 64;\n"
                    << "  instance_count : " << reg->instanceCount_ << ";\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("register"),
                                                   new string(reg->name_->toString()+kP4rRegReplicasSuffix0)));         
                oss.str("");
                oss << "register " << reg->name_->toString() << kP4rRegReplicasSuffix1
                    << "{\n"
                    << "  width : 64;\n"
                    << "  instance_count : " << reg->instanceCount_ << ";\n"
                    << "}\n\n";  
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("register"),
                                                   new string(reg->name_->toString()+kP4rRegReplicasSuffix1)));

                // Duplicate blackbox
                // Currently assuming 32b reg with only LO, for 64b, extra tstamp reg required
                oss.str("");
                oss << "blackbox stateful_alu " << kP4rRegReplicasBlackboxPrefix << reg->name_->toString() << kP4rRegReplicasSuffix0
                    << "{\n"
                    << "  reg : " << reg->name_->toString() << kP4rRegReplicasSuffix0 << ";\n"
                    << "  update_hi_1_value : register_hi + 1;\n"
                    << "  update_lo_1_value : " << kP4rIngRegMetadataName << "." << reg->name_->toString() << kP4rRegMetadataOutputSuffix << ";\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("blackbox"),
                                                   new string(kP4rRegReplicasBlackboxPrefix+reg->name_->toString()+kP4rRegReplicasSuffix0)));                        

                oss.str("");
                oss << "blackbox stateful_alu " << kP4rRegReplicasBlackboxPrefix << reg->name_->toString() << kP4rRegReplicasSuffix1
                    << "{\n"
                    << "  reg : " << reg->name_->toString() << kP4rRegReplicasSuffix1 << ";\n"
                    << "  update_hi_1_value : register_hi + 1;\n"
                    << "  update_lo_1_value : " << kP4rIngRegMetadataName << "." << reg->name_->toString() << kP4rRegMetadataOutputSuffix << ";\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("blackbox"),
                                                   new string(kP4rRegReplicasBlackboxPrefix+reg->name_->toString()+kP4rRegReplicasSuffix1)));    

                // Duplicate actions
                oss.str("");
                oss << "action " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix0 << "(){\n"
                    << "  " << kP4rRegReplicasBlackboxPrefix << reg->name_->toString() << kP4rRegReplicasSuffix0 
                    << ".execute_stateful_alu("
                    << kP4rIngRegMetadataName << "." << reg->name_->toString() << kP4rRegMetadataIndexSuffix
                    << ");\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("action"),
                                                   new string(kP4rRegReplicasActionPrefix+reg->name_->toString()+kP4rRegReplicasSuffix0)));    

                oss.str("");
                oss << "action " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix1 << "(){\n"
                    << "  " << kP4rRegReplicasBlackboxPrefix << reg->name_->toString() << kP4rRegReplicasSuffix1 
                    << ".execute_stateful_alu("
                    << kP4rIngRegMetadataName << "." << reg->name_->toString() << kP4rRegMetadataIndexSuffix
                    << ");\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("action"),
                                                   new string(kP4rRegReplicasActionPrefix+reg->name_->toString()+kP4rRegReplicasSuffix1)));    

                // Duplicate tables
                oss.str("");
                oss << "table " << kP4rRegReplicasTablePrefix << reg->name_->toString() << kP4rRegReplicasSuffix0 << "{\n"
                    << "  actions {\n"
                    << "    " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix0 << ";\n"
                    << "}\n"
                    << "  default_action: " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix0 << "();\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("table"),
                                                   new string(kP4rRegReplicasTablePrefix+reg->name_->toString()+kP4rRegReplicasSuffix0)));    

                oss.str("");
                oss << "table " << kP4rRegReplicasTablePrefix << reg->name_->toString() << kP4rRegReplicasSuffix1 << "{\n"
                    << "  actions {\n"
                    << "    " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix1 << ";\n"
                    << "}\n"
                    << "  default_action: " << kP4rRegReplicasActionPrefix << reg->name_->toString() << kP4rRegReplicasSuffix1 << "();\n"
                    << "}\n\n";
                newNodes->push_back(new UnanchoredNode(new string(oss.str()),
                                                   new string("table"),
                                                   new string(kP4rRegReplicasTablePrefix+reg->name_->toString()+kP4rRegReplicasSuffix1)));    

                break;
            }
        }
    }                       
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x288, %rsp            # imm = 0x288
movl %r8d, -0xb4(%rbp)
movl %ecx, -0xb8(%rbp)
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, -0x90(%rbp)
leaq -0x2a8(%rbp), %rdi
callq 0x415a0
leaq -0xe8(%rbp), %rdi
movq %r14, %rsi
callq 0x7268a
leaq -0x100(%rbp), %rdi
movq %r14, -0xc0(%rbp)
movq %r14, %rsi
callq 0x72002
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
movq %rcx, -0xc8(%rbp)
cmpq -0xc8(%rbp), %rax
je 0x6cb03
movq %rax, -0xd0(%rbp)
movq (%rax), %r15
cmpl $0x4, 0x3c(%r15)
jne 0x6caf3
leaq -0x130(%rbp), %r14
movq %r14, %rdi
movq -0xc0(%rbp), %rbx
movq %rbx, %rsi
callq 0x4486c
movq %r15, %rdi
movq %r14, %rsi
callq 0x72d72
leaq -0x118(%rbp), %r12
testb %al, -0xb8(%rbp)
je 0x6b882
movq %r14, %rdi
callq 0x44be0
jmp 0x6b8bc
movq %r12, %rdi
movq %rbx, %rsi
callq 0x4486c
movq %r15, %rdi
movq %r12, %rsi
callq 0x72d72
testb $0x1, -0xb4(%rbp)
sete %bl
orb %al, %bl
movq %r12, %rdi
callq 0x44be0
movq %r14, %rdi
callq 0x44be0
testb %bl, %bl
jne 0x6caf3
movq -0xe8(%rbp), %r12
movq -0xe0(%rbp), %rax
movq %rax, -0x38(%rbp)
cmpq -0x38(%rbp), %r12
je 0x6caf3
movq (%r12), %rax
movq %rax, -0x40(%rbp)
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %rdi
callq *(%rax)
movq (%r15), %rax
leaq -0x88(%rbp), %r13
movq %r13, %rdi
movq %r15, %rsi
callq *(%rax)
leaq -0x68(%rbp), %r14
movq %r14, %rdi
movq %r13, %rsi
callq 0x41040
movl %eax, %ebx
movq %r13, %rdi
callq 0x418c8
movq %r14, %rdi
callq 0x418c8
addq $0x8, %r12
testl %ebx, %ebx
jne 0x6b8ce
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
leaq 0xef85(%rip), %rsi      # 0x7a8bb
leaq -0x88(%rbp), %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xd409(%rip), %rsi      # 0x78d70
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x112de(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x112b9(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0x112e9(%rip), %rsi     # 0x7cc9f
callq 0x413d0
movq %rax, %rdi
leaq 0x112e9(%rip), %rsi     # 0x7ccae
callq 0x413d0
movq -0x40(%rbp), %rcx
movl 0x54(%rcx), %esi
movq %rax, %rdi
callq 0x41760
movq %rax, %rdi
leaq 0xd422(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x1172b(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r15
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %rbx
movq %rax, %rdi
leaq 0x11287(%rip), %rsi     # 0x7ccc2
leaq -0xb0(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq %r15, %r14
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r13
movq %r13, %rdi
callq *(%rax)
movb $0x1, %r12b
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x111f8(%rip), %rdx     # 0x7cc76
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0x88(%rbp)
xorl %r15d, %r15d
xorl %r12d, %r12d
movq -0x90(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xede9(%rip), %rsi      # 0x7a8bb
leaq -0x88(%rbp), %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xd26d(%rip), %rsi      # 0x78d70
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x1115c(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x1111d(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0x1114d(%rip), %rsi     # 0x7cc9f
callq 0x413d0
movq %rax, %rdi
leaq 0x1114d(%rip), %rsi     # 0x7ccae
callq 0x413d0
movq -0x40(%rbp), %rcx
movl 0x54(%rcx), %esi
movq %rax, %rdi
callq 0x41760
movq %rax, %rdi
leaq 0xd286(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x1158f(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r15
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %rbx
movq %rax, %rdi
leaq 0x110eb(%rip), %rsi     # 0x7ccc2
leaq -0xb0(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq %r15, %r14
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r13
movq %r13, %rdi
callq *(%rax)
movb $0x1, %r12b
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x11076(%rip), %rdx     # 0x7cc90
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0x88(%rbp)
xorl %r15d, %r15d
xorl %r12d, %r12d
movq -0x90(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xec4d(%rip), %rsi      # 0x7a8bb
leaq -0x88(%rbp), %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0x1102c(%rip), %rsi     # 0x7cccb
callq 0x413d0
movq %rax, %rdi
leaq 0x11034(%rip), %rsi     # 0x7cce2
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10f97(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x10f72(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0x10fec(%rip), %rsi     # 0x7cce9
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10f45(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0xd0c5(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x10fa3(%rip), %rsi     # 0x7ccf2
callq 0x413d0
movq %rax, %rdi
leaq 0x10fbc(%rip), %rsi     # 0x7cd1a
callq 0x413d0
movq %rax, %rdi
leaq 0x10fc4(%rip), %rsi     # 0x7cd31
callq 0x413d0
movq %rax, %rdi
leaq 0xeb8d(%rip), %rsi      # 0x7a909
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10f91(%rip), %rsi     # 0x7cd41
callq 0x413d0
movq %rax, %rdi
leaq 0xd046(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x1134f(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r14
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0x10f1b(%rip), %rsi     # 0x7cd4a
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
leaq -0x68(%rbp), %r13
movq %r13, %rdi
leaq 0x10e79(%rip), %rsi     # 0x7cce2
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x10df2(%rip), %rdx     # 0x7cc76
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0xb0(%rbp)
xorl %r15d, %r15d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xe9d5(%rip), %rsi      # 0x7a8bb
movq %r14, %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0x10db8(%rip), %rsi     # 0x7cccb
callq 0x413d0
movq %rax, %rdi
leaq 0x10dc0(%rip), %rsi     # 0x7cce2
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10d3d(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x10cfe(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0x10d78(%rip), %rsi     # 0x7cce9
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10cf2(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0xce58(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x10d36(%rip), %rsi     # 0x7ccf2
callq 0x413d0
movq %rax, %rdi
leaq 0x10d4f(%rip), %rsi     # 0x7cd1a
callq 0x413d0
movq %rax, %rdi
leaq 0x10d57(%rip), %rsi     # 0x7cd31
callq 0x413d0
movq %rax, %rdi
leaq 0xe920(%rip), %rsi      # 0x7a909
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10d24(%rip), %rsi     # 0x7cd41
callq 0x413d0
movq %rax, %rdi
leaq 0xcdd9(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0x110e2(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r14
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0x10cae(%rip), %rsi     # 0x7cd4a
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
leaq -0x68(%rbp), %r13
movq %r13, %rdi
leaq 0x10c0c(%rip), %rsi     # 0x7cce2
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x10b9f(%rip), %rdx     # 0x7cc90
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0xb0(%rbp)
xorl %r15d, %r15d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xe768(%rip), %rsi      # 0x7a8bb
movq %r14, %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xd113(%rip), %rsi      # 0x79293
callq 0x413d0
movq %rax, %rdi
leaq 0x10bc4(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10ab6(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x10b8b(%rip), %rsi     # 0x7cd5a
callq 0x413d0
movq %rax, %rdi
leaq 0xee72(%rip), %rsi      # 0x7b050
callq 0x413d0
movq %rax, %rdi
leaq 0x10af5(%rip), %rsi     # 0x7cce2
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10a5c(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x10b36(%rip), %rsi     # 0x7cd5f
callq 0x413d0
movq %rax, %rdi
leaq 0x10af9(%rip), %rsi     # 0x7cd31
callq 0x413d0
movq %rax, %rdi
leaq 0xe6c2(%rip), %rsi      # 0x7a909
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10afb(%rip), %rsi     # 0x7cd76
callq 0x413d0
movq %rax, %rdi
leaq 0xcb7a(%rip), %rsi      # 0x78e04
callq 0x413d0
movq %rax, %rdi
leaq 0x10e84(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r14
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0xb8c9(%rip), %rsi      # 0x77bc3
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
leaq -0x68(%rbp), %r13
movq %r13, %rdi
leaq 0x10a1f(%rip), %rsi     # 0x7cd53
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x10927(%rip), %rdx     # 0x7cc76
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0xb0(%rbp)
xorl %r15d, %r15d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xe50a(%rip), %rsi      # 0x7a8bb
movq %r14, %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xceb5(%rip), %rsi      # 0x79293
callq 0x413d0
movq %rax, %rdi
leaq 0x10966(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10872(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x1092d(%rip), %rsi     # 0x7cd5a
callq 0x413d0
movq %rax, %rdi
leaq 0xec14(%rip), %rsi      # 0x7b050
callq 0x413d0
movq %rax, %rdi
leaq 0x10897(%rip), %rsi     # 0x7cce2
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10818(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x108d8(%rip), %rsi     # 0x7cd5f
callq 0x413d0
movq %rax, %rdi
leaq 0x1089b(%rip), %rsi     # 0x7cd31
callq 0x413d0
movq %rax, %rdi
leaq 0xe464(%rip), %rsi      # 0x7a909
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x1089d(%rip), %rsi     # 0x7cd76
callq 0x413d0
movq %rax, %rdi
leaq 0xc91c(%rip), %rsi      # 0x78e04
callq 0x413d0
movq %rax, %rdi
leaq 0x10c26(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r14
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0xb66b(%rip), %rsi      # 0x77bc3
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
leaq -0x68(%rbp), %r13
movq %r13, %rdi
leaq 0x107c1(%rip), %rsi     # 0x7cd53
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x106e3(%rip), %rdx     # 0x7cc90
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0xb0(%rbp)
xorl %r15d, %r15d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xe2ac(%rip), %rsi      # 0x7a8bb
movq %r14, %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xc76a(%rip), %rsi      # 0x78da6
callq 0x413d0
movq %rax, %rdi
leaq 0x10624(%rip), %rsi     # 0x7cc6f
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x105fa(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x105d5(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0xc71e(%rip), %rsi      # 0x78db8
callq 0x413d0
movq %rax, %rdi
leaq 0xc6e5(%rip), %rsi      # 0x78d8e
callq 0x413d0
movq %rax, %rdi
leaq 0x1069b(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10591(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0xc711(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0xcfbe(%rip), %rsi      # 0x796c1
callq 0x413d0
movq %rax, %rdi
leaq 0x1066c(%rip), %rsi     # 0x7cd7e
callq 0x413d0
movq %rax, %rdi
leaq 0x10632(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10521(%rip), %rsi     # 0x7cc76
callq 0x413d0
movq %rax, %rdi
leaq 0x10314(%rip), %rsi     # 0x7ca78
callq 0x413d0
movq %rax, %rdi
leaq 0x109aa(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r14
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0x105bd(%rip), %rsi     # 0x7cd91
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
leaq -0x68(%rbp), %r13
movq %r13, %rdi
leaq 0x10461(%rip), %rsi     # 0x7cc6f
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r15b
movq -0x38(%rbp), %rdi
movq %r13, %rsi
leaq 0x1044d(%rip), %rdx     # 0x7cc76
movq -0x48(%rbp), %r13
callq 0x4ed31
xorl %r15d, %r15d
movq %r13, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r13, -0xb0(%rbp)
xorl %r15d, %r15d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rbx
movq %rbx, %rdi
callq 0x418c8
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0x418c8
movq %rbx, %rdi
leaq 0xe030(%rip), %rsi      # 0x7a8bb
movq %r14, %rdx
callq 0x411c0
leaq -0x2a0(%rbp), %rdi
movq %rbx, %rsi
callq 0x41670
movq %rbx, %rdi
callq 0x418c8
leaq -0x2a8(%rbp), %rdi
leaq 0xc4ee(%rip), %rsi      # 0x78da6
callq 0x413d0
movq %rax, %rdi
leaq 0x103a8(%rip), %rsi     # 0x7cc6f
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x10398(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x10359(%rip), %rsi     # 0x7cc60
callq 0x413d0
movq %rax, %rdi
leaq 0xc4a2(%rip), %rsi      # 0x78db8
callq 0x413d0
movq %rax, %rdi
leaq 0xc469(%rip), %rsi      # 0x78d8e
callq 0x413d0
movq %rax, %rdi
leaq 0x1041f(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x1032f(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0xc495(%rip), %rsi      # 0x78e05
callq 0x413d0
movq %rax, %rdi
leaq 0xcd42(%rip), %rsi      # 0x796c1
callq 0x413d0
movq %rax, %rdi
leaq 0x103f0(%rip), %rsi     # 0x7cd7e
callq 0x413d0
movq %rax, %rdi
leaq 0x103b6(%rip), %rsi     # 0x7cd53
callq 0x413d0
movq %rax, %rbx
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
callq *(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41380
movq %rax, %rdi
leaq 0x102bf(%rip), %rsi     # 0x7cc90
callq 0x413d0
movq %rax, %rdi
leaq 0x10098(%rip), %rsi     # 0x7ca78
callq 0x413d0
movq %rax, %rdi
leaq 0x1072e(%rip), %rsi     # 0x7d11d
callq 0x413d0
leaq -0xb0(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
leaq -0x68(%rbp), %rdi
callq 0x418c8
pushq $0x58
popq %rdi
callq 0x413f0
pushq $0x20
popq %rdi
movq %rax, -0x48(%rbp)
callq 0x413f0
movq %rax, %r13
movq %rax, %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x416b0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, %r12
movq %rax, %rdi
leaq 0x10341(%rip), %rsi     # 0x7cd91
leaq -0x29(%rbp), %rdx
callq 0x411c0
pushq $0x20
popq %rdi
callq 0x413f0
movq %rax, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq 0x40(%rax), %rsi
movq (%rsi), %rax
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
callq *(%rax)
movq %r15, %rdi
leaq 0x101e9(%rip), %rsi     # 0x7cc6f
movq %rbx, %rdx
callq 0x4ed5a
movb $0x1, %bl
movb $0x1, %r14b
movq -0x38(%rbp), %rdi
movq %r15, %rsi
leaq 0x101ef(%rip), %rdx     # 0x7cc90
movq -0x48(%rbp), %r15
callq 0x4ed31
xorl %r14d, %r14d
movq %r15, %rdi
movq %r13, %rsi
movq %r12, %rdx
movq -0x38(%rbp), %rcx
callq 0x4dd8e
movq %r15, -0xb0(%rbp)
xorl %r14d, %r14d
xorl %ebx, %ebx
movq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x44d46
leaq -0x68(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
movq -0xd0(%rbp), %rax
addq $0x8, %rax
jmp 0x6b823
leaq -0x100(%rbp), %rdi
callq 0x71ce2
leaq -0xe8(%rbp), %rdi
callq 0x71cce
leaq -0x2a8(%rbp), %rdi
callq 0x410e0
addq $0x288, %rsp            # imm = 0x288
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0x6ce53
movq %rax, %rbx
jmp 0x6ce5f
jmp 0x6ccdf
jmp 0x6cd32
jmp 0x6ce36
movq %rax, %r15
movq %r13, %rdi
jmp 0x6cbca
movq %rax, %r15
movb $0x1, %bl
jmp 0x6cd59
jmp 0x6cd23
jmp 0x6ce36
jmp 0x6cc76
jmp 0x6cc67
jmp 0x6ccbb
jmp 0x6ce44
jmp 0x6ce36
jmp 0x6ce44
jmp 0x6ccbb
jmp 0x6ccdf
jmp 0x6cd03
jmp 0x6cc67
jmp 0x6ce1f
jmp 0x6ce44
jmp 0x6ce36
jmp 0x6cc76
jmp 0x6ce1f
jmp 0x6ce36
movq %rax, %r15
movq %r12, %rdi
callq 0x413a0
jmp 0x6cd66
jmp 0x6cd03
jmp 0x6ce1f
movq %rax, %r15
movb $0x1, %r14b
movb $0x1, %bl
jmp 0x6cd48
jmp 0x6cd32
jmp 0x6ce44
movq %rax, %r15
jmp 0x6cd6f
jmp 0x6ce44
jmp 0x6ccbb
jmp 0x6ce44
jmp 0x6ce36
jmp 0x6ce36
jmp 0x6cd32
jmp 0x6cc76
jmp 0x6cd03
jmp 0x6ce36
jmp 0x6cc67
jmp 0x6ce44
jmp 0x6ccbb
jmp 0x6cc67
jmp 0x6ce36
jmp 0x6ccb3
jmp 0x6ccc5
jmp 0x6cc57
jmp 0x6cd32
jmp 0x6ccdf
jmp 0x6ce44
jmp 0x6ce1f
movq %rax, %r13
movq %rbx, %rdi
jmp 0x6cce5
jmp 0x6ce44
movq %rax, %r13
movq %r14, %rdi
jmp 0x6cce5
jmp 0x6ce36
jmp 0x6cc76
movq %rax, %r13
movb $0x1, %r15b
movb $0x1, %bl
jmp 0x6cd8d
jmp 0x6cd03
jmp 0x6ce44
jmp 0x6cd32
jmp 0x6ce1f
jmp 0x6ce36
jmp 0x6cd32
jmp 0x6ccdf
jmp 0x6ccbb
jmp 0x6ce1f
jmp 0x6ce36
jmp 0x6ccbb
jmp 0x6ce44
movq %rax, %r13
movq %r15, %rdi
jmp 0x6cce5
movq %rax, %r13
jmp 0x6cdb4
jmp 0x6cd32
movq %rax, %r13
movb $0x1, %r12b
jmp 0x6cdcd
jmp 0x6ce36
jmp 0x6ce44
jmp 0x6ce36
movq %rax, %r13
movq %r12, %rdi
callq 0x413a0
jmp 0x6cdab
jmp 0x6ce44
jmp 0x6ce44
jmp 0x6ce44
jmp 0x6ce44
movq %rax, %r13
movb $0x1, %bl
jmp 0x6cd9e
movq %rax, %rbx
leaq -0x118(%rbp), %rdi
callq 0x44be0
jmp 0x6cdff
jmp 0x6cd32
movq %rax, %r15
jmp 0x6cd66
jmp 0x6cd32
jmp 0x6cd32
jmp 0x6cd32
jmp 0x6cd32
jmp 0x6cd32
movq %rax, %r13
jmp 0x6cdab
jmp 0x6ce44
movq %rax, %r15
leaq -0x68(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
testb %r14b, %r14b
je 0x6cd62
movq -0x38(%rbp), %rdi
callq 0x413a0
testb %bl, %bl
je 0x6cd6f
movq -0x48(%rbp), %rdi
callq 0x413a0
movq %r15, %rbx
jmp 0x6ce47
jmp 0x6cd81
jmp 0x6cd81
jmp 0x6cd81
jmp 0x6cd81
jmp 0x6cdbc
movq %rax, %r13
leaq -0x68(%rbp), %rdi
callq 0x418c8
leaq -0x88(%rbp), %rdi
callq 0x418c8
testb %r15b, %r15b
je 0x6cda7
movq -0x38(%rbp), %rdi
callq 0x413a0
testb %bl, %bl
je 0x6cdb4
movq -0x48(%rbp), %rdi
callq 0x413a0
movq %r13, %rbx
jmp 0x6ce47
movq %rax, %r13
leaq -0x68(%rbp), %rdi
callq 0x418c8
testb %r15b, %r15b
je 0x6cdd6
movq -0x38(%rbp), %rdi
callq 0x413a0
testb %r12b, %r12b
jne 0x6cdab
jmp 0x6cdb4
jmp 0x6cde9
jmp 0x6cde9
jmp 0x6cde9
jmp 0x6cde9
jmp 0x6ce36
jmp 0x6cde9
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x418c8
jmp 0x6ce22
jmp 0x6ce36
movq %rax, %rbx
leaq -0x130(%rbp), %rdi
callq 0x44be0
jmp 0x6ce47
jmp 0x6ce1f
jmp 0x6ce36
jmp 0x6ce1f
jmp 0x6ce36
jmp 0x6ce36
jmp 0x6ce1f
jmp 0x6ce36
jmp 0x6ce1f
jmp 0x6ce1f
movq %rax, %rbx
leaq -0x88(%rbp), %rdi
callq 0x418c8
jmp 0x6ce39
jmp 0x6ce36
jmp 0x6ce36
jmp 0x6ce44
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x418c8
jmp 0x6ce47
movq %rax, %rbx
leaq -0x100(%rbp), %rdi
callq 0x71ce2
leaq -0xe8(%rbp), %rdi
callq 0x71cce
leaq -0x2a8(%rbp), %rdi
callq 0x410e0
movq %rbx, %rdi
callq 0x41790