// File: /workspace/github_cpp_makefile_star2_O1/acliusBackHome[P]kamaya/dist/x86.hpp
// Function: x86::Assembler::Assembler(std::ostream&, std::vector<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>&)
Assembler(ostream &out, vector<Qua> &_quas) : of(out), quas(_quas) {
    quaEmit[QuaType::Q_ADD] =
        std::bind(&Assembler::quaADD, this, std::placeholders::_1);
    quaEmit[QuaType::Q_SUB] =
        std::bind(&Assembler::quaSUB, this, std::placeholders::_1);
    quaEmit[QuaType::Q_MUL] =
        std::bind(&Assembler::quaMUL, this, std::placeholders::_1);
    quaEmit[QuaType::Q_DIV] =
        std::bind(&Assembler::quaDIV, this, std::placeholders::_1);
    quaEmit[QuaType::Q_MOD] =
        std::bind(&Assembler::quaMOD, this, std::placeholders::_1);
    quaEmit[QuaType::Q_POW] =
        std::bind(&Assembler::quaPOW, this, std::placeholders::_1);
    quaEmit[QuaType::Q_LT] =
        std::bind(&Assembler::quaLT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_LE] =
        std::bind(&Assembler::quaLE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_GT] =
        std::bind(&Assembler::quaGT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_GE] =
        std::bind(&Assembler::quaGE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_EQ] =
        std::bind(&Assembler::quaEQ, this, std::placeholders::_1);
    quaEmit[QuaType::Q_NE] =
        std::bind(&Assembler::quaNE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JMP] =
        std::bind(&Assembler::quaJMP, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JLT] =
        std::bind(&Assembler::quaJLT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JLE] =
        std::bind(&Assembler::quaJLE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JGT] =
        std::bind(&Assembler::quaJGT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JGE] =
        std::bind(&Assembler::quaJGE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JE] =
        std::bind(&Assembler::quaJE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_JNE] =
        std::bind(&Assembler::quaJNE, this, std::placeholders::_1);
    quaEmit[QuaType::Q_ASSIGN] =
        std::bind(&Assembler::quaASSIGN, this, std::placeholders::_1);
    quaEmit[QuaType::Q_ALLOC] =
        std::bind(&Assembler::quaALLOC, this, std::placeholders::_1);
    quaEmit[QuaType::Q_DATA] =
        std::bind(&Assembler::quaDATA, this, std::placeholders::_1);
    quaEmit[QuaType::Q_CALL] =
        std::bind(&Assembler::quaCALL, this, std::placeholders::_1);
    quaEmit[QuaType::Q_RET] =
        std::bind(&Assembler::quaRET, this, std::placeholders::_1);
    quaEmit[QuaType::Q_FUNC] =
        std::bind(&Assembler::quaFUNC, this, std::placeholders::_1);
    quaEmit[QuaType::Q_READ] =
        std::bind(&Assembler::quaREAD, this, std::placeholders::_1);
    quaEmit[QuaType::Q_PRINT] =
        std::bind(&Assembler::quaPRINT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_EXIT] =
        std::bind(&Assembler::quaEXIT, this, std::placeholders::_1);
    quaEmit[QuaType::Q_LOGICAND] =
        std::bind(&Assembler::quaLOGICAND, this, std::placeholders::_1);
    quaEmit[QuaType::Q_LOGICOR] =
        std::bind(&Assembler::quaLOGICOR, this, std::placeholders::_1);
    quaEmit[QuaType::Q_LOGICNOT] =
        std::bind(&Assembler::quaLOGICNOT, this, std::placeholders::_1);
    quaMap = map<string, QuaType>{
        {"+", QuaType::Q_ADD},         {"-", QuaType::Q_SUB},
        {"*", QuaType::Q_MUL},         {"/", QuaType::Q_DIV},
        {"%", QuaType::Q_MOD},         {"^", QuaType::Q_POW},
        {"<", QuaType::Q_LT},          {"<=", QuaType::Q_LE},
        {">", QuaType::Q_GT},          {">=", QuaType::Q_GE},
        {"==", QuaType::Q_EQ},         {"!=", QuaType::Q_NE},
        {"jmp", QuaType::Q_JMP},       {"j<", QuaType::Q_JLT},
        {"j<=", QuaType::Q_JLE},       {"j>", QuaType::Q_JGT},
        {"j>=", QuaType::Q_JGE},       {"j==", QuaType::Q_JE},
        {":=", QuaType::Q_ASSIGN},     {"j!=", QuaType::Q_JNE},
        {"alloc", QuaType::Q_ALLOC},   {".data", QuaType::Q_DATA},
        {"call", QuaType::Q_CALL},     {"return", QuaType::Q_RET},
        {"function", QuaType::Q_FUNC}, {"read", QuaType::Q_READ},
        {"print", QuaType::Q_PRINT},   {"exit", QuaType::Q_EXIT},
        {"&&", QuaType::Q_LOGICAND},   {"||", QuaType::Q_LOGICOR},
        {"!", QuaType::Q_LOGICNOT}

    };
    wideMap = map<size_t, string>{{1, "db"}, {2, "dw"}, {4, "dd"}, {8, "dq"}};
    pow_count = 0;
  }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x528, %rsp            # imm = 0x528
movq %rdi, %rbx
movq %rsi, (%rdi)
leaq 0x10(%rdi), %rax
movq %rax, -0x78(%rbp)
leaq 0x18(%rdi), %r15
xorl %eax, %eax
movl %eax, 0x18(%rdi)
movq %rax, 0x20(%rdi)
movq %r15, 0x28(%rdi)
movq %r15, 0x30(%rdi)
movq %rax, 0x38(%rdi)
leaq 0x40(%rdi), %rcx
movq %rcx, -0x70(%rbp)
leaq 0x48(%rdi), %rcx
movl %eax, 0x48(%rdi)
movq %rax, 0x50(%rdi)
movq %rcx, 0x58(%rdi)
movq %rcx, -0x30(%rbp)
movq %rcx, 0x60(%rdi)
movq %rax, 0x68(%rdi)
leaq 0x70(%rdi), %r12
leaq 0x78(%rdi), %rcx
movl %eax, 0x78(%rdi)
movq %rax, 0x80(%rdi)
movq %rcx, 0x88(%rdi)
movq %rcx, 0x90(%rdi)
movq %rax, 0x98(%rdi)
movq %rdx, 0xa0(%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0xa8(%rdi)
movq %rax, 0xb8(%rdi)
leaq 0xc8(%rdi), %rcx
movl %eax, 0xc8(%rdi)
movq %rax, 0xd0(%rdi)
movq %rcx, 0xd8(%rdi)
movq %rcx, 0xe0(%rdi)
leaq 0xf8(%rdi), %rcx
movups %xmm0, 0x108(%rdi)
movups %xmm0, 0xe8(%rdi)
movups %xmm0, 0xf8(%rdi)
movq %rcx, 0x108(%rdi)
movq %rcx, 0x110(%rdi)
movups %xmm0, 0x118(%rdi)
movups %xmm0, 0x128(%rdi)
leaq 0x25678(%rip), %rcx     # 0x37a88
movq %rcx, -0x550(%rbp)
movq %rax, -0x548(%rbp)
movq %rdi, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl %eax, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x258d3(%rip), %rax     # 0x37d1c
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x25b26(%rip), %rax     # 0x37fb0
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x2, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x25d2b(%rip), %rax     # 0x381f6
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x3, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x2622a(%rip), %rax     # 0x38736
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x4, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x25eef(%rip), %rax     # 0x3843c
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x5, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x268ea(%rip), %rax     # 0x38e78
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x6, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26919(%rip), %rax     # 0x38ee8
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x7, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26948(%rip), %rax     # 0x38f58
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x8, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26977(%rip), %rax     # 0x38fc8
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x9, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x269a6(%rip), %rax     # 0x39038
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xa, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x269d5(%rip), %rax     # 0x390a8
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xb, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26f9c(%rip), %rax     # 0x396b0
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xc, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27323(%rip), %rax     # 0x39a78
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xd, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x2746e(%rip), %rax     # 0x39c04
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xe, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x275b9(%rip), %rax     # 0x39d90
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0xf, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27704(%rip), %rax     # 0x39f1c
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x10, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x2784f(%rip), %rax     # 0x3a0a8
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x11, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x2799a(%rip), %rax     # 0x3a234
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x12, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x260a1(%rip), %rax     # 0x3897c
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x13, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26272(%rip), %rax     # 0x38b8e
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x14, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27a63(%rip), %rax     # 0x3a3c0
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x15, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27b22(%rip), %rax     # 0x3a4c0
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x16, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27b57(%rip), %rax     # 0x3a536
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x17, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27c52(%rip), %rax     # 0x3a672
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x18, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27da5(%rip), %rax     # 0x3a806
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x19, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27e52(%rip), %rax     # 0x3a8f4
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1a, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x27eab(%rip), %rax     # 0x3a98e
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1b, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26664(%rip), %rax     # 0x39188
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1d, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x268b7(%rip), %rax     # 0x3941c
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1c, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq 0x26572(%rip), %rax     # 0x39118
movq %rax, -0x550(%rbp)
movq $0x0, -0x548(%rbp)
movq %rbx, -0x540(%rbp)
leaq -0x68(%rbp), %rsi
movl $0x1e, (%rsi)
movq %r12, %rdi
callq 0x14240
leaq -0x550(%rbp), %rsi
movq %rax, %rdi
callq 0x142a8
leaq -0x540(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3226e(%rip), %rsi     # 0x44e60
leaq 0x32268(%rip), %rdx     # 0x44e61
leaq -0x550(%rbp), %r13
movq %r13, %rdi
callq 0xf65c
leaq -0x528(%rbp), %r13
movl $0x0, -0x8(%r13)
leaq -0x518(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x34647(%rip), %rsi     # 0x47270
leaq 0x34641(%rip), %rdx     # 0x47271
movq %r13, %rdi
callq 0xf65c
leaq -0x500(%rbp), %r13
movl $0x1, -0x8(%r13)
leaq -0x4f0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x336de(%rip), %rsi     # 0x46337
leaq 0x336d8(%rip), %rdx     # 0x46338
movq %r13, %rdi
callq 0xf65c
leaq -0x4d8(%rbp), %r13
movl $0x2, -0x8(%r13)
leaq -0x4c8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x336b0(%rip), %rsi     # 0x46339
leaq 0x336aa(%rip), %rdx     # 0x4633a
movq %r13, %rdi
callq 0xf65c
leaq -0x4b0(%rbp), %r13
movl $0x3, -0x8(%r13)
leaq -0x4a0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x33682(%rip), %rsi     # 0x4633b
leaq 0x3367c(%rip), %rdx     # 0x4633c
movq %r13, %rdi
callq 0xf65c
leaq -0x488(%rbp), %r13
movl $0x4, -0x8(%r13)
leaq -0x478(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31a9a(%rip), %rsi     # 0x44783
leaq 0x31a94(%rip), %rdx     # 0x44784
movq %r13, %rdi
callq 0xf65c
leaq -0x460(%rbp), %r13
movl $0x5, -0x8(%r13)
leaq -0x450(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3130f(%rip), %rsi     # 0x44028
leaq 0x31309(%rip), %rdx     # 0x44029
movq %r13, %rdi
callq 0xf65c
leaq -0x438(%rbp), %r13
movl $0x6, -0x8(%r13)
leaq -0x428(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x312e2(%rip), %rsi     # 0x4402b
leaq 0x312dd(%rip), %rdx     # 0x4402d
movq %r13, %rdi
callq 0xf65c
leaq -0x410(%rbp), %r13
movl $0x7, -0x8(%r13)
leaq -0x400(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3120b(%rip), %rsi     # 0x43f84
leaq 0x31205(%rip), %rdx     # 0x43f85
movq %r13, %rdi
callq 0xf65c
leaq -0x3e8(%rbp), %r13
movl $0x8, -0x8(%r13)
leaq -0x3d8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31289(%rip), %rsi     # 0x44032
leaq 0x31284(%rip), %rdx     # 0x44034
movq %r13, %rdi
callq 0xf65c
leaq -0x3c0(%rbp), %r13
movl $0x9, -0x8(%r13)
leaq -0x3b0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3125d(%rip), %rsi     # 0x44036
leaq 0x31258(%rip), %rdx     # 0x44038
movq %r13, %rdi
callq 0xf65c
leaq -0x398(%rbp), %r13
movl $0xa, -0x8(%r13)
leaq -0x388(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31231(%rip), %rsi     # 0x4403a
leaq 0x3122c(%rip), %rdx     # 0x4403c
movq %r13, %rdi
callq 0xf65c
leaq -0x370(%rbp), %r13
movl $0xb, -0x8(%r13)
leaq -0x360(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31204(%rip), %rsi     # 0x4403d
leaq 0x31200(%rip), %rdx     # 0x44040
movq %r13, %rdi
callq 0xf65c
leaq -0x348(%rbp), %r13
movl $0xc, -0x8(%r13)
leaq -0x338(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x311be(%rip), %rsi     # 0x44027
leaq 0x311b9(%rip), %rdx     # 0x44029
movq %r13, %rdi
callq 0xf65c
leaq -0x320(%rbp), %r13
movl $0xd, -0x8(%r13)
leaq -0x310(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31191(%rip), %rsi     # 0x4402a
leaq 0x3118d(%rip), %rdx     # 0x4402d
movq %r13, %rdi
callq 0xf65c
leaq -0x2f8(%rbp), %r13
movl $0xe, -0x8(%r13)
leaq -0x2e8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31165(%rip), %rsi     # 0x4402e
leaq 0x31160(%rip), %rdx     # 0x44030
movq %r13, %rdi
callq 0xf65c
leaq -0x2d0(%rbp), %r13
movl $0xf, -0x8(%r13)
leaq -0x2c0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31138(%rip), %rsi     # 0x44031
leaq 0x31134(%rip), %rdx     # 0x44034
movq %r13, %rdi
callq 0xf65c
leaq -0x2a8(%rbp), %r13
movl $0x10, -0x8(%r13)
leaq -0x298(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3110c(%rip), %rsi     # 0x44035
leaq 0x31108(%rip), %rdx     # 0x44038
movq %r13, %rdi
callq 0xf65c
leaq -0x280(%rbp), %r13
movl $0x11, -0x8(%r13)
leaq -0x270(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x333e4(%rip), %rsi     # 0x4633d
leaq 0x333df(%rip), %rdx     # 0x4633f
movq %r13, %rdi
callq 0xf65c
leaq -0x258(%rbp), %r13
movl $0x13, -0x8(%r13)
leaq -0x248(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x310b0(%rip), %rsi     # 0x44039
leaq 0x310ac(%rip), %rdx     # 0x4403c
movq %r13, %rdi
callq 0xf65c
leaq -0x230(%rbp), %r13
movl $0x12, -0x8(%r13)
leaq -0x220(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31ee0(%rip), %rsi     # 0x44e99
leaq 0x31ede(%rip), %rdx     # 0x44e9e
movq %r13, %rdi
callq 0xf65c
leaq -0x208(%rbp), %r13
movl $0x14, -0x8(%r13)
leaq -0x1f8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x33357(%rip), %rsi     # 0x46340
leaq 0x33355(%rip), %rdx     # 0x46345
movq %r13, %rdi
callq 0xf65c
leaq -0x1e0(%rbp), %r13
movl $0x15, -0x8(%r13)
leaq -0x1d0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x33a85(%rip), %rsi     # 0x46a9e
leaq 0x33a82(%rip), %rdx     # 0x46aa2
movq %r13, %rdi
callq 0xf65c
leaq -0x1b8(%rbp), %r13
movl $0x16, -0x8(%r13)
leaq -0x1a8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31e19(%rip), %rsi     # 0x44e62
leaq 0x31e18(%rip), %rdx     # 0x44e68
movq %r13, %rdi
callq 0xf65c
leaq -0x190(%rbp), %r13
movl $0x17, -0x8(%r13)
leaq -0x180(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x30e52(%rip), %rsi     # 0x43ecb
leaq 0x30e53(%rip), %rdx     # 0x43ed3
movq %r13, %rdi
callq 0xf65c
leaq -0x168(%rbp), %r13
movl $0x18, -0x8(%r13)
leaq -0x158(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x3329d(%rip), %rsi     # 0x46346
leaq 0x3329a(%rip), %rdx     # 0x4634a
movq %r13, %rdi
callq 0xf65c
leaq -0x140(%rbp), %r13
movl $0x19, -0x8(%r13)
leaq -0x130(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x31d75(%rip), %rsi     # 0x44e4e
leaq 0x31d73(%rip), %rdx     # 0x44e53
movq %r13, %rdi
callq 0xf65c
leaq -0x118(%rbp), %r13
movl $0x1a, -0x8(%r13)
leaq -0x108(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x33242(%rip), %rsi     # 0x4634b
leaq 0x3323f(%rip), %rdx     # 0x4634f
movq %r13, %rdi
callq 0xf65c
leaq -0xf0(%rbp), %r13
movl $0x1b, -0x8(%r13)
leaq -0xe0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x33217(%rip), %rsi     # 0x46350
leaq 0x33212(%rip), %rdx     # 0x46352
movq %r13, %rdi
callq 0xf65c
leaq -0xc8(%rbp), %r13
movl $0x1d, -0x8(%r13)
leaq -0xb8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x331ea(%rip), %rsi     # 0x46353
leaq 0x331e5(%rip), %rdx     # 0x46355
movq %r13, %rdi
callq 0xf65c
leaq -0xa0(%rbp), %r13
movl $0x1c, -0x8(%r13)
leaq -0x90(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x331bd(%rip), %rsi     # 0x46356
leaq 0x331b7(%rip), %rdx     # 0x46357
movq %r13, %rdi
callq 0xf65c
leaq -0x550(%rbp), %rsi
movl $0x1e, 0x4d0(%rsi)
leaq -0x68(%rbp), %rdi
leaq -0x32(%rbp), %rcx
leaq -0x31(%rbp), %r8
movl $0x1f, %edx
callq 0x14348
movq -0x78(%rbp), %rdi
callq 0x14acc
movq -0x58(%rbp), %rax
testq %rax, %rax
je 0x1321c
leaq -0x60(%rbp), %rcx
movl (%rcx), %edx
movl %edx, 0x18(%rbx)
movq %rax, 0x20(%rbx)
movq 0x10(%rcx), %rdx
movq %rdx, 0x28(%rbx)
movq 0x18(%rcx), %rdx
movq %rdx, 0x30(%rbx)
movq %r15, 0x8(%rax)
movq 0x20(%rcx), %rax
movq %rax, 0x38(%rbx)
xorl %eax, %eax
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x68(%rbp), %rdi
callq 0x14780
xorl %r15d, %r15d
movq -0xa0(%rbp,%r15), %rdi
leaq (%r14,%r15), %rax
cmpq %rdi, %rax
je 0x1323e
callq 0x42b0
addq $-0x28, %r15
cmpq $-0x4d8, %r15           # imm = 0xFB28
jne 0x13228
leaq -0x548(%rbp), %rdi
movq $0x1, -0x8(%rdi)
leaq -0x538(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x330ec(%rip), %rsi     # 0x46358
leaq 0x330e7(%rip), %rdx     # 0x4635a
callq 0xf65c
leaq -0x528(%rbp), %r14
movq $0x2, (%r14)
leaq -0x520(%rbp), %rdi
leaq -0x510(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x330bc(%rip), %rsi     # 0x4635b
leaq 0x330b7(%rip), %rdx     # 0x4635d
callq 0xf65c
leaq -0x500(%rbp), %r14
movq $0x4, (%r14)
leaq -0x4f8(%rbp), %rdi
leaq -0x4e8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0x355fd(%rip), %rsi     # 0x488cf
leaq 0x355f8(%rip), %rdx     # 0x488d1
callq 0xf65c
leaq -0x4d8(%rbp), %r14
movq $0x8, (%r14)
leaq -0x4d0(%rbp), %rdi
leaq -0x4c0(%rbp), %r13
movq %r13, -0x10(%r13)
leaq 0x33059(%rip), %rsi     # 0x4635e
leaq 0x33054(%rip), %rdx     # 0x46360
callq 0xf65c
leaq -0x68(%rbp), %rdi
leaq -0x550(%rbp), %rsi
leaq -0x32(%rbp), %rcx
leaq -0x31(%rbp), %r8
movl $0x4, %edx
callq 0x143cc
movq -0x70(%rbp), %rdi
callq 0x14d60
movq -0x58(%rbp), %rax
testq %rax, %rax
je 0x1337f
leaq -0x60(%rbp), %rcx
movl (%rcx), %edx
movl %edx, 0x48(%rbx)
movq %rax, 0x50(%rbx)
movq 0x10(%rcx), %rdx
movq %rdx, 0x58(%rbx)
movq 0x18(%rcx), %rdx
movq %rdx, 0x60(%rbx)
movq -0x30(%rbp), %rdx
movq %rdx, 0x8(%rax)
movq 0x20(%rcx), %rax
movq %rax, 0x68(%rbx)
xorl %eax, %eax
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x68(%rbp), %rdi
callq 0x13dda
leaq -0x4c0(%rbp), %r14
xorl %r15d, %r15d
movq -0x4d0(%rbp,%r15), %rdi
leaq (%r14,%r15), %rax
cmpq %rdi, %rax
je 0x133a8
callq 0x42b0
addq $-0x28, %r15
cmpq $-0xa0, %r15
jne 0x13392
movl $0x0, 0x8(%rbx)
addq $0x528, %rsp            # imm = 0x528
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, -0x30(%rbp)
movq $-0xa0, %r15
movq -0x10(%r13), %rdi
cmpq %rdi, %r13
je 0x133e7
callq 0x42b0
addq $-0x28, %r13
addq $0x28, %r15
jne 0x133d9
movb $0x1, %al
jmp 0x1340e
jmp 0x133f9
jmp 0x133f9
movq %rax, -0x30(%rbp)
xorl %eax, %eax
jmp 0x1340e
movq %rax, -0x30(%rbp)
xorl %eax, %eax
leaq -0x550(%rbp), %r14
leaq -0x550(%rbp), %rcx
cmpq %r14, %rcx
sete %cl
orb %al, %cl
jne 0x1352f
addq $-0x10, %r14
leaq -0x550(%rbp), %r15
movq -0x10(%r14), %rdi
cmpq %rdi, %r14
je 0x1343c
callq 0x42b0
leaq -0x28(%r14), %rax
addq $-0x18, %r14
cmpq %r15, %r14
movq %rax, %r14
jne 0x1342e
jmp 0x1352f
movq %rax, -0x30(%rbp)
movq $-0x4d8, %r15           # imm = 0xFB28
movq -0x10(%r14), %rdi
cmpq %rdi, %r14
je 0x1346a
callq 0x42b0
addq $-0x28, %r14
addq $0x28, %r15
jne 0x1345c
movb $0x1, %al
jmp 0x134ba
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
jmp 0x134b4
movq %rax, -0x30(%rbp)
xorl %eax, %eax
leaq -0x550(%rbp), %rcx
cmpq %r13, %rcx
sete %cl
orb %al, %cl
jne 0x1352f
leaq -0x550(%rbp), %r14
movq -0x28(%r13), %rdi
leaq -0x18(%r13), %rax
cmpq %rdi, %rax
je 0x134e4
callq 0x42b0
addq $-0x28, %r13
cmpq %r14, %r13
jne 0x134d2
jmp 0x1352f
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
jmp 0x1352b
movq %rax, -0x30(%rbp)
leaq 0xa8(%rbx), %r14
leaq 0xf0(%rbx), %r15
leaq 0xc0(%rbx), %r13
addq $0x120, %rbx            # imm = 0x120
movq %rbx, %rdi
callq 0x14d98
movq %r15, %rdi
callq 0x13952
movq %r13, %rdi
callq 0x13952
movq %r14, %rdi
callq 0x14450
movq %r12, %rdi
callq 0x14e5a
movq -0x70(%rbp), %rdi
callq 0x13dda
movq -0x78(%rbp), %rdi
callq 0x14780
movq -0x30(%rbp), %rdi
callq 0x4560