// File: /workspace/github_cpp_makefile_star2_O1/davidsun[P]TinyCompiler/CodeGenerator.cpp
// Function: CodeGenerator::parse_p[abi:cxx11]()
pair <string, vector <string> > CodeGenerator::parse_p(){
    int current_rule = _lra_result[_lra_position];
    _lra_position --;
    const string &rule = _lr_analytics.getRules()[current_rule].right_side;
    vector <string> apps;
    vector <vector <string> > parses;
    for (int i = rule.size() - 1; i >= 0; i --){
        if (rule[i] == _la_result[_la_position].first){
            if (rule[i] <= 'Z' && rule[i] >= 'A'){
                apps.push_back(string() + rule[i] + _la_result[_la_position].second);
                parses.push_back(vector <string>());
            }
            _la_position --;
        }  else {
            pair <string, vector <string> > result = parse_p();
            apps.push_back(string(" ") + result.first);
            parses.push_back(result.second);
        }
    }
    reverse(apps.begin(), apps.end());
    reverse(parses.begin(), parses.end());
    const ListCodeItems &lst_code_items = _code_rules[current_rule];
    _tmp_count ++;
    string ret_var_name = "t." + Utils::toString(_tmp_count);
    vector <string> codes;
    int label_start = _label_count;
    for (int i = 0; i < lst_code_items.size(); i ++){
        const string &command = lst_code_items[i].command;
        if (command == "PARSE"){
            // Parse command
            int pos = lst_code_items[i].param1 - '0';
            codes.insert(codes.end(), parses[pos].begin(), parses[pos].end());
        }  else if (command == "LABEL"){
            // Label
            if (lst_code_items[i].param1 == '-'){
                _label_count ++;
                string lbl_name = "L." + Utils::toString(_label_count);
                codes.push_back(lbl_name + ":");
            }  else {
                codes.push_back("L." + apps[lst_code_items[i].param1 - '0'].substr(1) + ":");
            }
        }  else if (command == "J"){
            // Jump
            codes.push_back(lst_code_items[i].command + "\tL." + Utils::toString(label_start + 1 + lst_code_items[i].param1 - '0')); 
        }  else if (command == "CALL"){
            // Call
            string as = lst_code_items[i].command + "\tL." + apps[lst_code_items[i].param1 - '0'].substr(1);
            if (lst_code_items[i].param2 == 'N'){
                as += string("\t") + ret_var_name;
            }  else if (lst_code_items[i].param2 != '-'){
                as += string("\t") + apps[lst_code_items[i].param2 - '0'].substr(1);
            }
            codes.push_back(as);
        }  else if (command == "BEQZ" || command == "BGEZ" || command == "BGTZ" || command == "BLEZ" || command == "BLTZ"){
            // Conditional Jump
            string as = lst_code_items[i].command + '\t';
            if (lst_code_items[i].param1 == 'N'){
                as += ret_var_name;
            }  else if (lst_code_items[i].param1 != '-'){
                as += apps[lst_code_items[i].param1 - '0'].substr(1);
            }
            as += "\tL." + Utils::toString(label_start + 1 + lst_code_items[i].param2 - '0');
            codes.push_back(as);
        }  else {
            string as = lst_code_items[i].command;
            if (lst_code_items[i].param1 == 'N'){
                as += string("\t") + ret_var_name;
            }  else if (lst_code_items[i].param1 != '-'){
                as += string("\t") + apps[lst_code_items[i].param1 - '0'].substr(1);
            }
            if (lst_code_items[i].param2 == 'N'){
                as += string("\t") + ret_var_name;
            }  else if (lst_code_items[i].param2 == 'T'){
                as += string("\t") + "1";
            }  else if (lst_code_items[i].param2 == 'F'){
                as += string("\t") + "0";
            }  else if (lst_code_items[i].param2 != '-'){
                as += string("\t") + apps[lst_code_items[i].param2 - '0'].substr(1);
            }
            codes.push_back(as);
        }
    }
    return make_pair(ret_var_name, codes);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x138, %rsp            # imm = 0x138
movq %rsi, %r14
movq %rdi, 0x130(%rsp)
movslq (%rsi), %rax
movq 0x60(%rsi), %rcx
movslq (%rcx,%rax,4), %rbx
decl %eax
movl %eax, (%rsi)
leaq 0x10(%rsi), %rdi
callq 0x470a
movq (%rax), %rax
leaq (%rbx,%rbx,2), %rcx
movq %rcx, 0x60(%rsp)
shlq $0x4, %rcx
xorl %edx, %edx
movq %rdx, 0xe0(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0xd0(%rsp)
movq %rdx, 0x120(%rsp)
movaps %xmm0, 0x110(%rsp)
movl 0x10(%rax,%rcx), %edx
decl %edx
movq %r14, 0x68(%rsp)
js 0x73a6
movq %r14, %rsi
leaq (%rax,%rcx), %rbx
addq $0x8, %rbx
leaq 0x30(%rsp), %r12
leaq 0xb0(%rsp), %r15
movl %edx, %r14d
incq %r14
leaq 0x90(%rsp), %rbp
movq (%rbx), %rax
movb -0x1(%rax,%r14), %al
movslq 0x4(%rsi), %rcx
movq 0x48(%rsi), %rdx
leaq (%rcx,%rcx,4), %rcx
cmpb (%rdx,%rcx,8), %al
jne 0x7152
addb $-0x41, %al
cmpb $0x19, %al
ja 0x739a
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
movq (%rbx), %rax
movsbl -0x1(%rax,%r14), %r8d
movl $0x1, %ecx
movq %rsp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x2320
movq %r12, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7265
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x726d
movq %rbp, %rdi
callq 0x7034
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %r13
movq %r13, %rdi
leaq 0x90db(%rip), %rsi      # 0x1024b
leaq 0x90d5(%rip), %rdx      # 0x1024c
callq 0x299a
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
movq %r13, %rdi
callq 0x20a0
movq %r12, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x71b7
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x71bf
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xd0(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x624e
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x7200
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x721b
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0x110(%rsp), %rdi
movq %r15, %r13
movq %r15, %rsi
callq 0x589c
movq %r13, %rdi
callq 0x5840
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x725b
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x68(%rsp), %rsi
jmp 0x739d
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x68(%rsp), %rsi
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movslq 0x4(%rsi), %rax
movq 0x48(%rsi), %rcx
leaq (%rax,%rax,4), %rax
movq 0x8(%rcx,%rax,8), %rsi
movq 0x10(%rcx,%rax,8), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
leaq 0xa0(%rsp), %rsi
movq %rsi, 0x90(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x72de
movq %rdx, 0x90(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xa0(%rsp)
jmp 0x72e4
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x98(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xd0(%rsp), %rdi
movq %rbp, %rsi
callq 0x624e
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x7334
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x734b
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7366
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
xorps %xmm0, %xmm0
movaps %xmm0, 0x90(%rsp)
movq $0x0, 0xa0(%rsp)
leaq 0x110(%rsp), %rdi
movq %rbp, %rsi
callq 0x6010
movq %rbp, %rdi
callq 0x5840
movq 0x68(%rsp), %rsi
decl 0x4(%rsi)
decq %r14
jg 0x70d4
movq 0xd0(%rsp), %rbx
movq 0xd8(%rsp), %r15
cmpq %r15, %rbx
setne %al
addq $-0x20, %r15
cmpq %rbx, %r15
seta %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x73e5
movq %rbx, %rdi
movq %r15, %rsi
callq 0x2130
addq $0x20, %rbx
addq $-0x20, %r15
cmpq %r15, %rbx
jb 0x73cd
movq 0x110(%rsp), %rdi
movq 0x118(%rsp), %rsi
callq 0x95ab
movq 0x60(%rsp), %r15
shlq $0x3, %r15
movq 0x68(%rsp), %rax
addq 0x78(%rax), %r15
movl 0x8(%rax), %esi
incl %esi
movl %esi, 0x8(%rax)
leaq 0x20(%rsp), %rdi
callq 0x290a
leaq 0xa0(%rsp), %r14
leaq 0x8d30(%rip), %rcx      # 0x1015d
leaq 0x20(%rsp), %rdi
movl $0x2, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x21f0
movq %r14, 0x90(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x746d
movq %rdx, 0x90(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xa0(%rsp)
jmp 0x7474
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, 0x98(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x74aa
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
xorps %xmm0, %xmm0
movaps %xmm0, 0xf0(%rsp)
movq $0x0, 0x100(%rsp)
movq (%r15), %rbx
cmpq %rbx, 0x8(%r15)
je 0x8457
movq %r15, %r14
movq 0x68(%rsp), %rax
movl 0xc(%rax), %eax
addl $-0x2f, %eax
movl %eax, 0xcc(%rsp)
xorl %r12d, %r12d
movq %rsp, %rbp
leaq 0x8c7e(%rip), %r15      # 0x1016e
xorl %edx, %edx
movq %rdx, 0x60(%rsp)
addq %r12, %rbx
movq %rbx, %rdi
leaq 0x8c5c(%rip), %rsi      # 0x10160
callq 0x2090
testl %eax, %eax
je 0x767a
movq %rbx, %rdi
leaq 0x8c4b(%rip), %rsi      # 0x10166
callq 0x2090
testl %eax, %eax
je 0x76c1
movq %rbx, %rdi
leaq 0x8c3a(%rip), %rsi      # 0x1016c
callq 0x2090
testl %eax, %eax
je 0x772d
movq %rbx, %rdi
leaq 0x8c29(%rip), %rsi      # 0x10172
callq 0x2090
testl %eax, %eax
je 0x78da
movq %rbx, %rdi
leaq 0x8c17(%rip), %rsi      # 0x10177
callq 0x2090
testl %eax, %eax
je 0x77d1
movq %rbx, %rdi
leaq 0x8c05(%rip), %rsi      # 0x1017c
callq 0x2090
testl %eax, %eax
je 0x77d1
movq %rbx, %rdi
leaq 0x8bf3(%rip), %rsi      # 0x10181
callq 0x2090
testl %eax, %eax
je 0x77d1
movq %rbx, %rdi
leaq 0x8be1(%rip), %rsi      # 0x10186
callq 0x2090
testl %eax, %eax
je 0x77d1
movq %rbx, %rdi
leaq 0x8bcf(%rip), %rsi      # 0x1018b
callq 0x2090
testl %eax, %eax
je 0x77d1
movq %r14, %r13
movq (%r14), %rax
leaq 0x30(%rsp), %rcx
movq %rcx, 0x20(%rsp)
movq (%rax,%r12), %rsi
movq 0x8(%rax,%r12), %rdx
addq %rsi, %rdx
leaq 0x20(%rsp), %rdi
callq 0x2854
leaq 0x40(%rsp), %rbx
movq (%r13), %rax
movzbl 0x20(%rax,%r12), %eax
cmpl $0x2d, %eax
leaq 0x20(%rsp), %rsi
je 0x8173
cmpl $0x4e, %eax
jne 0x804f
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x8c2c(%rip), %rsi      # 0x10255
leaq 0x8c26(%rip), %rdx      # 0x10256
callq 0x299a
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
movq %rbx, %rdi
callq 0x20a0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8106
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x810c
movq %r14, %r13
movq (%r14), %rax
movsbq 0x20(%rax,%r12), %rax
movq 0xf8(%rsp), %rsi
movq 0x110(%rsp), %rcx
leaq (%rax,%rax,2), %rax
movq -0x480(%rcx,%rax,8), %rdx
movq -0x478(%rcx,%rax,8), %rcx
leaq 0xf0(%rsp), %rdi
callq 0x95f4
movq 0x60(%rsp), %rdx
jmp 0x801a
movq (%r14), %rax
cmpb $0x2d, 0x20(%rax,%r12)
jne 0x785b
movq 0x68(%rsp), %rax
movl 0xc(%rax), %esi
incl %esi
movl %esi, 0xc(%rax)
movq %rbp, %rdi
callq 0x290a
movl $0x2, %r8d
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x8a76(%rip), %rcx      # 0x1016f
callq 0x21f0
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7af1
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x7af7
movq (%r14), %rax
leaq 0x10(%rsp), %rcx
movq %rcx, (%rsp)
movq (%rax,%r12), %rsi
movq 0x8(%rax,%r12), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x2854
leaq 0x40(%rsp), %rbx
movq %rbp, %rdi
movq %r15, %rsi
callq 0x2330
movq (%r14), %rax
movsbl 0x20(%rax,%r12), %esi
addl 0xcc(%rsp), %esi
movq %rbx, %rdi
callq 0x290a
movq (%rsp), %rcx
movl $0xf, %esi
leaq 0x10(%rsp), %rax
cmpq %rax, %rcx
je 0x778d
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %r8
movq 0x48(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x77bf
movl $0xf, %esi
leaq 0x50(%rsp), %rdi
cmpq %rdi, 0x40(%rsp)
je 0x77b6
movq 0x50(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x7c64
movq 0x40(%rsp), %rsi
movq %rbp, %rdi
callq 0x20a0
jmp 0x7c70
movq %r14, %r13
movq (%r14), %rax
leaq 0x30(%rsp), %rcx
movq %rcx, 0x20(%rsp)
movq (%rax,%r12), %rsi
movq 0x8(%rax,%r12), %rdx
addq %rsi, %rdx
leaq 0x20(%rsp), %r14
movq %r14, %rdi
callq 0x2854
leaq 0x40(%rsp), %rbx
movq 0x28(%rsp), %rsi
movl $0x1, %ecx
movq %r14, %rdi
xorl %edx, %edx
movl $0x9, %r8d
callq 0x2320
movq (%r13), %rax
movzbl 0x20(%rax,%r12), %eax
cmpl $0x2d, %eax
leaq 0x8941(%rip), %r15      # 0x1016e
je 0x79fd
cmpl $0x4e, %eax
jne 0x799a
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
jmp 0x79fd
movq (%r14), %rax
movsbq 0x20(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
leaq 0x40(%rsp), %rbx
movq %rbx, %rdi
movq $-0x1, %rcx
callq 0x21d0
movl $0x2, %r8d
movq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x88c7(%rip), %rcx      # 0x1016f
callq 0x21f0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7b8b
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7b91
movq (%r14), %rax
leaq 0x10(%rsp), %rcx
movq %rcx, (%rsp)
movq (%rax,%r12), %rsi
movq 0x8(%rax,%r12), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x2854
movq %rbp, %rdi
movq %r15, %rsi
callq 0x2330
leaq 0x40(%rsp), %rbx
movq (%r14), %rax
movsbq 0x20(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
movq %rbx, %rdi
movq $-0x1, %rcx
callq 0x21d0
movq (%rsp), %rcx
movl $0xf, %esi
leaq 0x10(%rsp), %rax
cmpq %rax, %rcx
je 0x7956
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %r8
movq 0x48(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x7988
movl $0xf, %esi
leaq 0x50(%rsp), %rdi
cmpq %rdi, 0x40(%rsp)
je 0x797f
movq 0x50(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x7d1e
movq 0x40(%rsp), %rsi
movq %rbp, %rdi
callq 0x20a0
jmp 0x7d2a
movq (%r13), %rax
movsbq 0x20(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
movq %rbp, %rdi
movq $-0x1, %rcx
callq 0x21d0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x79fd
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%r13), %rax
movsbl 0x21(%rax,%r12), %esi
addl 0xcc(%rsp), %esi
movq %rbx, %rdi
callq 0x290a
movl $0x3, %r8d
movq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
movq %r15, %rcx
callq 0x21f0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7a51
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7a57
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7a9d
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x7ab9
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0xf0(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x8d30
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x7ae7
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x60(%rsp), %rdx
jmp 0x801a
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7b2a
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x2854
movq %rbp, %rdi
leaq 0x876a(%rip), %rsi      # 0x102bc
callq 0x2330
leaq 0xf0(%rsp), %rdi
movq %rbp, %rsi
callq 0x624e
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7ff6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x7ff6
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbp, %rdi
leaq 0x8709(%rip), %rsi      # 0x102bc
callq 0x2330
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7be0
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x7be6
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xf0(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x624e
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x7c2c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7c47
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x8012
movq 0x50(%rsp), %rsi
jmp 0x800a
movq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x21f0
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x7c95
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x7c9b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xf0(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x624e
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x7ce6
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x7d02
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8012
movq 0x10(%rsp), %rsi
jmp 0x800a
movq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x21f0
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x7d4f
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x7d55
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x7d8e
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7da9
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%r14), %rax
movzbl 0x21(%rax,%r12), %eax
cmpl $0x2d, %eax
je 0x7fe4
cmpl $0x4e, %eax
jne 0x7e25
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x8481(%rip), %rsi      # 0x10255
leaq 0x847b(%rip), %rdx      # 0x10256
callq 0x299a
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
movq %rbx, %rdi
callq 0x20a0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7ed7
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7edd
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x841c(%rip), %rsi      # 0x10255
leaq 0x8416(%rip), %rdx      # 0x10256
callq 0x299a
movq (%r14), %rax
movsbq 0x21(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
leaq 0x70(%rsp), %rdi
movq $-0x1, %rcx
callq 0x21d0
movq 0x40(%rsp), %rcx
movl $0xf, %esi
leaq 0x50(%rsp), %rax
cmpq %rax, %rcx
je 0x7e94
movq 0x50(%rsp), %rsi
movq 0x48(%rsp), %r8
movq 0x78(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x7ec8
movl $0xf, %esi
leaq 0x80(%rsp), %rdi
cmpq %rdi, 0x70(%rsp)
je 0x7ec3
movq 0x80(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x7f24
movq 0x70(%rsp), %rsi
movq %rbx, %rdi
callq 0x20a0
jmp 0x7f32
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7fc8
movq 0x10(%rsp), %rsi
jmp 0x7fc0
leaq 0x70(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x21f0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x7f55
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7f5b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7fa6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x7fc8
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x7fe4
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0xf0(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x8d30
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x8012
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x60(%rsp), %rdx
movq %r14, %r13
incq %rdx
movq (%r13), %rbx
movq %r13, %r14
movq 0x8(%r13), %rax
subq %rbx, %rax
sarq $0x3, %rax
movabsq $-0x3333333333333333, %rcx # imm = 0xCCCCCCCCCCCCCCCD
imulq %rcx, %rax
addq $0x28, %r12
cmpq %rdx, %rax
ja 0x74f2
jmp 0x8457
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %r13
movq %rbx, %rdi
leaq 0x81ef(%rip), %rsi      # 0x10255
leaq 0x81e9(%rip), %rdx      # 0x10256
callq 0x299a
movq (%r14), %rax
movsbq 0x20(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
leaq 0x70(%rsp), %rbx
movq %rbx, %rdi
movq $-0x1, %rcx
callq 0x21d0
movq %rbp, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x8c87
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
movq %r13, %rbx
je 0x80ea
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x8152
movq 0x80(%rsp), %rsi
jmp 0x814a
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8152
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x816e
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0x20(%rsp), %rsi
movq (%r14), %rax
movzbl 0x21(%rax,%r12), %eax
cmpl $0x4d, %eax
jg 0x81ef
cmpl $0x2d, %eax
je 0x8445
cmpl $0x46, %eax
jne 0x8262
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x80ae(%rip), %rsi      # 0x10255
leaq 0x80a8(%rip), %rdx      # 0x10256
callq 0x299a
movq %rbx, %rdi
leaq 0x7fd5(%rip), %rsi      # 0x10192
callq 0x2330
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8372
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x8378
cmpl $0x54, %eax
je 0x831d
cmpl $0x4e, %eax
jne 0x8262
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x8044(%rip), %rsi      # 0x10255
leaq 0x803e(%rip), %rdx      # 0x10256
callq 0x299a
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
movq %rbx, %rdi
callq 0x20a0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x83a5
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x83ab
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %r13
movq %rbx, %rdi
leaq 0x7fdc(%rip), %rsi      # 0x10255
leaq 0x7fd6(%rip), %rdx      # 0x10256
callq 0x299a
movq (%r14), %rax
movsbq 0x21(%rax,%r12), %rax
movq 0xd0(%rsp), %rcx
shlq $0x5, %rax
leaq (%rcx,%rax), %rsi
addq $-0x600, %rsi           # imm = 0xFA00
movl $0x1, %edx
leaq 0x70(%rsp), %rbx
movq %rbx, %rdi
movq $-0x1, %rcx
callq 0x21d0
movq %rbp, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x8c87
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x82fa
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x8424
movq 0x80(%rsp), %rsi
jmp 0x841c
leaq 0x50(%rsp), %rax
movq %rax, 0x40(%rsp)
movq %rbx, %rdi
leaq 0x7f24(%rip), %rsi      # 0x10255
leaq 0x7f1e(%rip), %rdx      # 0x10256
callq 0x299a
movq %rbx, %rdi
leaq 0x7e49(%rip), %rsi      # 0x10190
callq 0x2330
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x83d8
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x83de
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
jmp 0x8409
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
jmp 0x8409
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x20(%rsp), %rdi
callq 0x20a0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8424
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x8440
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0x20(%rsp), %rsi
leaq 0xf0(%rsp), %rdi
callq 0x8d30
jmp 0x7ff6
leaq 0x90(%rsp), %rsi
leaq 0xf0(%rsp), %rdx
movq 0x130(%rsp), %rbx
movq %rbx, %rdi
callq 0x8d6e
leaq 0xf0(%rsp), %rdi
callq 0x5840
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x84a9
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x21b0
leaq 0x110(%rsp), %rdi
callq 0x58c8
leaq 0xd0(%rsp), %rdi
callq 0x5840
movq %rbx, %rax
addq $0x138, %rsp            # imm = 0x138
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x867d
jmp 0x869d
jmp 0x8730
jmp 0x8549
jmp 0x8569
jmp 0x869d
jmp 0x8730
jmp 0x867d
jmp 0x869d
jmp 0x8730
jmp 0x867d
jmp 0x869d
jmp 0x8730
jmp 0x867d
jmp 0x869d
jmp 0x8730
jmp 0x8549
jmp 0x8569
jmp 0x869d
jmp 0x8730
jmp 0x8730
jmp 0x87cc
jmp 0x867d
jmp 0x869d
jmp 0x8730
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x856c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x856c
movq %rax, %rbx
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x86a0
movq 0x80(%rsp), %rsi
jmp 0x8693
jmp 0x869d
jmp 0x8730
jmp 0x85e9
jmp 0x8730
jmp 0x87cc
movq %rax, %rbx
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x8856
movq 0x30(%rsp), %rsi
jmp 0x87f9
jmp 0x8821
jmp 0x8821
jmp 0x8730
jmp 0x86f8
jmp 0x86cd
jmp 0x86cd
jmp 0x87cc
jmp 0x85e9
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8733
movq 0x10(%rsp), %rsi
jmp 0x86b8
jmp 0x8730
jmp 0x86cd
jmp 0x87cc
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x863b
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x863b
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x865b
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x865b
movq %rax, %rbx
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x87cf
movq 0x50(%rsp), %rsi
jmp 0x874b
jmp 0x87cc
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x86a0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x86a0
movq %rax, %rbx
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x8733
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x8733
jmp 0x8730
jmp 0x8730
jmp 0x87cc
jmp 0x86cd
movq %rax, %rbx
jmp 0x8717
jmp 0x87cc
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x86fb
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x86fb
movq %rax, %rbx
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x8717
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x21b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x87cf
movq 0x10(%rsp), %rsi
jmp 0x874b
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x87cf
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x87cf
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0x5840
jmp 0x8856
movq %rax, %rbx
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x8797
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x8797
movq %rax, %rbx
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x87b3
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x87b3
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8856
movq 0x10(%rsp), %rsi
jmp 0x87f9
movq %rax, %rbx
leaq 0xf0(%rsp), %rdi
callq 0x5840
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x8856
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x8856
jmp 0x8846
movq %rax, %rbx
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x8829
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x8829
movq %rax, %rbx
jmp 0x8856
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8849
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x21b0
jmp 0x8849
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0x8c60
leaq 0x110(%rsp), %rdi
callq 0x58c8
leaq 0xd0(%rsp), %rdi
callq 0x5840
movq %rbx, %rdi
callq 0x22f0