// File: /workspace/github_c_makefile_star2_O0/termbox[P]termbox/demo/keyboard.c
// Function: draw_keyboard
void draw_keyboard()
{
    int i;
    tb_change_cell(0, 0, 0x250C, TB_WHITE, TB_DEFAULT);
    tb_change_cell(79, 0, 0x2510, TB_WHITE, TB_DEFAULT);
    tb_change_cell(0, 23, 0x2514, TB_WHITE, TB_DEFAULT);
    tb_change_cell(79, 23, 0x2518, TB_WHITE, TB_DEFAULT);

    for (i = 1; i < 79; ++i) {
        tb_change_cell(i, 0, 0x2500, TB_WHITE, TB_DEFAULT);
        tb_change_cell(i, 23, 0x2500, TB_WHITE, TB_DEFAULT);
        tb_change_cell(i, 17, 0x2500, TB_WHITE, TB_DEFAULT);
        tb_change_cell(i, 4, 0x2500, TB_WHITE, TB_DEFAULT);
    }
    for (i = 1; i < 23; ++i) {
        tb_change_cell(0, i, 0x2502, TB_WHITE, TB_DEFAULT);
        tb_change_cell(79, i, 0x2502, TB_WHITE, TB_DEFAULT);
    }
    tb_change_cell(0, 17, 0x251C, TB_WHITE, TB_DEFAULT);
    tb_change_cell(79, 17, 0x2524, TB_WHITE, TB_DEFAULT);
    tb_change_cell(0, 4, 0x251C, TB_WHITE, TB_DEFAULT);
    tb_change_cell(79, 4, 0x2524, TB_WHITE, TB_DEFAULT);
    for (i = 5; i < 17; ++i) {
        tb_change_cell(1, i, 0x2588, TB_YELLOW, TB_YELLOW);
        tb_change_cell(78, i, 0x2588, TB_YELLOW, TB_YELLOW);
    }

    draw_key(K_ESC, TB_WHITE, TB_BLUE);
    draw_key(K_F1, TB_WHITE, TB_BLUE);
    draw_key(K_F2, TB_WHITE, TB_BLUE);
    draw_key(K_F3, TB_WHITE, TB_BLUE);
    draw_key(K_F4, TB_WHITE, TB_BLUE);
    draw_key(K_F5, TB_WHITE, TB_BLUE);
    draw_key(K_F6, TB_WHITE, TB_BLUE);
    draw_key(K_F7, TB_WHITE, TB_BLUE);
    draw_key(K_F8, TB_WHITE, TB_BLUE);
    draw_key(K_F9, TB_WHITE, TB_BLUE);
    draw_key(K_F10, TB_WHITE, TB_BLUE);
    draw_key(K_F11, TB_WHITE, TB_BLUE);
    draw_key(K_F12, TB_WHITE, TB_BLUE);
    draw_key(K_PRN, TB_WHITE, TB_BLUE);
    draw_key(K_SCR, TB_WHITE, TB_BLUE);
    draw_key(K_BRK, TB_WHITE, TB_BLUE);
    draw_key(K_LED1, TB_WHITE, TB_BLUE);
    draw_key(K_LED2, TB_WHITE, TB_BLUE);
    draw_key(K_LED3, TB_WHITE, TB_BLUE);

    draw_key(K_TILDE, TB_WHITE, TB_BLUE);
    draw_key(K_1, TB_WHITE, TB_BLUE);
    draw_key(K_2, TB_WHITE, TB_BLUE);
    draw_key(K_3, TB_WHITE, TB_BLUE);
    draw_key(K_4, TB_WHITE, TB_BLUE);
    draw_key(K_5, TB_WHITE, TB_BLUE);
    draw_key(K_6, TB_WHITE, TB_BLUE);
    draw_key(K_7, TB_WHITE, TB_BLUE);
    draw_key(K_8, TB_WHITE, TB_BLUE);
    draw_key(K_9, TB_WHITE, TB_BLUE);
    draw_key(K_0, TB_WHITE, TB_BLUE);
    draw_key(K_MINUS, TB_WHITE, TB_BLUE);
    draw_key(K_EQUALS, TB_WHITE, TB_BLUE);
    draw_key(K_BACKSLASH, TB_WHITE, TB_BLUE);
    draw_key(K_BACKSPACE, TB_WHITE, TB_BLUE);
    draw_key(K_INS, TB_WHITE, TB_BLUE);
    draw_key(K_HOM, TB_WHITE, TB_BLUE);
    draw_key(K_PGU, TB_WHITE, TB_BLUE);
    draw_key(K_K_NUMLOCK, TB_WHITE, TB_BLUE);
    draw_key(K_K_SLASH, TB_WHITE, TB_BLUE);
    draw_key(K_K_STAR, TB_WHITE, TB_BLUE);
    draw_key(K_K_MINUS, TB_WHITE, TB_BLUE);

    draw_key(K_TAB, TB_WHITE, TB_BLUE);
    draw_key(K_q, TB_WHITE, TB_BLUE);
    draw_key(K_w, TB_WHITE, TB_BLUE);
    draw_key(K_e, TB_WHITE, TB_BLUE);
    draw_key(K_r, TB_WHITE, TB_BLUE);
    draw_key(K_t, TB_WHITE, TB_BLUE);
    draw_key(K_y, TB_WHITE, TB_BLUE);
    draw_key(K_u, TB_WHITE, TB_BLUE);
    draw_key(K_i, TB_WHITE, TB_BLUE);
    draw_key(K_o, TB_WHITE, TB_BLUE);
    draw_key(K_p, TB_WHITE, TB_BLUE);
    draw_key(K_LSQB, TB_WHITE, TB_BLUE);
    draw_key(K_RSQB, TB_WHITE, TB_BLUE);
    draw_key(K_ENTER, TB_WHITE, TB_BLUE);
    draw_key(K_DEL, TB_WHITE, TB_BLUE);
    draw_key(K_END, TB_WHITE, TB_BLUE);
    draw_key(K_PGD, TB_WHITE, TB_BLUE);
    draw_key(K_K_7, TB_WHITE, TB_BLUE);
    draw_key(K_K_8, TB_WHITE, TB_BLUE);
    draw_key(K_K_9, TB_WHITE, TB_BLUE);
    draw_key(K_K_PLUS, TB_WHITE, TB_BLUE);

    draw_key(K_CAPS, TB_WHITE, TB_BLUE);
    draw_key(K_a, TB_WHITE, TB_BLUE);
    draw_key(K_s, TB_WHITE, TB_BLUE);
    draw_key(K_d, TB_WHITE, TB_BLUE);
    draw_key(K_f, TB_WHITE, TB_BLUE);
    draw_key(K_g, TB_WHITE, TB_BLUE);
    draw_key(K_h, TB_WHITE, TB_BLUE);
    draw_key(K_j, TB_WHITE, TB_BLUE);
    draw_key(K_k, TB_WHITE, TB_BLUE);
    draw_key(K_l, TB_WHITE, TB_BLUE);
    draw_key(K_SEMICOLON, TB_WHITE, TB_BLUE);
    draw_key(K_QUOTE, TB_WHITE, TB_BLUE);
    draw_key(K_K_4, TB_WHITE, TB_BLUE);
    draw_key(K_K_5, TB_WHITE, TB_BLUE);
    draw_key(K_K_6, TB_WHITE, TB_BLUE);

    draw_key(K_LSHIFT, TB_WHITE, TB_BLUE);
    draw_key(K_z, TB_WHITE, TB_BLUE);
    draw_key(K_x, TB_WHITE, TB_BLUE);
    draw_key(K_c, TB_WHITE, TB_BLUE);
    draw_key(K_v, TB_WHITE, TB_BLUE);
    draw_key(K_b, TB_WHITE, TB_BLUE);
    draw_key(K_n, TB_WHITE, TB_BLUE);
    draw_key(K_m, TB_WHITE, TB_BLUE);
    draw_key(K_COMMA, TB_WHITE, TB_BLUE);
    draw_key(K_PERIOD, TB_WHITE, TB_BLUE);
    draw_key(K_SLASH, TB_WHITE, TB_BLUE);
    draw_key(K_RSHIFT, TB_WHITE, TB_BLUE);
    draw_key(K_ARROW_UP, TB_WHITE, TB_BLUE);
    draw_key(K_K_1, TB_WHITE, TB_BLUE);
    draw_key(K_K_2, TB_WHITE, TB_BLUE);
    draw_key(K_K_3, TB_WHITE, TB_BLUE);
    draw_key(K_K_ENTER, TB_WHITE, TB_BLUE);

    draw_key(K_LCTRL, TB_WHITE, TB_BLUE);
    draw_key(K_LWIN, TB_WHITE, TB_BLUE);
    draw_key(K_LALT, TB_WHITE, TB_BLUE);
    draw_key(K_SPACE, TB_WHITE, TB_BLUE);
    draw_key(K_RCTRL, TB_WHITE, TB_BLUE);
    draw_key(K_RPROP, TB_WHITE, TB_BLUE);
    draw_key(K_RWIN, TB_WHITE, TB_BLUE);
    draw_key(K_RALT, TB_WHITE, TB_BLUE);
    draw_key(K_ARROW_LEFT, TB_WHITE, TB_BLUE);
    draw_key(K_ARROW_DOWN, TB_WHITE, TB_BLUE);
    draw_key(K_ARROW_RIGHT, TB_WHITE, TB_BLUE);
    draw_key(K_K_0, TB_WHITE, TB_BLUE);
    draw_key(K_K_PERIOD, TB_WHITE, TB_BLUE);

    printf_tb(33, 1, TB_MAGENTA | TB_BOLD, TB_DEFAULT, "Keyboard demo!");
    printf_tb(21, 2, TB_MAGENTA, TB_DEFAULT, "(press CTRL+X and then CTRL+Q to exit)");
    printf_tb(15, 3, TB_MAGENTA, TB_DEFAULT, "(press CTRL+X and then CTRL+C to change input mode)");

    int inputmode = tb_select_input_mode(0);
    char inputmode_str[64];

    if (inputmode & TB_INPUT_ESC)
        sprintf(inputmode_str, "TB_INPUT_ESC");
    if (inputmode & TB_INPUT_ALT)
        sprintf(inputmode_str, "TB_INPUT_ALT");

    if (inputmode & TB_INPUT_MOUSE)
        sprintf(inputmode_str, "%s | TB_INPUT_MOUSE", inputmode_str);

    printf_tb(3, 18, TB_WHITE, TB_DEFAULT, "Input mode: %s", inputmode_str);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
xorl %r8d, %r8d
movl $0x250c, %edx           # imm = 0x250C
movl $0x8, %ecx
movl %r8d, %edi
movl %r8d, %esi
callq 0x7880
movl $0x4f, %edi
xorl %r8d, %r8d
movl $0x2510, %edx           # imm = 0x2510
movl $0x8, %ecx
movl %r8d, %esi
callq 0x7880
xorl %r8d, %r8d
movl $0x17, %esi
movl $0x2514, %edx           # imm = 0x2514
movl $0x8, %ecx
movl %r8d, %edi
callq 0x7880
movl $0x4f, %edi
movl $0x17, %esi
movl $0x2518, %edx           # imm = 0x2518
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl $0x1, -0x4(%rbp)
cmpl $0x4f, -0x4(%rbp)
jge 0x562e
movl -0x4(%rbp), %edi
xorl %r8d, %r8d
movl $0x2500, %edx           # imm = 0x2500
movl $0x8, %ecx
movl %r8d, %esi
callq 0x7880
movl -0x4(%rbp), %edi
movl $0x17, %esi
movl $0x2500, %edx           # imm = 0x2500
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl -0x4(%rbp), %edi
movl $0x11, %esi
movl $0x2500, %edx           # imm = 0x2500
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl -0x4(%rbp), %edi
movl $0x4, %esi
movl $0x2500, %edx           # imm = 0x2500
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x55b7
movl $0x1, -0x4(%rbp)
cmpl $0x17, -0x4(%rbp)
jge 0x5678
movl -0x4(%rbp), %esi
xorl %r8d, %r8d
movl $0x2502, %edx           # imm = 0x2502
movl $0x8, %ecx
movl %r8d, %edi
callq 0x7880
movl -0x4(%rbp), %esi
movl $0x4f, %edi
movl $0x2502, %edx           # imm = 0x2502
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x5635
xorl %r8d, %r8d
movl $0x11, %esi
movl $0x251c, %edx           # imm = 0x251C
movl $0x8, %ecx
movl %r8d, %edi
callq 0x7880
movl $0x4f, %edi
movl $0x11, %esi
movl $0x2524, %edx           # imm = 0x2524
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
xorl %r8d, %r8d
movl $0x4, %esi
movl $0x251c, %edx           # imm = 0x251C
movl $0x8, %ecx
movl %r8d, %edi
callq 0x7880
movl $0x4f, %edi
movl $0x4, %esi
movl $0x2524, %edx           # imm = 0x2524
movl $0x8, %ecx
xorl %r8d, %r8d
callq 0x7880
movl $0x5, -0x4(%rbp)
cmpl $0x11, -0x4(%rbp)
jge 0x5732
movl -0x4(%rbp), %esi
movl $0x1, %edi
movl $0x2588, %edx           # imm = 0x2588
movl $0x4, %r8d
movl %r8d, %ecx
callq 0x7880
movl -0x4(%rbp), %esi
movl $0x4e, %edi
movl $0x2588, %edx           # imm = 0x2588
movl $0x4, %r8d
movl %r8d, %ecx
callq 0x7880
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x56eb
leaq 0x7a17(%rip), %rdi      # 0xd150
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a21(%rip), %rdi      # 0xd170
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a2b(%rip), %rdi      # 0xd190
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a35(%rip), %rdi      # 0xd1b0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a3f(%rip), %rdi      # 0xd1d0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a49(%rip), %rdi      # 0xd1f0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a53(%rip), %rdi      # 0xd210
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a5d(%rip), %rdi      # 0xd230
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a67(%rip), %rdi      # 0xd250
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a71(%rip), %rdi      # 0xd270
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a7b(%rip), %rdi      # 0xd290
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a85(%rip), %rdi      # 0xd2b0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a8f(%rip), %rdi      # 0xd2d0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7a99(%rip), %rdi      # 0xd2f0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aa3(%rip), %rdi      # 0xd310
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aad(%rip), %rdi      # 0xd330
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ab7(%rip), %rdi      # 0xd350
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ab1(%rip), %rdi      # 0xd360
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aab(%rip), %rdi      # 0xd370
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aa5(%rip), %rdi      # 0xd380
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aaf(%rip), %rdi      # 0xd3a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ab9(%rip), %rdi      # 0xd3c0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ac3(%rip), %rdi      # 0xd3e0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7acd(%rip), %rdi      # 0xd400
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ad7(%rip), %rdi      # 0xd420
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ae1(%rip), %rdi      # 0xd440
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aeb(%rip), %rdi      # 0xd460
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7af5(%rip), %rdi      # 0xd480
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7aff(%rip), %rdi      # 0xd4a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b09(%rip), %rdi      # 0xd4c0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b13(%rip), %rdi      # 0xd4e0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b1d(%rip), %rdi      # 0xd500
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b27(%rip), %rdi      # 0xd520
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b31(%rip), %rdi      # 0xd540
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b3b(%rip), %rdi      # 0xd560
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b45(%rip), %rdi      # 0xd580
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b4f(%rip), %rdi      # 0xd5a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b59(%rip), %rdi      # 0xd5c0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b53(%rip), %rdi      # 0xd5d0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b4d(%rip), %rdi      # 0xd5e0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b47(%rip), %rdi      # 0xd5f0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b41(%rip), %rdi      # 0xd600
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b4b(%rip), %rdi      # 0xd620
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b55(%rip), %rdi      # 0xd640
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b5f(%rip), %rdi      # 0xd660
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b69(%rip), %rdi      # 0xd680
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b73(%rip), %rdi      # 0xd6a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b7d(%rip), %rdi      # 0xd6c0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b87(%rip), %rdi      # 0xd6e0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b91(%rip), %rdi      # 0xd700
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7b9b(%rip), %rdi      # 0xd720
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ba5(%rip), %rdi      # 0xd740
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7baf(%rip), %rdi      # 0xd760
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7bb9(%rip), %rdi      # 0xd780
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7bc3(%rip), %rdi      # 0xd7a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c2d(%rip), %rdi      # 0xd820
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c37(%rip), %rdi      # 0xd840
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c41(%rip), %rdi      # 0xd860
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c4b(%rip), %rdi      # 0xd880
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c45(%rip), %rdi      # 0xd890
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c3f(%rip), %rdi      # 0xd8a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c39(%rip), %rdi      # 0xd8b0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c43(%rip), %rdi      # 0xd8d0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c5d(%rip), %rdi      # 0xd900
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c67(%rip), %rdi      # 0xd920
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c71(%rip), %rdi      # 0xd940
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c7b(%rip), %rdi      # 0xd960
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c85(%rip), %rdi      # 0xd980
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c8f(%rip), %rdi      # 0xd9a0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7c99(%rip), %rdi      # 0xd9c0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ca3(%rip), %rdi      # 0xd9e0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cad(%rip), %rdi      # 0xda00
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cb7(%rip), %rdi      # 0xda20
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cc1(%rip), %rdi      # 0xda40
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ccb(%rip), %rdi      # 0xda60
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cc5(%rip), %rdi      # 0xda70
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cbf(%rip), %rdi      # 0xda80
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cb9(%rip), %rdi      # 0xda90
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cd3(%rip), %rdi      # 0xdac0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cdd(%rip), %rdi      # 0xdae0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ce7(%rip), %rdi      # 0xdb00
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cf1(%rip), %rdi      # 0xdb20
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7cfb(%rip), %rdi      # 0xdb40
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d05(%rip), %rdi      # 0xdb60
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d0f(%rip), %rdi      # 0xdb80
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d19(%rip), %rdi      # 0xdba0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d23(%rip), %rdi      # 0xdbc0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d2d(%rip), %rdi      # 0xdbe0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d37(%rip), %rdi      # 0xdc00
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d51(%rip), %rdi      # 0xdc30
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d5b(%rip), %rdi      # 0xdc50
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d55(%rip), %rdi      # 0xdc60
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d4f(%rip), %rdi      # 0xdc70
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d49(%rip), %rdi      # 0xdc80
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d53(%rip), %rdi      # 0xdca0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d6d(%rip), %rdi      # 0xdcd0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d77(%rip), %rdi      # 0xdcf0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7d81(%rip), %rdi      # 0xdd10
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e5b(%rip), %rdi      # 0xde00
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e15(%rip), %rdi      # 0xddd0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7ddf(%rip), %rdi      # 0xddb0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7da9(%rip), %rdi      # 0xdd90
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e33(%rip), %rdi      # 0xde30
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e3d(%rip), %rdi      # 0xde50
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e47(%rip), %rdi      # 0xde70
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e51(%rip), %rdi      # 0xde90
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
leaq 0x7e6b(%rip), %rdi      # 0xdec0
movl $0x8, %esi
movl $0x5, %edx
callq 0x54d0
movl $0x21, %edi
movl $0x1, %esi
movl $0x106, %edx            # imm = 0x106
xorl %ecx, %ecx
leaq 0x3fa0(%rip), %r8       # 0xa01c
movb $0x0, %al
callq 0x53f0
movl $0x15, %edi
movl $0x2, %esi
movl $0x6, %edx
xorl %ecx, %ecx
leaq 0x3f90(%rip), %r8       # 0xa02b
movb $0x0, %al
callq 0x53f0
movl $0xf, %edi
movl $0x3, %esi
movl $0x6, %edx
xorl %ecx, %ecx
leaq 0x3f98(%rip), %r8       # 0xa052
movb $0x0, %al
callq 0x53f0
xorl %edi, %edi
callq 0x7e90
movl %eax, -0x8(%rbp)
movl -0x8(%rbp), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x60e8
leaq -0x50(%rbp), %rdi
leaq 0x3fa5(%rip), %rsi      # 0xa086
movb $0x0, %al
callq 0x5250
movl -0x8(%rbp), %eax
andl $0x2, %eax
cmpl $0x0, %eax
je 0x6105
leaq -0x50(%rbp), %rdi
leaq 0x3f95(%rip), %rsi      # 0xa093
movb $0x0, %al
callq 0x5250
movl -0x8(%rbp), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x6126
leaq -0x50(%rbp), %rdi
leaq -0x50(%rbp), %rdx
leaq 0x3f81(%rip), %rsi      # 0xa0a0
movb $0x0, %al
callq 0x5250
leaq -0x50(%rbp), %r9
movl $0x3, %edi
movl $0x12, %esi
movl $0x8, %edx
xorl %ecx, %ecx
leaq 0x3f72(%rip), %r8       # 0xa0b4
movb $0x0, %al
callq 0x53f0
addq $0x50, %rsp
popq %rbp
retq
nop