// File: /workspace/github_cpp_makefile_star2_O3/sighingnow[P]compile-pascal/pl0_tac_gen.cpp
// Function: pl0_tac_for_stmt(pl0_ast_for_stmt const*)
void pl0_tac_for_stmt(pl0_ast_for_stmt const *stmt) {
    cout << __func__;
    // code structure: compare -> execute -> compare again
    int beginlabel = irb.makelabel(), frontlabel = irb.makelabel();
    int innerlabel = irb.makelabel();
    int endlabel = irb.makelabel(), taillabel = irb.makelabel();
    pair<Value *, string> s = pl0_tac_expr(stmt->initial);
    pair<Value *, string> t = pl0_tac_expr(stmt->end);
    
    // validate loop iterator.
    variable var;
    if (vartb.find(stmt->iter->id, true, var) == false) {
        pl0_ast_error(stmt->iter->loc, string("undeclared identifier ") + "\"" + stmt->iter->id + "\"");
    }
    if (s.second != "integer" && s.second != "char") {
        pl0_ast_error(stmt->initial->loc, "use array as initial value in for loop");
    }

////////////////////////////////////////////////////////////////////////////////////
    irb.emit("cmp", new Value(frontlabel, "integer"), s.first, t.first);
    if (stmt->step->val == 1) {
        irb.emit("goto", new Value("jg", "string"), new Value(taillabel, "integer"));
    }
    else {
        irb.emit("goto", new Value("jl", "string"), new Value(taillabel, "integer"));
    }
    irb.emitlabel(frontlabel);
/////////////////////////////////////////////////////////////////////////////////////

    Value *end;
    if (t.first->t == Value::TYPE::STR && t.first->sv[0] == '~') {
        end = new Value("~" + t.first->sv, t.second);
        irb.emit("def", end, new Value(t.second, "string"), new Value(-1, "integer"));
        irb.emit("=", end, t.first);
    }
    else {
        end = t.first;
    }

    irb.emit("=", new Value(stmt->iter->id, var.dt), s.first);
    irb.emit("goto", new Value("jmp", "string"), new Value(beginlabel, "integer"));
    irb.emitlabel(beginlabel);
    if (t.second != "integer" && t.second != "char") {
        pl0_ast_error(stmt->end->loc, "use array as end value in for loop");
    }
    // add end value to symbol table.
    
    irb.emit("cmp", new Value(innerlabel, "integer"), new Value(stmt->iter->id, var.dt), end);
    if (stmt->step->val == 1) {
        irb.emit("goto", new Value("jg", "string"), new Value(endlabel, "integer"));
    }
    else {
        irb.emit("goto", new Value("jl", "string"), new Value(endlabel, "integer"));
    }
    irb.emitlabel(innerlabel); // label for inner executable block.
    pl0_tac_stmt(stmt->stmt);
    irb.emit("+", new Value(stmt->iter->id, var.dt), new Value(stmt->iter->id, var.dt), new Value(stmt->step->val, "integer"));
    irb.emit("goto", new Value("jmp", "string"), new Value(beginlabel, "integer"));
    irb.emitlabel(endlabel);
    irb.emit("=", new Value(stmt->iter->id, var.dt), t.first);
    irb.emit("goto", new Value("jmp", "string"), new Value(taillabel, "integer"));
    irb.emitlabel(taillabel);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x848, %rsp            # imm = 0x848
movq %rdi, %r14
movq 0x4a814(%rip), %rdi     # 0xb9fd8
leaq 0x23d44(%rip), %rsi     # 0x9350f
xorl %edx, %edx
callq 0x52e0
leaq 0x4bdcf(%rip), %rbx     # 0xbb5a8
movq %rbx, %rdi
callq 0x632aa
movl %eax, 0x24(%rsp)
movq %rbx, %rdi
callq 0x632aa
movl %eax, %r13d
movq %rbx, %rdi
callq 0x632aa
movl %eax, 0x28(%rsp)
movq %rbx, %rdi
callq 0x632aa
movl %eax, 0x20(%rsp)
movq %rbx, %rdi
callq 0x632aa
movl %eax, 0x14(%rsp)
movq 0x20(%r14), %rsi
leaq 0x718(%rsp), %rdi
callq 0x71f89
movq %r14, 0x8(%rsp)
movq 0x28(%r14), %rsi
leaq 0xf0(%rsp), %rdi
callq 0x71f89
leaq 0x7e0(%rsp), %rdi
callq 0x76996
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq 0x4bd94(%rip), %rdi     # 0xbb5f0
leaq 0x7e0(%rsp), %rcx
movl $0x1, %edx
callq 0x76ef2
testb %al, %al
jne 0x6fa66
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
movq (%rax), %rbx
leaq 0x708(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x231a5(%rip), %rsi     # 0x92a3a
leaq 0x231b4(%rip), %rdx     # 0x92a50
leaq 0x6f8(%rsp), %rdi
callq 0x253d0
leaq 0x23743(%rip), %rsi     # 0x92ff3
leaq 0x6f8(%rsp), %rdi
callq 0x5420
leaq 0x2a8(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x6f8ee
movq %rdx, 0x298(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x2a8(%rsp)
jmp 0x6f8f6
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x298(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
callq 0x50d0
leaq 0x2c8(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x6f95b
movq %rdx, 0x2b8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x2c8(%rsp)
jmp 0x6f962
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movl %r13d, %ebp
movq 0x8(%rax), %rdx
leaq 0x2b8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x23668(%rip), %rsi     # 0x92ff3
callq 0x5420
leaq 0x2e8(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x6f9c0
movq %rdx, 0x2d8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x2e8(%rsp)
jmp 0x6f9c8
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x2d8(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
callq 0x65f40
movq 0x2d8(%rsp), %rdi
cmpq %r13, %rdi
je 0x6fa0c
movq 0x2e8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x2b8(%rsp), %rdi
cmpq %r14, %rdi
movl %ebp, %r13d
je 0x6fa2c
movq 0x2c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x298(%rsp), %rdi
cmpq %r12, %rdi
je 0x6fa49
movq 0x2a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x6f8(%rsp), %rdi
cmpq %r15, %rdi
je 0x6fa66
movq 0x708(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x720(%rsp), %rbx
leaq 0x2169a(%rip), %rsi     # 0x9110f
movq %rbx, %rdi
callq 0x50c0
testl %eax, %eax
je 0x6faf4
leaq 0x23743(%rip), %rsi     # 0x931cb
movq %rbx, %rdi
callq 0x50c0
testl %eax, %eax
je 0x6faf4
movq 0x8(%rsp), %rax
movq 0x20(%rax), %rax
movq (%rax), %rbx
leaq 0x6e8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x2309b(%rip), %rsi     # 0x92b4e
leaq 0x230ba(%rip), %rdx     # 0x92b74
leaq 0x6d8(%rsp), %rdi
callq 0x253d0
leaq 0x6d8(%rsp), %rsi
movq %rbx, %rdi
callq 0x65f40
movq 0x6d8(%rsp), %rdi
cmpq %r14, %rdi
je 0x6faf4
movq 0x6e8(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x6c8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x22f97(%rip), %rsi     # 0x92a9e
leaq 0x22f93(%rip), %rdx     # 0x92aa1
leaq 0x6b8(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x6a8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x215d4(%rip), %rsi     # 0x9110f
leaq 0x215d4(%rip), %rdx     # 0x91116
leaq 0x698(%rsp), %rdi
callq 0x253d0
movb $0x1, %bpl
leaq 0x698(%rsp), %rdx
movq %rbx, %rdi
movl %r13d, %esi
callq 0x75d42
movq 0x718(%rsp), %rcx
xorl %ebp, %ebp
movq 0xf0(%rsp), %r8
leaq 0x4ba2a(%rip), %rdi     # 0xbb5a8
leaq 0x6b8(%rsp), %rsi
movq %rbx, %rdx
callq 0x75c2c
movq 0x698(%rsp), %rdi
cmpq %r15, %rdi
je 0x6fbab
movq 0x6a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x6b8(%rsp), %rdi
cmpq %r14, %rdi
je 0x6fbc8
movq 0x6c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x8(%rsp), %rax
movq 0x38(%rax), %rax
cmpl $0x1, 0x8(%rax)
jne 0x6fd5e
leaq 0x7d0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x22eb3(%rip), %rsi     # 0x92aa2
leaq 0x22eb0(%rip), %rdx     # 0x92aa6
leaq 0x7c0(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
leaq 0x188(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x22e88(%rip), %rsi     # 0x92aab
leaq 0x22e83(%rip), %rdx     # 0x92aad
leaq 0x178(%rsp), %rdi
callq 0x253d0
leaq 0x288(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x2362e(%rip), %rsi     # 0x93278
leaq 0x2362d(%rip), %rdx     # 0x9327e
leaq 0x278(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x178(%rsp), %rsi
leaq 0x278(%rsp), %rdx
movq %rbp, %rdi
callq 0x7653e
xorl %r15d, %r15d
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
movl %r13d, %r14d
leaq 0x688(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x21470(%rip), %rsi     # 0x9110f
leaq 0x21470(%rip), %rdx     # 0x91116
leaq 0x678(%rsp), %rdi
callq 0x253d0
movb $0x1, %r13b
leaq 0x678(%rsp), %rdx
movq %rbx, %rdi
movl 0x14(%rsp), %esi
callq 0x75d42
xorl %r13d, %r13d
leaq 0x4b8d4(%rip), %rdi     # 0xbb5a8
leaq 0x7c0(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x678(%rsp), %rdi
cmpq %r15, %rdi
je 0x6fd07
movq 0x688(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x278(%rsp), %rdi
leaq 0x288(%rsp), %rax
cmpq %rax, %rdi
je 0x6fd2c
movq 0x288(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x6fd51
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x7c0(%rsp), %rdi
jmp 0x6fedc
leaq 0x7b0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x22d30(%rip), %rsi     # 0x92aa2
leaq 0x22d2d(%rip), %rdx     # 0x92aa6
leaq 0x7a0(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
leaq 0x168(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x22d0c(%rip), %rsi     # 0x92ab2
leaq 0x22d07(%rip), %rdx     # 0x92ab4
leaq 0x158(%rsp), %rdi
callq 0x253d0
leaq 0x268(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x234ab(%rip), %rsi     # 0x93278
leaq 0x234aa(%rip), %rdx     # 0x9327e
leaq 0x258(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x158(%rsp), %rsi
leaq 0x258(%rsp), %rdx
movq %rbp, %rdi
callq 0x7653e
xorl %r15d, %r15d
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
movl %r13d, %r14d
leaq 0x668(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x212ed(%rip), %rsi     # 0x9110f
leaq 0x212ed(%rip), %rdx     # 0x91116
leaq 0x658(%rsp), %rdi
callq 0x253d0
movb $0x1, %r13b
leaq 0x658(%rsp), %rdx
movq %rbx, %rdi
movl 0x14(%rsp), %esi
callq 0x75d42
xorl %r13d, %r13d
leaq 0x4b751(%rip), %rdi     # 0xbb5a8
leaq 0x7a0(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x658(%rsp), %rdi
cmpq %r15, %rdi
je 0x6fe8a
movq 0x668(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x258(%rsp), %rdi
leaq 0x268(%rsp), %rax
cmpq %rax, %rdi
je 0x6feaf
movq 0x268(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x158(%rsp), %rdi
leaq 0x168(%rsp), %rax
cmpq %rax, %rdi
je 0x6fed4
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x7a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x6feed
movq (%r12), %rsi
incq %rsi
callq 0x5260
leaq 0x4b6b4(%rip), %rdi     # 0xbb5a8
movl %r14d, %esi
callq 0x75eb0
movq 0xf0(%rsp), %rbx
cmpl $0x1, (%rbx)
jne 0x701c2
movq 0x8(%rbx), %rax
cmpb $0x7e, (%rax)
jne 0x701c2
movl $0x48, %edi
callq 0x5250
movq %rax, 0x18(%rsp)
addq $0x8, %rbx
leaq 0x22b8c(%rip), %rsi     # 0x92ac0
leaq 0x780(%rsp), %rdi
movq %rbx, %rdx
callq 0x16234
leaq 0x648(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
addq %rsi, %rdx
leaq 0x638(%rsp), %rdi
callq 0x351dc
leaq 0x780(%rsp), %rsi
leaq 0x638(%rsp), %rdx
movq 0x18(%rsp), %rdi
callq 0x7653e
movq 0x638(%rsp), %rdi
cmpq %rbx, %rdi
je 0x6ffa7
movq 0x648(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x790(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6ffc8
movq 0x790(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x628(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x2299f(%rip), %rsi     # 0x9297b
leaq 0x2299b(%rip), %rdx     # 0x9297e
leaq 0x618(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
leaq 0xe0(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
addq %rsi, %rdx
leaq 0xd0(%rsp), %rdi
callq 0x351dc
leaq 0x608(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x2323c(%rip), %rsi     # 0x93278
leaq 0x2323b(%rip), %rdx     # 0x9327e
leaq 0x5f8(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0xd0(%rsp), %rsi
leaq 0x5f8(%rsp), %rdx
movq %rbp, %rdi
callq 0x7653e
xorl %r15d, %r15d
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x5e8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x21081(%rip), %rsi     # 0x9110f
leaq 0x21081(%rip), %rdx     # 0x91116
leaq 0x5d8(%rsp), %rdi
callq 0x253d0
movb $0x1, %r13b
leaq 0x5d8(%rsp), %rdx
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x75d42
xorl %r13d, %r13d
leaq 0x4b4e4(%rip), %rdi     # 0xbb5a8
leaq 0x618(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbp, %rcx
movq %rbx, %r8
callq 0x75c2c
movq 0x5d8(%rsp), %rdi
cmpq %r15, %rdi
je 0x700f9
movq 0x5e8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x5f8(%rsp), %rdi
cmpq %r14, %rdi
leaq 0xe0(%rsp), %rbx
je 0x7011e
movq 0x608(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0xd0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7013b
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x618(%rsp), %rdi
cmpq %r12, %rdi
je 0x70158
movq 0x628(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x5c8(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x20fad(%rip), %rsi     # 0x91118
leaq 0x20fa7(%rip), %rdx     # 0x91119
leaq 0x5b8(%rsp), %rdi
callq 0x253d0
movq 0xf0(%rsp), %rcx
leaq 0x4b41a(%rip), %rdi     # 0xbb5a8
leaq 0x5b8(%rsp), %rsi
movq 0x18(%rsp), %rdx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x5b8(%rsp), %rdi
cmpq %rbx, %rdi
je 0x701c7
movq 0x5c8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x701c7
movq %rbx, 0x18(%rsp)
leaq 0x5a8(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x20f3e(%rip), %rsi     # 0x91118
leaq 0x20f38(%rip), %rdx     # 0x91119
leaq 0x598(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x248(%rsp), %r14
movq %r14, -0x10(%r14)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq 0x238(%rsp), %rdi
callq 0x351dc
leaq 0x588(%rsp), %r12
movq %r12, -0x10(%r12)
movq 0x800(%rsp), %rsi
movq 0x808(%rsp), %rdx
addq %rsi, %rdx
leaq 0x578(%rsp), %rdi
callq 0x351dc
movb $0x1, %r15b
leaq 0x238(%rsp), %rsi
leaq 0x578(%rsp), %rdx
movq %rbp, %rdi
callq 0x7653e
xorl %r15d, %r15d
movq 0x718(%rsp), %rcx
leaq 0x4b326(%rip), %rdi     # 0xbb5a8
leaq 0x598(%rsp), %rsi
movq %rbp, %rdx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x578(%rsp), %rdi
cmpq %r12, %rdi
je 0x702b2
movq 0x588(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x238(%rsp), %rdi
cmpq %r14, %rdi
je 0x702cf
movq 0x248(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x598(%rsp), %rdi
cmpq %rbx, %rdi
je 0x702ec
movq 0x5a8(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x568(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x227a2(%rip), %rsi     # 0x92aa2
leaq 0x2279f(%rip), %rdx     # 0x92aa6
leaq 0x558(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
leaq 0xc0(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x22788(%rip), %rsi     # 0x92abc
leaq 0x22784(%rip), %rdx     # 0x92abf
leaq 0xb0(%rsp), %rdi
callq 0x253d0
leaq 0x548(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x22f1d(%rip), %rsi     # 0x93278
leaq 0x22f1c(%rip), %rdx     # 0x9327e
leaq 0x538(%rsp), %rdi
callq 0x253d0
movb $0x1, %r13b
leaq 0xb0(%rsp), %rsi
leaq 0x538(%rsp), %rdx
movq %rbp, %rdi
callq 0x7653e
xorl %r13d, %r13d
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x528(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x20d62(%rip), %rsi     # 0x9110f
leaq 0x20d62(%rip), %rdx     # 0x91116
leaq 0x518(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x518(%rsp), %rdx
movq %rbx, %rdi
movl 0x24(%rsp), %esi
callq 0x75d42
xorl %r15d, %r15d
leaq 0x4b1c6(%rip), %rdi     # 0xbb5a8
leaq 0x558(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x518(%rsp), %rdi
cmpq %r13, %rdi
je 0x70415
movq 0x528(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x538(%rsp), %rdi
cmpq %r14, %rdi
leaq 0xc0(%rsp), %rbx
je 0x7043a
movq 0x548(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0xb0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70457
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x558(%rsp), %rdi
cmpq %r12, %rdi
je 0x70474
movq 0x568(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x4b12d(%rip), %rdi     # 0xbb5a8
movl 0x24(%rsp), %esi
callq 0x75eb0
leaq 0xf8(%rsp), %rbx
leaq 0x20c7c(%rip), %rsi     # 0x9110f
movq %rbx, %rdi
callq 0x50c0
testl %eax, %eax
je 0x70512
leaq 0x22d25(%rip), %rsi     # 0x931cb
movq %rbx, %rdi
callq 0x50c0
testl %eax, %eax
je 0x70512
movq 0x8(%rsp), %rax
movq 0x28(%rax), %rax
movq (%rax), %rbx
leaq 0x508(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x226a4(%rip), %rsi     # 0x92b75
leaq 0x226bf(%rip), %rdx     # 0x92b97
leaq 0x4f8(%rsp), %rdi
callq 0x253d0
leaq 0x4f8(%rsp), %rsi
movq %rbx, %rdi
callq 0x65f40
movq 0x4f8(%rsp), %rdi
cmpq %r14, %rdi
je 0x70512
movq 0x508(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x4e8(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x22578(%rip), %rsi     # 0x92a9e
leaq 0x22574(%rip), %rdx     # 0x92aa1
leaq 0x4d8(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %rbp
leaq 0x228(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x20bb5(%rip), %rsi     # 0x9110f
leaq 0x20bb5(%rip), %rdx     # 0x91116
leaq 0x218(%rsp), %rdi
callq 0x253d0
movb $0x1, %r14b
leaq 0x218(%rsp), %rdx
movq %rbp, %rdi
movl 0x28(%rsp), %esi
callq 0x75d42
xorl %r14d, %r14d
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x208(%rsp), %r14
movq %r14, -0x10(%r14)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq 0x1f8(%rsp), %rdi
callq 0x351dc
leaq 0x4c8(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x800(%rsp), %rsi
movq 0x808(%rsp), %rdx
addq %rsi, %rdx
leaq 0x4b8(%rsp), %rdi
callq 0x351dc
movb $0x1, %r13b
leaq 0x1f8(%rsp), %rsi
leaq 0x4b8(%rsp), %rdx
movq %rbx, %rdi
callq 0x7653e
xorl %r13d, %r13d
leaq 0x4af95(%rip), %rdi     # 0xbb5a8
leaq 0x4d8(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
movq 0x18(%rsp), %r8
callq 0x75c2c
movq 0x4b8(%rsp), %rdi
cmpq %r15, %rdi
je 0x70648
movq 0x4c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x1f8(%rsp), %rdi
cmpq %r14, %rdi
leaq 0x228(%rsp), %rbx
je 0x7066d
movq 0x208(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x218(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7068a
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x4d8(%rsp), %rdi
cmpq %r12, %rdi
je 0x706a7
movq 0x4e8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x8(%rsp), %rax
movq 0x38(%rax), %rax
cmpl $0x1, 0x8(%rax)
jne 0x70831
leaq 0x770(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x223d4(%rip), %rsi     # 0x92aa2
leaq 0x223d1(%rip), %rdx     # 0x92aa6
leaq 0x760(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r13
leaq 0xa0(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x223a9(%rip), %rsi     # 0x92aab
leaq 0x223a4(%rip), %rdx     # 0x92aad
leaq 0x90(%rsp), %rdi
callq 0x253d0
leaq 0x4a8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x22b4f(%rip), %rsi     # 0x93278
leaq 0x22b4e(%rip), %rdx     # 0x9327e
leaq 0x498(%rsp), %rdi
callq 0x253d0
movb $0x1, %bpl
leaq 0x90(%rsp), %rsi
leaq 0x498(%rsp), %rdx
movq %r13, %rdi
callq 0x7653e
xorl %ebp, %ebp
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x488(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x20995(%rip), %rsi     # 0x9110f
leaq 0x20995(%rip), %rdx     # 0x91116
leaq 0x478(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x478(%rsp), %rdx
movq %rbx, %rdi
movl 0x20(%rsp), %esi
callq 0x75d42
xorl %r15d, %r15d
leaq 0x4adf9(%rip), %rdi     # 0xbb5a8
leaq 0x760(%rsp), %rsi
movq %r13, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x478(%rsp), %rdi
cmpq %rbp, %rdi
je 0x707e2
movq 0x488(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x498(%rsp), %rdi
cmpq %r14, %rdi
leaq 0xa0(%rsp), %rbx
je 0x70807
movq 0x4a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x90(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70824
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x760(%rsp), %rdi
jmp 0x7099a
leaq 0x750(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x2225d(%rip), %rsi     # 0x92aa2
leaq 0x2225a(%rip), %rdx     # 0x92aa6
leaq 0x740(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r13
leaq 0x80(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x22239(%rip), %rsi     # 0x92ab2
leaq 0x22234(%rip), %rdx     # 0x92ab4
leaq 0x70(%rsp), %rdi
callq 0x253d0
leaq 0x468(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x229db(%rip), %rsi     # 0x93278
leaq 0x229da(%rip), %rdx     # 0x9327e
leaq 0x458(%rsp), %rdi
callq 0x253d0
movb $0x1, %bpl
leaq 0x70(%rsp), %rsi
leaq 0x458(%rsp), %rdx
movq %r13, %rdi
callq 0x7653e
xorl %ebp, %ebp
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x448(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x20824(%rip), %rsi     # 0x9110f
leaq 0x20824(%rip), %rdx     # 0x91116
leaq 0x438(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x438(%rsp), %rdx
movq %rbx, %rdi
movl 0x20(%rsp), %esi
callq 0x75d42
xorl %r15d, %r15d
leaq 0x4ac88(%rip), %rdi     # 0xbb5a8
leaq 0x740(%rsp), %rsi
movq %r13, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x438(%rsp), %rdi
cmpq %rbp, %rdi
je 0x70953
movq 0x448(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x458(%rsp), %rdi
cmpq %r14, %rdi
leaq 0x80(%rsp), %rbx
je 0x70978
movq 0x468(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x70(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70992
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x740(%rsp), %rdi
cmpq %r12, %rdi
je 0x709ab
movq (%r12), %rsi
incq %rsi
callq 0x5260
leaq 0x4abf6(%rip), %rdi     # 0xbb5a8
movl 0x28(%rsp), %esi
callq 0x75eb0
movq 0x8(%rsp), %rax
movq 0x30(%rax), %rdi
callq 0x6a1cc
leaq 0x1e8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x221bc(%rip), %rsi     # 0x92b98
leaq 0x221b6(%rip), %rdx     # 0x92b99
leaq 0x1d8(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r14
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x148(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq 0x138(%rsp), %rdi
movq %r14, 0x28(%rsp)
callq 0x351dc
leaq 0x1c8(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x800(%rsp), %rsi
movq 0x808(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1b8(%rsp), %rdi
callq 0x351dc
movb $0x1, %bl
leaq 0x138(%rsp), %rsi
leaq 0x1b8(%rsp), %rdx
movq %r14, %rdi
callq 0x7653e
xorl %ebx, %ebx
movl $0x48, %edi
callq 0x5250
movq %rax, %r13
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x128(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq 0x118(%rsp), %rdi
callq 0x351dc
leaq 0x428(%rsp), %r14
movq %r14, -0x10(%r14)
movq 0x800(%rsp), %rsi
movq 0x808(%rsp), %rdx
addq %rsi, %rdx
leaq 0x418(%rsp), %rdi
callq 0x351dc
movb $0x1, %bpl
leaq 0x118(%rsp), %rsi
leaq 0x418(%rsp), %rdx
movq %r13, %rdi
callq 0x7653e
xorl %ebp, %ebp
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
movq 0x8(%rsp), %rax
movq 0x38(%rax), %rax
movl 0x8(%rax), %ebp
leaq 0x408(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x205e9(%rip), %rsi     # 0x9110f
leaq 0x205e9(%rip), %rdx     # 0x91116
leaq 0x3f8(%rsp), %rdi
callq 0x253d0
movb $0x1, %r12b
leaq 0x3f8(%rsp), %rdx
movq %rbx, %rdi
movl %ebp, %esi
movq 0x28(%rsp), %rbp
callq 0x75d42
xorl %r12d, %r12d
leaq 0x4aa4a(%rip), %rdi     # 0xbb5a8
leaq 0x1d8(%rsp), %rsi
movq %rbp, %rdx
movq %r13, %rcx
movq %rbx, %r8
callq 0x75c2c
movq 0x3f8(%rsp), %rdi
cmpq %r15, %rdi
je 0x70b91
movq 0x408(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x418(%rsp), %rdi
cmpq %r14, %rdi
leaq 0x1e8(%rsp), %rbx
leaq 0x148(%rsp), %r14
leaq 0x1c8(%rsp), %r15
je 0x70bc6
movq 0x428(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x118(%rsp), %rdi
leaq 0x128(%rsp), %rax
cmpq %rax, %rdi
je 0x70beb
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x1b8(%rsp), %rdi
cmpq %r15, %rdi
je 0x70c08
movq 0x1c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x138(%rsp), %rdi
cmpq %r14, %rdi
je 0x70c25
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x1d8(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70c42
movq 0x1e8(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x3e8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x21e4d(%rip), %rsi     # 0x92aa2
leaq 0x21e4a(%rip), %rdx     # 0x92aa6
leaq 0x3d8(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r12
leaq 0x60(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x21e36(%rip), %rsi     # 0x92abc
leaq 0x21e32(%rip), %rdx     # 0x92abf
leaq 0x50(%rsp), %rdi
callq 0x253d0
leaq 0x3c8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x225ce(%rip), %rsi     # 0x93278
leaq 0x225cd(%rip), %rdx     # 0x9327e
leaq 0x3b8(%rsp), %rdi
callq 0x253d0
movb $0x1, %bpl
leaq 0x50(%rsp), %rsi
leaq 0x3b8(%rsp), %rdx
movq %r12, %rdi
callq 0x7653e
xorl %ebp, %ebp
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x3a8(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x20417(%rip), %rsi     # 0x9110f
leaq 0x20417(%rip), %rdx     # 0x91116
leaq 0x398(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x398(%rsp), %rdx
movq %rbx, %rdi
movl 0x24(%rsp), %esi
callq 0x75d42
xorl %r15d, %r15d
leaq 0x4a87b(%rip), %rdi     # 0xbb5a8
leaq 0x3d8(%rsp), %rsi
movq %r12, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x398(%rsp), %rdi
cmpq %rbp, %rdi
je 0x70d60
movq 0x3a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x3b8(%rsp), %rdi
cmpq %r14, %rdi
leaq 0x60(%rsp), %rbx
je 0x70d82
movq 0x3c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x50(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70d99
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x3d8(%rsp), %rdi
cmpq %r13, %rdi
je 0x70db6
movq 0x3e8(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x4a7eb(%rip), %rdi     # 0xbb5a8
movl 0x20(%rsp), %esi
callq 0x75eb0
leaq 0x388(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x2033f(%rip), %rsi     # 0x91118
leaq 0x20339(%rip), %rdx     # 0x91119
leaq 0x378(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r15
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x1a8(%rsp), %r14
movq %r14, -0x10(%r14)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq 0x198(%rsp), %rdi
callq 0x351dc
leaq 0x368(%rsp), %r13
movq %r13, -0x10(%r13)
movq 0x800(%rsp), %rsi
movq 0x808(%rsp), %rdx
addq %rsi, %rdx
leaq 0x358(%rsp), %rdi
callq 0x351dc
movb $0x1, %r12b
leaq 0x198(%rsp), %rsi
leaq 0x358(%rsp), %rdx
movq %r15, %rdi
callq 0x7653e
xorl %r12d, %r12d
movq 0xf0(%rsp), %rcx
leaq 0x4a728(%rip), %rdi     # 0xbb5a8
leaq 0x378(%rsp), %rsi
movq %r15, %rdx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x358(%rsp), %rdi
cmpq %r13, %rdi
je 0x70eb0
movq 0x368(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x198(%rsp), %rdi
cmpq %r14, %rdi
je 0x70ecd
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x378(%rsp), %rdi
cmpq %rbx, %rdi
je 0x70eea
movq 0x388(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x348(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x21ba4(%rip), %rsi     # 0x92aa2
leaq 0x21ba1(%rip), %rdx     # 0x92aa6
leaq 0x338(%rsp), %rdi
callq 0x253d0
movl $0x48, %edi
callq 0x5250
movq %rax, %r14
leaq 0x40(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x21b8d(%rip), %rsi     # 0x92abc
leaq 0x21b89(%rip), %rdx     # 0x92abf
leaq 0x30(%rsp), %rdi
callq 0x253d0
leaq 0x328(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x22325(%rip), %rsi     # 0x93278
leaq 0x22324(%rip), %rdx     # 0x9327e
leaq 0x318(%rsp), %rdi
callq 0x253d0
movb $0x1, %bpl
leaq 0x30(%rsp), %rsi
leaq 0x318(%rsp), %rdx
movq %r14, %rdi
callq 0x7653e
xorl %ebp, %ebp
movl $0x48, %edi
callq 0x5250
movq %rax, %rbx
leaq 0x308(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x2016e(%rip), %rsi     # 0x9110f
leaq 0x2016e(%rip), %rdx     # 0x91116
leaq 0x2f8(%rsp), %rdi
callq 0x253d0
movb $0x1, %r15b
leaq 0x2f8(%rsp), %rdx
movq %rbx, %rdi
movl 0x14(%rsp), %esi
callq 0x75d42
xorl %r15d, %r15d
leaq 0x4a5d2(%rip), %rdi     # 0xbb5a8
leaq 0x338(%rsp), %rsi
movq %r14, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
callq 0x75c2c
movq 0x2f8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x71009
movq 0x308(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x318(%rsp), %rdi
cmpq %r13, %rdi
leaq 0x40(%rsp), %rbx
je 0x7102b
movq 0x328(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x30(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71042
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x338(%rsp), %rdi
cmpq %r12, %rdi
je 0x7105f
movq 0x348(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x4a542(%rip), %rdi     # 0xbb5a8
movl 0x14(%rsp), %esi
callq 0x75eb0
leaq 0x830(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x71090
movq 0x830(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x810(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x710b1
movq 0x810(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x7f0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x710d2
movq 0x7f0(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x710f3
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x730(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x71114
movq 0x730(%rsp), %rsi
incq %rsi
callq 0x5260
addq $0x848, %rsp            # imm = 0x848
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, 0x8(%rsp)
movq 0x5b8(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71f1b
movq 0x5c8(%rsp), %rsi
jmp 0x71f0c
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71324
movq %rax, 0x8(%rsp)
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x71382
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71382
movq %rax, 0x8(%rsp)
jmp 0x71382
movq %rax, 0x8(%rsp)
jmp 0x7138f
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x638(%rsp), %rdi
cmpq %rbx, %rdi
je 0x711cd
movq 0x648(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x711cd
movq %rax, 0x8(%rsp)
leaq 0x790(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x711f5
movq 0x790(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x711f5
movq %rax, 0x8(%rsp)
movl $0x48, %esi
movq 0x18(%rsp), %rdi
jmp 0x71f0f
movq %rax, 0x8(%rsp)
movq 0x4f8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71f1b
movq 0x508(%rsp), %rsi
jmp 0x71f0c
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x6d8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71f1b
movq 0x6e8(%rsp), %rsi
jmp 0x71f0c
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71665
movq %rax, 0x8(%rsp)
jmp 0x7169d
movq %rax, 0x8(%rsp)
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x716f7
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x716f7
movq %rax, 0x8(%rsp)
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x7176e
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x7176e
movq %rax, 0x8(%rsp)
jmp 0x716f7
movq %rax, 0x8(%rsp)
jmp 0x7176e
movq %rax, 0x8(%rsp)
jmp 0x71704
movq %rax, 0x8(%rsp)
jmp 0x7177b
jmp 0x71f16
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x5d8(%rsp), %rdi
cmpq %r15, %rdi
je 0x7131f
movq 0x5e8(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r13b, %r13b
je 0x71331
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %r15d, %r15d
jmp 0x7133b
movq %rax, 0x8(%rsp)
movq 0x5f8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71358
movq 0x608(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x7137d
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x7138f
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x618(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x628(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
jmp 0x718a8
movq %rax, 0x8(%rsp)
jmp 0x718e1
movq %rax, 0x8(%rsp)
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7194a
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x7194a
movq %rax, 0x8(%rsp)
movq 0x178(%rsp), %rdi
cmpq %rbx, %rdi
je 0x719c9
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x719c9
movq %rax, 0x8(%rsp)
jmp 0x7194a
movq %rax, 0x8(%rsp)
jmp 0x719c9
movq %rax, 0x8(%rsp)
jmp 0x71957
movq %rax, 0x8(%rsp)
jmp 0x719d6
jmp 0x71f16
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x2d8(%rsp), %rdi
cmpq %r13, %rdi
je 0x71472
movq 0x2e8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71472
movq %rax, 0x8(%rsp)
movq 0x2b8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71496
movq 0x2c8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71496
movq %rax, 0x8(%rsp)
movq 0x298(%rsp), %rdi
cmpq %r12, %rdi
je 0x714ba
movq 0x2a8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x714ba
movq %rax, 0x8(%rsp)
movq 0x6f8(%rsp), %rdi
cmpq %r15, %rdi
je 0x71f1b
movq 0x708(%rsp), %rsi
jmp 0x71f0c
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71a48
movq %rax, 0x8(%rsp)
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x71a9c
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71a9c
movq %rax, 0x8(%rsp)
jmp 0x71a9c
movq %rax, 0x8(%rsp)
jmp 0x71aa9
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x198(%rsp), %rdi
cmpq %r14, %rdi
je 0x71b0b
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71b0b
movq %rax, 0x8(%rsp)
jmp 0x71b0b
movq %rax, 0x8(%rsp)
jmp 0x71b18
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71b5d
movq %rax, 0x8(%rsp)
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x71bb1
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71bb1
movq %rax, 0x8(%rsp)
jmp 0x71bb1
movq %rax, 0x8(%rsp)
jmp 0x71bbe
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71c03
movq %rax, 0x8(%rsp)
movq 0x118(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71c60
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71c60
movq %rax, 0x8(%rsp)
jmp 0x71c60
movq %rax, 0x8(%rsp)
movq 0x138(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71cc4
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71cc4
movq %rax, 0x8(%rsp)
jmp 0x71cc4
movq %rax, 0x8(%rsp)
jmp 0x71cd3
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x438(%rsp), %rdi
cmpq %rbp, %rdi
je 0x71660
movq 0x448(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71672
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %ebp, %ebp
jmp 0x716b3
movq %rax, 0x8(%rsp)
movq 0x478(%rsp), %rdi
cmpq %rbp, %rdi
je 0x71698
movq 0x488(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x716aa
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %ebp, %ebp
jmp 0x71727
movq %rax, 0x8(%rsp)
movq 0x458(%rsp), %rdi
cmpq %r14, %rdi
je 0x716d0
movq 0x468(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x716f2
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x71704
movl $0x48, %esi
movq %r13, %rdi
callq 0x5260
movq 0x740(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x750(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x498(%rsp), %rdi
cmpq %r14, %rdi
je 0x71744
movq 0x4a8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x71769
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x7177b
movl $0x48, %esi
movq %r13, %rdi
callq 0x5260
movq 0x760(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x770(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x1f8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71d3d
movq 0x208(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71d3d
movq %rax, 0x8(%rsp)
jmp 0x71d3d
movq %rax, 0x8(%rsp)
jmp 0x71d7e
movq %rax, 0x8(%rsp)
jmp 0x71d8b
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71dd0
movq %rax, 0x8(%rsp)
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x71e2e
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71e2e
movq %rax, 0x8(%rsp)
jmp 0x71e2e
movq %rax, 0x8(%rsp)
jmp 0x71e3b
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x238(%rsp), %rdi
cmpq %r14, %rdi
je 0x71e9d
movq 0x248(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71e9d
movq %rax, 0x8(%rsp)
jmp 0x71e9d
movq %rax, 0x8(%rsp)
jmp 0x71eaa
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x658(%rsp), %rdi
cmpq %r15, %rdi
je 0x718a3
movq 0x668(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r13b, %r13b
je 0x718b5
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %r15d, %r15d
jmp 0x718fb
movq %rax, 0x8(%rsp)
movq 0x678(%rsp), %rdi
cmpq %r15, %rdi
je 0x718dc
movq 0x688(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r13b, %r13b
je 0x718ee
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %r15d, %r15d
jmp 0x7197a
movq %rax, 0x8(%rsp)
movq 0x258(%rsp), %rdi
leaq 0x268(%rsp), %rax
cmpq %rax, %rdi
je 0x71920
movq 0x268(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x158(%rsp), %rdi
leaq 0x168(%rsp), %rax
cmpq %rax, %rdi
je 0x71945
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71957
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x7a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x7b0(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x278(%rsp), %rdi
leaq 0x288(%rsp), %rax
cmpq %rax, %rdi
je 0x7199f
movq 0x288(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x719c4
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x719d6
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x7c0(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x7d0(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
jmp 0x71eea
movq %rax, 0x8(%rsp)
jmp 0x71ef7
jmp 0x71f16
movq %rax, 0x8(%rsp)
jmp 0x71f28
movq %rax, 0x8(%rsp)
jmp 0x71f49
movq %rax, 0x8(%rsp)
movq 0x2f8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x71a43
movq 0x308(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71a55
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %ebp, %ebp
jmp 0x71a5e
movq %rax, 0x8(%rsp)
movq 0x318(%rsp), %rdi
cmpq %r13, %rdi
je 0x71a7b
movq 0x328(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x71a97
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x71aa9
movl $0x48, %esi
movq %r14, %rdi
callq 0x5260
movq 0x338(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x348(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x358(%rsp), %rdi
cmpq %r13, %rdi
je 0x71ae9
movq 0x368(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x198(%rsp), %rdi
cmpq %r14, %rdi
je 0x71b06
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r12b, %r12b
je 0x71b18
movl $0x48, %esi
movq %r15, %rdi
callq 0x5260
movq 0x378(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71f1b
movq 0x388(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x398(%rsp), %rdi
cmpq %rbp, %rdi
je 0x71b58
movq 0x3a8(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71b6a
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %ebp, %ebp
jmp 0x71b73
movq %rax, 0x8(%rsp)
movq 0x3b8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71b90
movq 0x3c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x71bac
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x71bbe
movl $0x48, %esi
movq %r12, %rdi
callq 0x5260
movq 0x3d8(%rsp), %rdi
cmpq %r13, %rdi
je 0x71f1b
movq 0x3e8(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x3f8(%rsp), %rdi
cmpq %r15, %rdi
je 0x71bfe
movq 0x408(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r12b, %r12b
je 0x71c10
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %ebp, %ebp
jmp 0x71c19
movq %rax, 0x8(%rsp)
movq 0x418(%rsp), %rdi
cmpq %r14, %rdi
je 0x71c36
movq 0x428(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x118(%rsp), %rdi
leaq 0x128(%rsp), %rax
cmpq %rax, %rdi
je 0x71c5b
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x71c6d
movl $0x48, %esi
movq %r13, %rdi
callq 0x5260
xorl %ebx, %ebx
jmp 0x71c76
movq %rax, 0x8(%rsp)
movq 0x1b8(%rsp), %rdi
leaq 0x1c8(%rsp), %rax
cmpq %rax, %rdi
je 0x71c9b
movq 0x1c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x138(%rsp), %rdi
leaq 0x148(%rsp), %rax
cmpq %rax, %rdi
je 0x71cc0
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bl, %bl
je 0x71cd3
movl $0x48, %esi
movq 0x28(%rsp), %rdi
callq 0x5260
movq 0x1d8(%rsp), %rdi
leaq 0x1e8(%rsp), %rax
cmpq %rax, %rdi
je 0x71f1b
movq 0x1e8(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x4b8(%rsp), %rdi
cmpq %r15, %rdi
je 0x71d1b
movq 0x4c8(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x1f8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71d38
movq 0x208(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r13b, %r13b
je 0x71d4a
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %r14d, %r14d
jmp 0x71d54
movq %rax, 0x8(%rsp)
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x71d79
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r14b, %r14b
je 0x71d8b
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x4d8(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x4e8(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x518(%rsp), %rdi
cmpq %r13, %rdi
je 0x71dcb
movq 0x528(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71ddd
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
xorl %r13d, %r13d
jmp 0x71de7
movq %rax, 0x8(%rsp)
movq 0x538(%rsp), %rdi
cmpq %r14, %rdi
je 0x71e04
movq 0x548(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x71e29
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r13b, %r13b
je 0x71e3b
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x558(%rsp), %rdi
cmpq %r12, %rdi
je 0x71f1b
movq 0x568(%rsp), %rsi
jmp 0x71f0c
movq %rax, 0x8(%rsp)
movq 0x578(%rsp), %rdi
cmpq %r12, %rdi
je 0x71e7b
movq 0x588(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x238(%rsp), %rdi
cmpq %r14, %rdi
je 0x71e98
movq 0x248(%rsp), %rsi
incq %rsi
callq 0x5260
testb %r15b, %r15b
je 0x71eaa
movl $0x48, %esi
movq %rbp, %rdi
callq 0x5260
movq 0x598(%rsp), %rdi
cmpq %rbx, %rdi
je 0x71f1b
movq 0x5a8(%rsp), %rsi
jmp 0x71f0c
jmp 0x71f16
movq %rax, 0x8(%rsp)
movq 0x698(%rsp), %rdi
cmpq %r15, %rdi
je 0x71ee5
movq 0x6a8(%rsp), %rsi
incq %rsi
callq 0x5260
testb %bpl, %bpl
je 0x71ef7
movl $0x48, %esi
movq %rbx, %rdi
callq 0x5260
movq 0x6b8(%rsp), %rdi
cmpq %r14, %rdi
je 0x71f1b
movq 0x6c8(%rsp), %rsi
incq %rsi
callq 0x5260
jmp 0x71f1b
movq %rax, 0x8(%rsp)
leaq 0x7e0(%rsp), %rdi
callq 0x764f0
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x71f49
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x5260
leaq 0x730(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x71f6a
movq 0x730(%rsp), %rsi
incq %rsi
callq 0x5260
movq 0x8(%rsp), %rdi
callq 0x53d0