// File: 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
movq %rsp, %rbp
subq $0xc90, %rsp            # imm = 0xC90
movq %rdi, -0x8(%rbp)
movq 0xa71f2(%rip), %rdi     # 0x15efd8
leaq 0x39e42(%rip), %rsi     # 0xf1c2f
callq 0x5330
leaq 0xa88d7(%rip), %rdi     # 0x1606d0
movq %rdi, -0x9f8(%rbp)
callq 0xa01e0
movq -0x9f8(%rbp), %rdi
movl %eax, -0xc(%rbp)
callq 0xa01e0
movq -0x9f8(%rbp), %rdi
movl %eax, -0x10(%rbp)
callq 0xa01e0
movq -0x9f8(%rbp), %rdi
movl %eax, -0x14(%rbp)
callq 0xa01e0
movq -0x9f8(%rbp), %rdi
movl %eax, -0x18(%rbp)
callq 0xa01e0
movl %eax, -0x1c(%rbp)
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
leaq -0x48(%rbp), %rdi
callq 0xba600
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rsi
leaq -0x70(%rbp), %rdi
callq 0xba600
jmp 0xb7e68
leaq -0xe8(%rbp), %rdi
callq 0xbf1b0
jmp 0xb7e76
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq 0xa888f(%rip), %rdi     # 0x160718
movl $0x1, %edx
leaq -0xe8(%rbp), %rcx
callq 0xbf8a0
movb %al, -0x9f9(%rbp)
jmp 0xb7ea2
movb -0x9f9(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0xb805e
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movq (%rax), %rax
movq %rax, -0xf0(%rbp)
leaq -0x171(%rbp), %rdi
movq %rdi, -0xa08(%rbp)
callq 0x55d0
movq -0xa08(%rbp), %rdx
leaq 0x39281(%rip), %rsi     # 0xf116a
leaq -0x170(%rbp), %rdi
callq 0x19840
jmp 0xb7ef7
leaq 0x3981d(%rip), %rdx     # 0xf171b
leaq -0x150(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x1a380
jmp 0xb7f13
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdx
addq $0x8, %rdx
leaq -0x130(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x1a4d0
jmp 0xb7f34
leaq 0x397e0(%rip), %rdx     # 0xf171b
leaq -0x110(%rbp), %rdi
leaq -0x130(%rbp), %rsi
callq 0x1a380
jmp 0xb7f50
movq -0xf0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0xae910
jmp 0xb7f65
leaq -0x110(%rbp), %rdi
callq 0x5200
leaq -0x130(%rbp), %rdi
callq 0x5200
leaq -0x150(%rbp), %rdi
callq 0x5200
leaq -0x170(%rbp), %rdi
callq 0x5200
leaq -0x171(%rbp), %rdi
callq 0x53c0
jmp 0xb805e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba5b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba5ac
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb804d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8041
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8035
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8029
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x5200
leaq -0x130(%rbp), %rdi
callq 0x5200
leaq -0x150(%rbp), %rdi
callq 0x5200
leaq -0x170(%rbp), %rdi
callq 0x5200
leaq -0x171(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
leaq -0x40(%rbp), %rdi
leaq 0x371de(%rip), %rsi     # 0xef247
callq 0xc02b0
movb %al, -0xa09(%rbp)
jmp 0xb8076
movb -0xa09(%rbp), %al
testb $0x1, %al
jne 0xb8085
jmp 0xb8153
leaq -0x40(%rbp), %rdi
leaq 0x37eef(%rip), %rsi     # 0xeff7f
callq 0xc02b0
movb %al, -0xa0a(%rbp)
jmp 0xb809d
movb -0xa0a(%rbp), %al
testb $0x1, %al
jne 0xb80ac
jmp 0xb8153
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rax
movq (%rax), %rax
movq %rax, -0x180(%rbp)
leaq -0x1a1(%rbp), %rdi
movq %rdi, -0xa18(%rbp)
callq 0x55d0
movq -0xa18(%rbp), %rdx
leaq 0x3919f(%rip), %rsi     # 0xf127e
leaq -0x1a0(%rbp), %rdi
callq 0x19840
jmp 0xb80ed
movq -0x180(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0xae910
jmp 0xb8102
leaq -0x1a0(%rbp), %rdi
callq 0x5200
leaq -0x1a1(%rbp), %rdi
callq 0x53c0
jmp 0xb8153
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8142
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x1a0(%rbp), %rdi
callq 0x5200
leaq -0x1a1(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
leaq -0x1c9(%rbp), %rdi
movq %rdi, -0xa20(%rbp)
callq 0x55d0
movq -0xa20(%rbp), %rdx
leaq 0x3905a(%rip), %rsi     # 0xf11ce
leaq -0x1c8(%rbp), %rdi
callq 0x19840
jmp 0xb8182
movl $0x48, %edi
callq 0x5340
movq %rax, -0xa28(%rbp)
jmp 0xb8195
movb $0x1, -0x1f2(%rbp)
movl -0x10(%rbp), %eax
movl %eax, -0xa34(%rbp)
leaq -0x1f1(%rbp), %rdi
movq %rdi, -0xa30(%rbp)
callq 0x55d0
movq -0xa30(%rbp), %rdx
leaq 0x37081(%rip), %rsi     # 0xef247
leaq -0x1f0(%rbp), %rdi
callq 0x19840
jmp 0xb81d4
movl -0xa34(%rbp), %esi
movq -0xa28(%rbp), %rdi
leaq -0x1f0(%rbp), %rdx
callq 0xbdfe0
jmp 0xb81ef
movq -0xa28(%rbp), %rdx
movb $0x0, -0x1f2(%rbp)
movq -0x48(%rbp), %rcx
movq -0x70(%rbp), %r8
leaq 0xa84c4(%rip), %rdi     # 0x1606d0
leaq -0x1c8(%rbp), %rsi
callq 0xbdf00
jmp 0xb821a
leaq -0x1f0(%rbp), %rdi
callq 0x5200
leaq -0x1f1(%rbp), %rdi
callq 0x53c0
leaq -0x1c8(%rbp), %rdi
callq 0x5200
leaq -0x1c9(%rbp), %rdi
callq 0x53c0
movq -0x8(%rbp), %rax
movq 0x38(%rax), %rax
cmpl $0x1, 0x8(%rax)
jne 0xb85ba
leaq -0x219(%rbp), %rdi
movq %rdi, -0xa40(%rbp)
callq 0x55d0
movq -0xa40(%rbp), %rdx
leaq 0x38f55(%rip), %rsi     # 0xf11d2
leaq -0x218(%rbp), %rdi
callq 0x19840
jmp 0xb828b
movl $0x48, %edi
callq 0x5340
movq %rax, -0xa48(%rbp)
jmp 0xb829e
movb $0x1, -0x26a(%rbp)
leaq -0x241(%rbp), %rdi
movq %rdi, -0xa50(%rbp)
callq 0x55d0
movq -0xa50(%rbp), %rdx
leaq 0x38f15(%rip), %rsi     # 0xf11db
leaq -0x240(%rbp), %rdi
callq 0x19840
jmp 0xb82d4
leaq -0x269(%rbp), %rdi
movq %rdi, -0xa58(%rbp)
callq 0x55d0
movq -0xa58(%rbp), %rdx
leaq 0x396ab(%rip), %rsi     # 0xf19a0
leaq -0x268(%rbp), %rdi
callq 0x19840
jmp 0xb8303
movq -0xa48(%rbp), %rdi
leaq -0x240(%rbp), %rsi
leaq -0x268(%rbp), %rdx
callq 0xbeae0
jmp 0xb831f
movb $0x0, -0x26a(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xa60(%rbp)
jmp 0xb8339
movb $0x1, -0x292(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0xa6c(%rbp)
leaq -0x291(%rbp), %rdi
movq %rdi, -0xa68(%rbp)
callq 0x55d0
movq -0xa68(%rbp), %rdx
leaq 0x36edd(%rip), %rsi     # 0xef247
leaq -0x290(%rbp), %rdi
callq 0x19840
jmp 0xb8378
movl -0xa6c(%rbp), %esi
movq -0xa60(%rbp), %rdi
leaq -0x290(%rbp), %rdx
callq 0xbdfe0
jmp 0xb8393
movq -0xa60(%rbp), %rcx
movq -0xa48(%rbp), %rdx
movb $0x0, -0x292(%rbp)
leaq 0xa8321(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x218(%rbp), %rsi
callq 0xbdf00
jmp 0xb83c2
leaq -0x290(%rbp), %rdi
callq 0x5200
leaq -0x291(%rbp), %rdi
callq 0x53c0
leaq -0x268(%rbp), %rdi
callq 0x5200
leaq -0x269(%rbp), %rdi
callq 0x53c0
leaq -0x240(%rbp), %rdi
callq 0x5200
leaq -0x241(%rbp), %rdi
callq 0x53c0
leaq -0x218(%rbp), %rdi
callq 0x5200
leaq -0x219(%rbp), %rdi
callq 0x53c0
jmp 0xb888f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb849f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8493
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8469
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x1f0(%rbp), %rdi
callq 0x5200
leaq -0x1f1(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x1f2(%rbp)
jne 0xb8480
jmp 0xb8491
movq -0xa28(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb8493
leaq -0x1c8(%rbp), %rdi
callq 0x5200
leaq -0x1c9(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb85a9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb859d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8573
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb855b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb854f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8525
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x290(%rbp), %rdi
callq 0x5200
leaq -0x291(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x292(%rbp)
jne 0xb853c
jmp 0xb854d
movq -0xa60(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb854f
leaq -0x268(%rbp), %rdi
callq 0x5200
leaq -0x269(%rbp), %rdi
callq 0x53c0
leaq -0x240(%rbp), %rdi
callq 0x5200
leaq -0x241(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x26a(%rbp)
jne 0xb858a
jmp 0xb859b
movq -0xa48(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb859d
leaq -0x218(%rbp), %rdi
callq 0x5200
leaq -0x219(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
leaq -0x2b9(%rbp), %rdi
movq %rdi, -0xa78(%rbp)
callq 0x55d0
movq -0xa78(%rbp), %rdx
leaq 0x38bf7(%rip), %rsi     # 0xf11d2
leaq -0x2b8(%rbp), %rdi
callq 0x19840
jmp 0xb85e9
movl $0x48, %edi
callq 0x5340
movq %rax, -0xa80(%rbp)
jmp 0xb85fc
movb $0x1, -0x30a(%rbp)
leaq -0x2e1(%rbp), %rdi
movq %rdi, -0xa88(%rbp)
callq 0x55d0
movq -0xa88(%rbp), %rdx
leaq 0x38bbe(%rip), %rsi     # 0xf11e2
leaq -0x2e0(%rbp), %rdi
callq 0x19840
jmp 0xb8632
leaq -0x309(%rbp), %rdi
movq %rdi, -0xa90(%rbp)
callq 0x55d0
movq -0xa90(%rbp), %rdx
leaq 0x3934d(%rip), %rsi     # 0xf19a0
leaq -0x308(%rbp), %rdi
callq 0x19840
jmp 0xb8661
movq -0xa80(%rbp), %rdi
leaq -0x2e0(%rbp), %rsi
leaq -0x308(%rbp), %rdx
callq 0xbeae0
jmp 0xb867d
movb $0x0, -0x30a(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xa98(%rbp)
jmp 0xb8697
movb $0x1, -0x332(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0xaa4(%rbp)
leaq -0x331(%rbp), %rdi
movq %rdi, -0xaa0(%rbp)
callq 0x55d0
movq -0xaa0(%rbp), %rdx
leaq 0x36b7f(%rip), %rsi     # 0xef247
leaq -0x330(%rbp), %rdi
callq 0x19840
jmp 0xb86d6
movl -0xaa4(%rbp), %esi
movq -0xa98(%rbp), %rdi
leaq -0x330(%rbp), %rdx
callq 0xbdfe0
jmp 0xb86f1
movq -0xa98(%rbp), %rcx
movq -0xa80(%rbp), %rdx
movb $0x0, -0x332(%rbp)
leaq 0xa7fc3(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x2b8(%rbp), %rsi
callq 0xbdf00
jmp 0xb8720
leaq -0x330(%rbp), %rdi
callq 0x5200
leaq -0x331(%rbp), %rdi
callq 0x53c0
leaq -0x308(%rbp), %rdi
callq 0x5200
leaq -0x309(%rbp), %rdi
callq 0x53c0
leaq -0x2e0(%rbp), %rdi
callq 0x5200
leaq -0x2e1(%rbp), %rdi
callq 0x53c0
leaq -0x2b8(%rbp), %rdi
callq 0x5200
leaq -0x2b9(%rbp), %rdi
callq 0x53c0
jmp 0xb888f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb887e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8872
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8848
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8830
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8824
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb87fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x330(%rbp), %rdi
callq 0x5200
leaq -0x331(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x332(%rbp)
jne 0xb8811
jmp 0xb8822
movq -0xa98(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb8824
leaq -0x308(%rbp), %rdi
callq 0x5200
leaq -0x309(%rbp), %rdi
callq 0x53c0
leaq -0x2e0(%rbp), %rdi
callq 0x5200
leaq -0x2e1(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x30a(%rbp)
jne 0xb885f
jmp 0xb8870
movq -0xa80(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb8872
leaq -0x2b8(%rbp), %rdi
callq 0x5200
leaq -0x2b9(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movl -0x10(%rbp), %esi
leaq 0xa7e37(%rip), %rdi     # 0x1606d0
callq 0xbe1d0
jmp 0xb88a0
movq -0x70(%rbp), %rax
cmpl $0x1, (%rax)
jne 0xb8d16
movq -0x70(%rbp), %rdi
addq $0x8, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x5660
movq %rax, -0xab0(%rbp)
jmp 0xb88c7
movq -0xab0(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x7e, %eax
jne 0xb8d16
movl $0x48, %edi
callq 0x5340
movq %rax, -0xab8(%rbp)
jmp 0xb88ed
movb $0x1, -0x381(%rbp)
movq -0x70(%rbp), %rdx
addq $0x8, %rdx
leaq 0x388ed(%rip), %rsi     # 0xf11f0
leaq -0x360(%rbp), %rdi
callq 0x19ef0
jmp 0xb8911
leaq -0x68(%rbp), %rsi
leaq -0x380(%rbp), %rdi
callq 0x5150
jmp 0xb8923
movq -0xab8(%rbp), %rdi
leaq -0x360(%rbp), %rsi
leaq -0x380(%rbp), %rdx
callq 0xbeae0
jmp 0xb893f
movq -0xab8(%rbp), %rax
movb $0x0, -0x381(%rbp)
movq %rax, -0x340(%rbp)
leaq -0x380(%rbp), %rdi
callq 0x5200
leaq -0x360(%rbp), %rdi
callq 0x5200
leaq -0x3a9(%rbp), %rdi
movq %rdi, -0xac0(%rbp)
callq 0x55d0
movq -0xac0(%rbp), %rdx
leaq 0x3871e(%rip), %rsi     # 0xf10ab
leaq -0x3a8(%rbp), %rdi
callq 0x19840
jmp 0xb899b
movq -0x340(%rbp), %rax
movq %rax, -0xad0(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xac8(%rbp)
jmp 0xb89bc
movb $0x1, -0x3f2(%rbp)
leaq -0x68(%rbp), %rsi
leaq -0x3d0(%rbp), %rdi
callq 0x5150
jmp 0xb89d5
leaq -0x3f1(%rbp), %rdi
movq %rdi, -0xad8(%rbp)
callq 0x55d0
movq -0xad8(%rbp), %rdx
leaq 0x38faa(%rip), %rsi     # 0xf19a0
leaq -0x3f0(%rbp), %rdi
callq 0x19840
jmp 0xb8a04
movq -0xac8(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
leaq -0x3f0(%rbp), %rdx
callq 0xbeae0
jmp 0xb8a20
movb $0x0, -0x3f2(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xae0(%rbp)
jmp 0xb8a3a
movb $0x1, -0x41a(%rbp)
leaq -0x419(%rbp), %rdi
movq %rdi, -0xae8(%rbp)
callq 0x55d0
movq -0xae8(%rbp), %rdx
leaq 0x367e5(%rip), %rsi     # 0xef247
leaq -0x418(%rbp), %rdi
callq 0x19840
jmp 0xb8a70
movq -0xae0(%rbp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
leaq -0x418(%rbp), %rdx
callq 0xbdfe0
jmp 0xb8a8a
movq -0xae0(%rbp), %r8
movq -0xac8(%rbp), %rcx
movq -0xad0(%rbp), %rdx
movb $0x0, -0x41a(%rbp)
leaq 0xa7c23(%rip), %rdi     # 0x1606d0
leaq -0x3a8(%rbp), %rsi
callq 0xbdf00
jmp 0xb8abb
leaq -0x418(%rbp), %rdi
callq 0x5200
leaq -0x419(%rbp), %rdi
callq 0x53c0
leaq -0x3f0(%rbp), %rdi
callq 0x5200
leaq -0x3f1(%rbp), %rdi
callq 0x53c0
leaq -0x3d0(%rbp), %rdi
callq 0x5200
leaq -0x3a8(%rbp), %rdi
callq 0x5200
leaq -0x3a9(%rbp), %rdi
callq 0x53c0
leaq -0x441(%rbp), %rdi
movq %rdi, -0xaf0(%rbp)
callq 0x55d0
movq -0xaf0(%rbp), %rdx
leaq 0x368ec(%rip), %rsi     # 0xef41c
leaq -0x440(%rbp), %rdi
callq 0x19840
jmp 0xb8b3e
movq -0x340(%rbp), %rdx
movq -0x70(%rbp), %rcx
leaq 0xa7b80(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x440(%rbp), %rsi
callq 0xbdf00
jmp 0xb8b63
leaq -0x440(%rbp), %rdi
callq 0x5200
leaq -0x441(%rbp), %rdi
callq 0x53c0
jmp 0xb8d21
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8bc0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8bb4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x380(%rbp), %rdi
callq 0x5200
leaq -0x360(%rbp), %rdi
callq 0x5200
testb $0x1, -0x381(%rbp)
jne 0xb8bcb
jmp 0xb8bdc
movq -0xab8(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8cce
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8cc2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8ca4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8c8c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8c80
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8c56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x418(%rbp), %rdi
callq 0x5200
leaq -0x419(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x41a(%rbp)
jne 0xb8c6d
jmp 0xb8c7e
movq -0xae0(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb8c80
leaq -0x3f0(%rbp), %rdi
callq 0x5200
leaq -0x3f1(%rbp), %rdi
callq 0x53c0
leaq -0x3d0(%rbp), %rdi
callq 0x5200
testb $0x1, -0x3f2(%rbp)
jne 0xb8caf
jmp 0xb8cc0
movq -0xac8(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb8cc2
leaq -0x3a8(%rbp), %rdi
callq 0x5200
leaq -0x3a9(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb8d05
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x440(%rbp), %rdi
callq 0x5200
leaq -0x441(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq -0x70(%rbp), %rax
movq %rax, -0x340(%rbp)
leaq -0x469(%rbp), %rdi
movq %rdi, -0xaf8(%rbp)
callq 0x55d0
movq -0xaf8(%rbp), %rdx
leaq 0x366da(%rip), %rsi     # 0xef41c
leaq -0x468(%rbp), %rdi
callq 0x19840
jmp 0xb8d50
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb00(%rbp)
jmp 0xb8d63
movb $0x1, -0x4b1(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq -0x490(%rbp), %rdi
callq 0x5150
jmp 0xb8d84
leaq -0xc8(%rbp), %rsi
leaq -0x4b0(%rbp), %rdi
callq 0x5150
jmp 0xb8d99
movq -0xb00(%rbp), %rdi
leaq -0x490(%rbp), %rsi
leaq -0x4b0(%rbp), %rdx
callq 0xbeae0
jmp 0xb8db5
movq -0xb00(%rbp), %rdx
movb $0x0, -0x4b1(%rbp)
movq -0x48(%rbp), %rcx
leaq 0xa7902(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x468(%rbp), %rsi
callq 0xbdf00
jmp 0xb8de1
leaq -0x4b0(%rbp), %rdi
callq 0x5200
leaq -0x490(%rbp), %rdi
callq 0x5200
leaq -0x468(%rbp), %rdi
callq 0x5200
leaq -0x469(%rbp), %rdi
callq 0x53c0
leaq -0x4d9(%rbp), %rdi
movq %rdi, -0xb08(%rbp)
callq 0x55d0
movq -0xb08(%rbp), %rdx
leaq 0x383a0(%rip), %rsi     # 0xf11d2
leaq -0x4d8(%rbp), %rdi
callq 0x19840
jmp 0xb8e40
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb10(%rbp)
jmp 0xb8e53
movb $0x1, -0x52a(%rbp)
leaq -0x501(%rbp), %rdi
movq %rdi, -0xb18(%rbp)
callq 0x55d0
movq -0xb18(%rbp), %rdx
leaq 0x38371(%rip), %rsi     # 0xf11ec
leaq -0x500(%rbp), %rdi
callq 0x19840
jmp 0xb8e89
leaq -0x529(%rbp), %rdi
movq %rdi, -0xb20(%rbp)
callq 0x55d0
movq -0xb20(%rbp), %rdx
leaq 0x38af6(%rip), %rsi     # 0xf19a0
leaq -0x528(%rbp), %rdi
callq 0x19840
jmp 0xb8eb8
movq -0xb10(%rbp), %rdi
leaq -0x500(%rbp), %rsi
leaq -0x528(%rbp), %rdx
callq 0xbeae0
jmp 0xb8ed4
movb $0x0, -0x52a(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb28(%rbp)
jmp 0xb8eee
movb $0x1, -0x552(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0xb34(%rbp)
leaq -0x551(%rbp), %rdi
movq %rdi, -0xb30(%rbp)
callq 0x55d0
movq -0xb30(%rbp), %rdx
leaq 0x36328(%rip), %rsi     # 0xef247
leaq -0x550(%rbp), %rdi
callq 0x19840
jmp 0xb8f2d
movl -0xb34(%rbp), %esi
movq -0xb28(%rbp), %rdi
leaq -0x550(%rbp), %rdx
callq 0xbdfe0
jmp 0xb8f48
movq -0xb28(%rbp), %rcx
movq -0xb10(%rbp), %rdx
movb $0x0, -0x552(%rbp)
leaq 0xa776c(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x4d8(%rbp), %rsi
callq 0xbdf00
jmp 0xb8f77
leaq -0x550(%rbp), %rdi
callq 0x5200
leaq -0x551(%rbp), %rdi
callq 0x53c0
leaq -0x528(%rbp), %rdi
callq 0x5200
leaq -0x529(%rbp), %rdi
callq 0x53c0
leaq -0x500(%rbp), %rdi
callq 0x5200
leaq -0x501(%rbp), %rdi
callq 0x53c0
leaq -0x4d8(%rbp), %rdi
callq 0x5200
leaq -0x4d9(%rbp), %rdi
callq 0x53c0
movl -0xc(%rbp), %esi
leaq 0xa76ef(%rip), %rdi     # 0x1606d0
callq 0xbe1d0
jmp 0xb8fe8
leaq -0x68(%rbp), %rdi
leaq 0x36254(%rip), %rsi     # 0xef247
callq 0xc02b0
movb %al, -0xb35(%rbp)
jmp 0xb9000
movb -0xb35(%rbp), %al
testb $0x1, %al
jne 0xb900f
jmp 0xb9281
leaq -0x68(%rbp), %rdi
leaq 0x36f65(%rip), %rsi     # 0xeff7f
callq 0xc02b0
movb %al, -0xb36(%rbp)
jmp 0xb9027
movb -0xb36(%rbp), %al
testb $0x1, %al
jne 0xb9036
jmp 0xb9281
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rax
movq (%rax), %rax
movq %rax, -0x560(%rbp)
leaq -0x581(%rbp), %rdi
movq %rdi, -0xb40(%rbp)
callq 0x55d0
movq -0xb40(%rbp), %rdx
leaq 0x3823c(%rip), %rsi     # 0xf12a5
leaq -0x580(%rbp), %rdi
callq 0x19840
jmp 0xb9077
movq -0x560(%rbp), %rdi
leaq -0x580(%rbp), %rsi
callq 0xae910
jmp 0xb908c
leaq -0x580(%rbp), %rdi
callq 0x5200
leaq -0x581(%rbp), %rdi
callq 0x53c0
jmp 0xb9281
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb912f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9123
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9105
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb90f9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x4b0(%rbp), %rdi
callq 0x5200
leaq -0x490(%rbp), %rdi
callq 0x5200
testb $0x1, -0x4b1(%rbp)
jne 0xb9110
jmp 0xb9121
movq -0xb00(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb9123
leaq -0x468(%rbp), %rdi
callq 0x5200
leaq -0x469(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9239
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb922d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9203
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb91eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb91df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb91b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x550(%rbp), %rdi
callq 0x5200
leaq -0x551(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x552(%rbp)
jne 0xb91cc
jmp 0xb91dd
movq -0xb28(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb91df
leaq -0x528(%rbp), %rdi
callq 0x5200
leaq -0x529(%rbp), %rdi
callq 0x53c0
leaq -0x500(%rbp), %rdi
callq 0x5200
leaq -0x501(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x52a(%rbp)
jne 0xb921a
jmp 0xb922b
movq -0xb10(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb922d
leaq -0x4d8(%rbp), %rdi
callq 0x5200
leaq -0x4d9(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9270
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x580(%rbp), %rdi
callq 0x5200
leaq -0x581(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
leaq -0x5a9(%rbp), %rdi
movq %rdi, -0xb48(%rbp)
callq 0x55d0
movq -0xb48(%rbp), %rdx
leaq 0x37f2c(%rip), %rsi     # 0xf11ce
leaq -0x5a8(%rbp), %rdi
callq 0x19840
jmp 0xb92b0
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb50(%rbp)
jmp 0xb92c3
movb $0x1, -0x5d2(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0xb5c(%rbp)
leaq -0x5d1(%rbp), %rdi
movq %rdi, -0xb58(%rbp)
callq 0x55d0
movq -0xb58(%rbp), %rdx
leaq 0x35f53(%rip), %rsi     # 0xef247
leaq -0x5d0(%rbp), %rdi
callq 0x19840
jmp 0xb9302
movl -0xb5c(%rbp), %esi
movq -0xb50(%rbp), %rdi
leaq -0x5d0(%rbp), %rdx
callq 0xbdfe0
jmp 0xb931d
movb $0x0, -0x5d2(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb68(%rbp)
jmp 0xb9337
movb $0x1, -0x619(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq -0x5f8(%rbp), %rdi
callq 0x5150
jmp 0xb9358
leaq -0xc8(%rbp), %rsi
leaq -0x618(%rbp), %rdi
callq 0x5150
jmp 0xb936d
movq -0xb68(%rbp), %rdi
leaq -0x5f8(%rbp), %rsi
leaq -0x618(%rbp), %rdx
callq 0xbeae0
jmp 0xb9389
movq -0xb68(%rbp), %rcx
movq -0xb50(%rbp), %rdx
movb $0x0, -0x619(%rbp)
movq -0x340(%rbp), %r8
leaq 0xa7324(%rip), %rdi     # 0x1606d0
leaq -0x5a8(%rbp), %rsi
callq 0xbdf00
jmp 0xb93ba
leaq -0x618(%rbp), %rdi
callq 0x5200
leaq -0x5f8(%rbp), %rdi
callq 0x5200
leaq -0x5d0(%rbp), %rdi
callq 0x5200
leaq -0x5d1(%rbp), %rdi
callq 0x53c0
leaq -0x5a8(%rbp), %rdi
callq 0x5200
leaq -0x5a9(%rbp), %rdi
callq 0x53c0
movq -0x8(%rbp), %rax
movq 0x38(%rax), %rax
cmpl $0x1, 0x8(%rax)
jne 0xb97d8
leaq -0x641(%rbp), %rdi
movq %rdi, -0xb70(%rbp)
callq 0x55d0
movq -0xb70(%rbp), %rdx
leaq 0x37d9d(%rip), %rsi     # 0xf11d2
leaq -0x640(%rbp), %rdi
callq 0x19840
jmp 0xb9443
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb78(%rbp)
jmp 0xb9456
movb $0x1, -0x692(%rbp)
leaq -0x669(%rbp), %rdi
movq %rdi, -0xb80(%rbp)
callq 0x55d0
movq -0xb80(%rbp), %rdx
leaq 0x37d5d(%rip), %rsi     # 0xf11db
leaq -0x668(%rbp), %rdi
callq 0x19840
jmp 0xb948c
leaq -0x691(%rbp), %rdi
movq %rdi, -0xb88(%rbp)
callq 0x55d0
movq -0xb88(%rbp), %rdx
leaq 0x384f3(%rip), %rsi     # 0xf19a0
leaq -0x690(%rbp), %rdi
callq 0x19840
jmp 0xb94bb
movq -0xb78(%rbp), %rdi
leaq -0x668(%rbp), %rsi
leaq -0x690(%rbp), %rdx
callq 0xbeae0
jmp 0xb94d7
movb $0x0, -0x692(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xb90(%rbp)
jmp 0xb94f1
movb $0x1, -0x6ba(%rbp)
movl -0x18(%rbp), %eax
movl %eax, -0xb9c(%rbp)
leaq -0x6b9(%rbp), %rdi
movq %rdi, -0xb98(%rbp)
callq 0x55d0
movq -0xb98(%rbp), %rdx
leaq 0x35d25(%rip), %rsi     # 0xef247
leaq -0x6b8(%rbp), %rdi
callq 0x19840
jmp 0xb9530
movl -0xb9c(%rbp), %esi
movq -0xb90(%rbp), %rdi
leaq -0x6b8(%rbp), %rdx
callq 0xbdfe0
jmp 0xb954b
movq -0xb90(%rbp), %rcx
movq -0xb78(%rbp), %rdx
movb $0x0, -0x6ba(%rbp)
leaq 0xa7169(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x640(%rbp), %rsi
callq 0xbdf00
jmp 0xb957a
leaq -0x6b8(%rbp), %rdi
callq 0x5200
leaq -0x6b9(%rbp), %rdi
callq 0x53c0
leaq -0x690(%rbp), %rdi
callq 0x5200
leaq -0x691(%rbp), %rdi
callq 0x53c0
leaq -0x668(%rbp), %rdi
callq 0x5200
leaq -0x669(%rbp), %rdi
callq 0x53c0
leaq -0x640(%rbp), %rdi
callq 0x5200
leaq -0x641(%rbp), %rdi
callq 0x53c0
jmp 0xb9aad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb96bd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb96b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9687
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb967b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb965d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9651
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x618(%rbp), %rdi
callq 0x5200
leaq -0x5f8(%rbp), %rdi
callq 0x5200
testb $0x1, -0x619(%rbp)
jne 0xb9668
jmp 0xb9679
movq -0xb68(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb967b
leaq -0x5d0(%rbp), %rdi
callq 0x5200
leaq -0x5d1(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x5d2(%rbp)
jne 0xb969e
jmp 0xb96af
movq -0xb50(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb96b1
leaq -0x5a8(%rbp), %rdi
callq 0x5200
leaq -0x5a9(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb97c7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb97bb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9791
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9779
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb976d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9743
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x6b8(%rbp), %rdi
callq 0x5200
leaq -0x6b9(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x6ba(%rbp)
jne 0xb975a
jmp 0xb976b
movq -0xb90(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb976d
leaq -0x690(%rbp), %rdi
callq 0x5200
leaq -0x691(%rbp), %rdi
callq 0x53c0
leaq -0x668(%rbp), %rdi
callq 0x5200
leaq -0x669(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x692(%rbp)
jne 0xb97a8
jmp 0xb97b9
movq -0xb78(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb97bb
leaq -0x640(%rbp), %rdi
callq 0x5200
leaq -0x641(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
leaq -0x6e1(%rbp), %rdi
movq %rdi, -0xba8(%rbp)
callq 0x55d0
movq -0xba8(%rbp), %rdx
leaq 0x379d9(%rip), %rsi     # 0xf11d2
leaq -0x6e0(%rbp), %rdi
callq 0x19840
jmp 0xb9807
movl $0x48, %edi
callq 0x5340
movq %rax, -0xbb0(%rbp)
jmp 0xb981a
movb $0x1, -0x732(%rbp)
leaq -0x709(%rbp), %rdi
movq %rdi, -0xbb8(%rbp)
callq 0x55d0
movq -0xbb8(%rbp), %rdx
leaq 0x379a0(%rip), %rsi     # 0xf11e2
leaq -0x708(%rbp), %rdi
callq 0x19840
jmp 0xb9850
leaq -0x731(%rbp), %rdi
movq %rdi, -0xbc0(%rbp)
callq 0x55d0
movq -0xbc0(%rbp), %rdx
leaq 0x3812f(%rip), %rsi     # 0xf19a0
leaq -0x730(%rbp), %rdi
callq 0x19840
jmp 0xb987f
movq -0xbb0(%rbp), %rdi
leaq -0x708(%rbp), %rsi
leaq -0x730(%rbp), %rdx
callq 0xbeae0
jmp 0xb989b
movb $0x0, -0x732(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xbc8(%rbp)
jmp 0xb98b5
movb $0x1, -0x75a(%rbp)
movl -0x18(%rbp), %eax
movl %eax, -0xbd4(%rbp)
leaq -0x759(%rbp), %rdi
movq %rdi, -0xbd0(%rbp)
callq 0x55d0
movq -0xbd0(%rbp), %rdx
leaq 0x35961(%rip), %rsi     # 0xef247
leaq -0x758(%rbp), %rdi
callq 0x19840
jmp 0xb98f4
movl -0xbd4(%rbp), %esi
movq -0xbc8(%rbp), %rdi
leaq -0x758(%rbp), %rdx
callq 0xbdfe0
jmp 0xb990f
movq -0xbc8(%rbp), %rcx
movq -0xbb0(%rbp), %rdx
movb $0x0, -0x75a(%rbp)
leaq 0xa6da5(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x6e0(%rbp), %rsi
callq 0xbdf00
jmp 0xb993e
leaq -0x758(%rbp), %rdi
callq 0x5200
leaq -0x759(%rbp), %rdi
callq 0x53c0
leaq -0x730(%rbp), %rdi
callq 0x5200
leaq -0x731(%rbp), %rdi
callq 0x53c0
leaq -0x708(%rbp), %rdi
callq 0x5200
leaq -0x709(%rbp), %rdi
callq 0x53c0
leaq -0x6e0(%rbp), %rdi
callq 0x5200
leaq -0x6e1(%rbp), %rdi
callq 0x53c0
jmp 0xb9aad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a9c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a90
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a66
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xb9a18
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x758(%rbp), %rdi
callq 0x5200
leaq -0x759(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x75a(%rbp)
jne 0xb9a2f
jmp 0xb9a40
movq -0xbc8(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb9a42
leaq -0x730(%rbp), %rdi
callq 0x5200
leaq -0x731(%rbp), %rdi
callq 0x53c0
leaq -0x708(%rbp), %rdi
callq 0x5200
leaq -0x709(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x732(%rbp)
jne 0xb9a7d
jmp 0xb9a8e
movq -0xbb0(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xb9a90
leaq -0x6e0(%rbp), %rdi
callq 0x5200
leaq -0x6e1(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movl -0x14(%rbp), %esi
leaq 0xa6c19(%rip), %rdi     # 0x1606d0
callq 0xbe1d0
jmp 0xb9abe
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0xb23b0
jmp 0xb9acd
leaq -0x781(%rbp), %rdi
movq %rdi, -0xbe0(%rbp)
callq 0x55d0
movq -0xbe0(%rbp), %rdx
leaq 0x377da(%rip), %rsi     # 0xf12c8
leaq -0x780(%rbp), %rdi
callq 0x19840
jmp 0xb9afc
movl $0x48, %edi
callq 0x5340
movq %rax, -0xbe8(%rbp)
jmp 0xb9b0f
movb $0x1, -0x7c9(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq -0x7a8(%rbp), %rdi
callq 0x5150
jmp 0xb9b30
leaq -0xc8(%rbp), %rsi
leaq -0x7c8(%rbp), %rdi
callq 0x5150
jmp 0xb9b45
movq -0xbe8(%rbp), %rdi
leaq -0x7a8(%rbp), %rsi
leaq -0x7c8(%rbp), %rdx
callq 0xbeae0
jmp 0xb9b61
movb $0x0, -0x7c9(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xbf0(%rbp)
jmp 0xb9b7b
movb $0x1, -0x811(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq -0x7f0(%rbp), %rdi
callq 0x5150
jmp 0xb9b9c
leaq -0xc8(%rbp), %rsi
leaq -0x810(%rbp), %rdi
callq 0x5150
jmp 0xb9bb1
movq -0xbf0(%rbp), %rdi
leaq -0x7f0(%rbp), %rsi
leaq -0x810(%rbp), %rdx
callq 0xbeae0
jmp 0xb9bcd
movb $0x0, -0x811(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xbf8(%rbp)
jmp 0xb9be7
movb $0x1, -0x83a(%rbp)
movq -0x8(%rbp), %rax
movq 0x38(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, -0xc04(%rbp)
leaq -0x839(%rbp), %rdi
movq %rdi, -0xc00(%rbp)
callq 0x55d0
movq -0xc00(%rbp), %rdx
leaq 0x35627(%rip), %rsi     # 0xef247
leaq -0x838(%rbp), %rdi
callq 0x19840
jmp 0xb9c2e
movl -0xc04(%rbp), %esi
movq -0xbf8(%rbp), %rdi
leaq -0x838(%rbp), %rdx
callq 0xbdfe0
jmp 0xb9c49
movq -0xbf8(%rbp), %r8
movq -0xbf0(%rbp), %rcx
movq -0xbe8(%rbp), %rdx
movb $0x0, -0x83a(%rbp)
leaq 0xa6a64(%rip), %rdi     # 0x1606d0
leaq -0x780(%rbp), %rsi
callq 0xbdf00
jmp 0xb9c7a
leaq -0x838(%rbp), %rdi
callq 0x5200
leaq -0x839(%rbp), %rdi
callq 0x53c0
leaq -0x810(%rbp), %rdi
callq 0x5200
leaq -0x7f0(%rbp), %rdi
callq 0x5200
leaq -0x7c8(%rbp), %rdi
callq 0x5200
leaq -0x7a8(%rbp), %rdi
callq 0x5200
leaq -0x780(%rbp), %rdi
callq 0x5200
leaq -0x781(%rbp), %rdi
callq 0x53c0
leaq -0x861(%rbp), %rdi
movq %rdi, -0xc10(%rbp)
callq 0x55d0
movq -0xc10(%rbp), %rdx
leaq 0x374d7(%rip), %rsi     # 0xf11d2
leaq -0x860(%rbp), %rdi
callq 0x19840
jmp 0xb9d09
movl $0x48, %edi
callq 0x5340
movq %rax, -0xc18(%rbp)
jmp 0xb9d1c
movb $0x1, -0x8b2(%rbp)
leaq -0x889(%rbp), %rdi
movq %rdi, -0xc20(%rbp)
callq 0x55d0
movq -0xc20(%rbp), %rdx
leaq 0x374a8(%rip), %rsi     # 0xf11ec
leaq -0x888(%rbp), %rdi
callq 0x19840
jmp 0xb9d52
leaq -0x8b1(%rbp), %rdi
movq %rdi, -0xc28(%rbp)
callq 0x55d0
movq -0xc28(%rbp), %rdx
leaq 0x37c2d(%rip), %rsi     # 0xf19a0
leaq -0x8b0(%rbp), %rdi
callq 0x19840
jmp 0xb9d81
movq -0xc18(%rbp), %rdi
leaq -0x888(%rbp), %rsi
leaq -0x8b0(%rbp), %rdx
callq 0xbeae0
jmp 0xb9d9d
movb $0x0, -0x8b2(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xc30(%rbp)
jmp 0xb9db7
movb $0x1, -0x8da(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0xc3c(%rbp)
leaq -0x8d9(%rbp), %rdi
movq %rdi, -0xc38(%rbp)
callq 0x55d0
movq -0xc38(%rbp), %rdx
leaq 0x3545f(%rip), %rsi     # 0xef247
leaq -0x8d8(%rbp), %rdi
callq 0x19840
jmp 0xb9df6
movl -0xc3c(%rbp), %esi
movq -0xc30(%rbp), %rdi
leaq -0x8d8(%rbp), %rdx
callq 0xbdfe0
jmp 0xb9e11
movq -0xc30(%rbp), %rcx
movq -0xc18(%rbp), %rdx
movb $0x0, -0x8da(%rbp)
leaq 0xa68a3(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x860(%rbp), %rsi
callq 0xbdf00
jmp 0xb9e40
leaq -0x8d8(%rbp), %rdi
callq 0x5200
leaq -0x8d9(%rbp), %rdi
callq 0x53c0
leaq -0x8b0(%rbp), %rdi
callq 0x5200
leaq -0x8b1(%rbp), %rdi
callq 0x53c0
leaq -0x888(%rbp), %rdi
callq 0x5200
leaq -0x889(%rbp), %rdi
callq 0x53c0
leaq -0x860(%rbp), %rdi
callq 0x5200
leaq -0x861(%rbp), %rdi
callq 0x53c0
movl -0x18(%rbp), %esi
leaq 0xa6826(%rip), %rdi     # 0x1606d0
callq 0xbe1d0
jmp 0xb9eb1
leaq -0x901(%rbp), %rdi
movq %rdi, -0xc48(%rbp)
callq 0x55d0
movq -0xc48(%rbp), %rdx
leaq 0x3554a(%rip), %rsi     # 0xef41c
leaq -0x900(%rbp), %rdi
callq 0x19840
jmp 0xb9ee0
movl $0x48, %edi
callq 0x5340
movq %rax, -0xc50(%rbp)
jmp 0xb9ef3
movb $0x1, -0x949(%rbp)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x8, %rsi
leaq -0x928(%rbp), %rdi
callq 0x5150
jmp 0xb9f14
leaq -0xc8(%rbp), %rsi
leaq -0x948(%rbp), %rdi
callq 0x5150
jmp 0xb9f29
movq -0xc50(%rbp), %rdi
leaq -0x928(%rbp), %rsi
leaq -0x948(%rbp), %rdx
callq 0xbeae0
jmp 0xb9f45
movq -0xc50(%rbp), %rdx
movb $0x0, -0x949(%rbp)
movq -0x70(%rbp), %rcx
leaq 0xa6772(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x900(%rbp), %rsi
callq 0xbdf00
jmp 0xb9f71
leaq -0x948(%rbp), %rdi
callq 0x5200
leaq -0x928(%rbp), %rdi
callq 0x5200
leaq -0x900(%rbp), %rdi
callq 0x5200
leaq -0x901(%rbp), %rdi
callq 0x53c0
leaq -0x971(%rbp), %rdi
movq %rdi, -0xc58(%rbp)
callq 0x55d0
movq -0xc58(%rbp), %rdx
leaq 0x37210(%rip), %rsi     # 0xf11d2
leaq -0x970(%rbp), %rdi
callq 0x19840
jmp 0xb9fd0
movl $0x48, %edi
callq 0x5340
movq %rax, -0xc60(%rbp)
jmp 0xb9fe3
movb $0x1, -0x9c2(%rbp)
leaq -0x999(%rbp), %rdi
movq %rdi, -0xc68(%rbp)
callq 0x55d0
movq -0xc68(%rbp), %rdx
leaq 0x371e1(%rip), %rsi     # 0xf11ec
leaq -0x998(%rbp), %rdi
callq 0x19840
jmp 0xba019
leaq -0x9c1(%rbp), %rdi
movq %rdi, -0xc70(%rbp)
callq 0x55d0
movq -0xc70(%rbp), %rdx
leaq 0x37966(%rip), %rsi     # 0xf19a0
leaq -0x9c0(%rbp), %rdi
callq 0x19840
jmp 0xba048
movq -0xc60(%rbp), %rdi
leaq -0x998(%rbp), %rsi
leaq -0x9c0(%rbp), %rdx
callq 0xbeae0
jmp 0xba064
movb $0x0, -0x9c2(%rbp)
movl $0x48, %edi
callq 0x5340
movq %rax, -0xc78(%rbp)
jmp 0xba07e
movb $0x1, -0x9ea(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0xc84(%rbp)
leaq -0x9e9(%rbp), %rdi
movq %rdi, -0xc80(%rbp)
callq 0x55d0
movq -0xc80(%rbp), %rdx
leaq 0x35198(%rip), %rsi     # 0xef247
leaq -0x9e8(%rbp), %rdi
callq 0x19840
jmp 0xba0bd
movl -0xc84(%rbp), %esi
movq -0xc78(%rbp), %rdi
leaq -0x9e8(%rbp), %rdx
callq 0xbdfe0
jmp 0xba0d8
movq -0xc78(%rbp), %rcx
movq -0xc60(%rbp), %rdx
movb $0x0, -0x9ea(%rbp)
leaq 0xa65dc(%rip), %rdi     # 0x1606d0
xorl %eax, %eax
movl %eax, %r8d
leaq -0x970(%rbp), %rsi
callq 0xbdf00
jmp 0xba107
leaq -0x9e8(%rbp), %rdi
callq 0x5200
leaq -0x9e9(%rbp), %rdi
callq 0x53c0
leaq -0x9c0(%rbp), %rdi
callq 0x5200
leaq -0x9c1(%rbp), %rdi
callq 0x53c0
leaq -0x998(%rbp), %rdi
callq 0x5200
leaq -0x999(%rbp), %rdi
callq 0x53c0
leaq -0x970(%rbp), %rdi
callq 0x5200
leaq -0x971(%rbp), %rdi
callq 0x53c0
movl -0x1c(%rbp), %esi
leaq 0xa655f(%rip), %rdi     # 0x1606d0
callq 0xbe1d0
jmp 0xba178
leaq -0xe8(%rbp), %rdi
callq 0xbeaa0
leaq -0x70(%rbp), %rdi
callq 0xbf290
leaq -0x48(%rbp), %rdi
callq 0xbf290
addq $0xc90, %rsp            # imm = 0xC90
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba2e9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba2dd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba2bf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba2b3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba2a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba289
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba27d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba271
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba247
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x838(%rbp), %rdi
callq 0x5200
leaq -0x839(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x83a(%rbp)
jne 0xba25e
jmp 0xba26f
movq -0xbf8(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba271
leaq -0x810(%rbp), %rdi
callq 0x5200
leaq -0x7f0(%rbp), %rdi
callq 0x5200
testb $0x1, -0x811(%rbp)
jne 0xba294
jmp 0xba2a5
movq -0xbf0(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba2a7
leaq -0x7c8(%rbp), %rdi
callq 0x5200
leaq -0x7a8(%rbp), %rdi
callq 0x5200
testb $0x1, -0x7c9(%rbp)
jne 0xba2ca
jmp 0xba2db
movq -0xbe8(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba2dd
leaq -0x780(%rbp), %rdi
callq 0x5200
leaq -0x781(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba3f3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba3e7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba3bd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba3a5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba399
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba36f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x8d8(%rbp), %rdi
callq 0x5200
leaq -0x8d9(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x8da(%rbp)
jne 0xba386
jmp 0xba397
movq -0xc30(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba399
leaq -0x8b0(%rbp), %rdi
callq 0x5200
leaq -0x8b1(%rbp), %rdi
callq 0x53c0
leaq -0x888(%rbp), %rdi
callq 0x5200
leaq -0x889(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x8b2(%rbp)
jne 0xba3d4
jmp 0xba3e5
movq -0xc18(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba3e7
leaq -0x860(%rbp), %rdi
callq 0x5200
leaq -0x861(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba48a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba47e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba460
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba454
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x948(%rbp), %rdi
callq 0x5200
leaq -0x928(%rbp), %rdi
callq 0x5200
testb $0x1, -0x949(%rbp)
jne 0xba46b
jmp 0xba47c
movq -0xc50(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba47e
leaq -0x900(%rbp), %rdi
callq 0x5200
leaq -0x901(%rbp), %rdi
callq 0x53c0
jmp 0xba5a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba594
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba588
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba55e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba546
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba53a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xba510
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0x9e8(%rbp), %rdi
callq 0x5200
leaq -0x9e9(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x9ea(%rbp)
jne 0xba527
jmp 0xba538
movq -0xc78(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba53a
leaq -0x9c0(%rbp), %rdi
callq 0x5200
leaq -0x9c1(%rbp), %rdi
callq 0x53c0
leaq -0x998(%rbp), %rdi
callq 0x5200
leaq -0x999(%rbp), %rdi
callq 0x53c0
testb $0x1, -0x9c2(%rbp)
jne 0xba575
jmp 0xba586
movq -0xc60(%rbp), %rdi
movl $0x48, %esi
callq 0x5350
jmp 0xba588
leaq -0x970(%rbp), %rdi
callq 0x5200
leaq -0x971(%rbp), %rdi
callq 0x53c0
leaq -0xe8(%rbp), %rdi
callq 0xbeaa0
leaq -0x70(%rbp), %rdi
callq 0xbf290
leaq -0x48(%rbp), %rdi
callq 0xbf290
movq -0x78(%rbp), %rdi
callq 0x55b0
nopw (%rax,%rax)