// File: /workspace/github_c_makefile_star2_O2/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
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
pushq $0x8
popq %rbx
xorl %edi, %edi
xorl %esi, %esi
movl $0x250c, %edx           # imm = 0x250C
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x4f
popq %r14
movl %r14d, %edi
xorl %esi, %esi
movl $0x2510, %edx           # imm = 0x2510
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x17
popq %rbp
xorl %edi, %edi
movl %ebp, %esi
movl $0x2514, %edx           # imm = 0x2514
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %ebp, %esi
movl $0x2518, %edx           # imm = 0x2518
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x1
popq %r14
pushq $0x11
popq %r15
pushq $0x4
popq %r12
cmpl $0x4f, %r14d
je 0x5593
movl %r14d, %edi
xorl %esi, %esi
movl $0x2500, %edx           # imm = 0x2500
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %ebp, %esi
movl $0x2500, %edx           # imm = 0x2500
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %r15d, %esi
movl $0x2500, %edx           # imm = 0x2500
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %r12d, %esi
movl $0x2500, %edx           # imm = 0x2500
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x70c8
incl %r14d
jmp 0x5536
pushq $0x1
popq %rbx
pushq $0x8
popq %rbp
pushq $0x4f
popq %r14
cmpl $0x17, %ebx
je 0x55cd
xorl %edi, %edi
movl %ebx, %esi
movl $0x2502, %edx           # imm = 0x2502
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %ebx, %esi
movl $0x2502, %edx           # imm = 0x2502
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
incl %ebx
jmp 0x559d
pushq $0x11
popq %rbx
pushq $0x8
popq %rbp
xorl %edi, %edi
movl %ebx, %esi
movl $0x251c, %edx           # imm = 0x251C
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x4f
popq %r14
movl %r14d, %edi
movl %ebx, %esi
movl $0x2524, %edx           # imm = 0x2524
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x4
popq %rbx
xorl %edi, %edi
movl %ebx, %esi
movl $0x251c, %edx           # imm = 0x251C
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
movl %r14d, %edi
movl %ebx, %esi
movl $0x2524, %edx           # imm = 0x2524
movl %ebp, %ecx
xorl %r8d, %r8d
callq 0x70c8
pushq $0x5
popq %rbp
pushq $0x1
popq %r14
pushq $0x4e
popq %r15
cmpl $0x11, %ebp
je 0x5664
movl %r14d, %edi
movl %ebp, %esi
movl $0x2588, %edx           # imm = 0x2588
movl %ebx, %ecx
movl %ebx, %r8d
callq 0x70c8
movl %r15d, %edi
movl %ebp, %esi
movl $0x2588, %edx           # imm = 0x2588
movl %ebx, %ecx
movl %ebx, %r8d
callq 0x70c8
incl %ebp
jmp 0x5633
leaq 0x5ae5(%rip), %rdi      # 0xb150
pushq $0x8
popq %rbx
pushq $0x5
popq %rbp
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5aef(%rip), %rdi      # 0xb170
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5aff(%rip), %rdi      # 0xb190
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b0f(%rip), %rdi      # 0xb1b0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b1f(%rip), %rdi      # 0xb1d0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b2f(%rip), %rdi      # 0xb1f0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b3f(%rip), %rdi      # 0xb210
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b4f(%rip), %rdi      # 0xb230
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b5f(%rip), %rdi      # 0xb250
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b6f(%rip), %rdi      # 0xb270
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b7f(%rip), %rdi      # 0xb290
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b8f(%rip), %rdi      # 0xb2b0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5b9f(%rip), %rdi      # 0xb2d0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5baf(%rip), %rdi      # 0xb2f0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bbf(%rip), %rdi      # 0xb310
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bcf(%rip), %rdi      # 0xb330
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bdf(%rip), %rdi      # 0xb350
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bdf(%rip), %rdi      # 0xb360
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bdf(%rip), %rdi      # 0xb370
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bdf(%rip), %rdi      # 0xb380
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bef(%rip), %rdi      # 0xb3a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5bff(%rip), %rdi      # 0xb3c0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c0f(%rip), %rdi      # 0xb3e0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c1f(%rip), %rdi      # 0xb400
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c2f(%rip), %rdi      # 0xb420
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c3f(%rip), %rdi      # 0xb440
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c4f(%rip), %rdi      # 0xb460
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c5f(%rip), %rdi      # 0xb480
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c6f(%rip), %rdi      # 0xb4a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c7f(%rip), %rdi      # 0xb4c0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c8f(%rip), %rdi      # 0xb4e0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5c9f(%rip), %rdi      # 0xb500
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5caf(%rip), %rdi      # 0xb520
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cbf(%rip), %rdi      # 0xb540
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5ccf(%rip), %rdi      # 0xb560
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cdf(%rip), %rdi      # 0xb580
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cef(%rip), %rdi      # 0xb5a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cff(%rip), %rdi      # 0xb5c0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cff(%rip), %rdi      # 0xb5d0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cff(%rip), %rdi      # 0xb5e0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cff(%rip), %rdi      # 0xb5f0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5cff(%rip), %rdi      # 0xb600
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d0f(%rip), %rdi      # 0xb620
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d1f(%rip), %rdi      # 0xb640
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d2f(%rip), %rdi      # 0xb660
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d3f(%rip), %rdi      # 0xb680
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d4f(%rip), %rdi      # 0xb6a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d5f(%rip), %rdi      # 0xb6c0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d6f(%rip), %rdi      # 0xb6e0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d7f(%rip), %rdi      # 0xb700
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d8f(%rip), %rdi      # 0xb720
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5d9f(%rip), %rdi      # 0xb740
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5daf(%rip), %rdi      # 0xb760
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5dbf(%rip), %rdi      # 0xb780
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5dcf(%rip), %rdi      # 0xb7a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e3f(%rip), %rdi      # 0xb820
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e4f(%rip), %rdi      # 0xb840
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e5f(%rip), %rdi      # 0xb860
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e6f(%rip), %rdi      # 0xb880
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e6f(%rip), %rdi      # 0xb890
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e6f(%rip), %rdi      # 0xb8a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e6f(%rip), %rdi      # 0xb8b0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e7f(%rip), %rdi      # 0xb8d0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5e9f(%rip), %rdi      # 0xb900
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5eaf(%rip), %rdi      # 0xb920
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5ebf(%rip), %rdi      # 0xb940
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5ecf(%rip), %rdi      # 0xb960
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5edf(%rip), %rdi      # 0xb980
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5eef(%rip), %rdi      # 0xb9a0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5eff(%rip), %rdi      # 0xb9c0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f0f(%rip), %rdi      # 0xb9e0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f1f(%rip), %rdi      # 0xba00
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f2f(%rip), %rdi      # 0xba20
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f3f(%rip), %rdi      # 0xba40
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f4f(%rip), %rdi      # 0xba60
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f4f(%rip), %rdi      # 0xba70
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f4f(%rip), %rdi      # 0xba80
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f4f(%rip), %rdi      # 0xba90
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f6f(%rip), %rdi      # 0xbac0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f7f(%rip), %rdi      # 0xbae0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f8f(%rip), %rdi      # 0xbb00
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5f9f(%rip), %rdi      # 0xbb20
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5faf(%rip), %rdi      # 0xbb40
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5fbf(%rip), %rdi      # 0xbb60
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5fcf(%rip), %rdi      # 0xbb80
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5fdf(%rip), %rdi      # 0xbba0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5fef(%rip), %rdi      # 0xbbc0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x5fff(%rip), %rdi      # 0xbbe0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x600f(%rip), %rdi      # 0xbc00
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x602f(%rip), %rdi      # 0xbc30
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x603f(%rip), %rdi      # 0xbc50
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x603f(%rip), %rdi      # 0xbc60
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x603f(%rip), %rdi      # 0xbc70
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x603f(%rip), %rdi      # 0xbc80
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x604f(%rip), %rdi      # 0xbca0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x606f(%rip), %rdi      # 0xbcd0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x607f(%rip), %rdi      # 0xbcf0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x608f(%rip), %rdi      # 0xbd10
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x616f(%rip), %rdi      # 0xbe00
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x612f(%rip), %rdi      # 0xbdd0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x60ff(%rip), %rdi      # 0xbdb0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x60cf(%rip), %rdi      # 0xbd90
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x615f(%rip), %rdi      # 0xbe30
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x616f(%rip), %rdi      # 0xbe50
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x617f(%rip), %rdi      # 0xbe70
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x618f(%rip), %rdi      # 0xbe90
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x61af(%rip), %rdi      # 0xbec0
movl %ebx, %esi
movl %ebp, %edx
callq 0x548f
leaq 0x22e3(%rip), %r8       # 0x8004
pushq $0x21
popq %rdi
pushq $0x1
popq %rsi
movl $0x106, %edx            # imm = 0x106
xorl %ecx, %ecx
xorl %eax, %eax
callq 0x53d7
leaq 0x22d7(%rip), %r8       # 0x8013
pushq $0x15
popq %rdi
pushq $0x2
popq %rsi
pushq $0x6
popq %rbx
movl %ebx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
callq 0x53d7
leaq 0x22e3(%rip), %r8       # 0x803a
pushq $0xf
popq %rdi
pushq $0x3
popq %rsi
movl %ebx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
callq 0x53d7
xorl %edi, %edi
callq 0x743b
movabsq $0x5455504e495f4254, %rcx # imm = 0x5455504E495F4254
testb $0x1, %al
je 0x5d90
movabsq $0x4353455f545550, %rdx # imm = 0x4353455F545550
movq %rdx, 0x5(%rsp)
movq %rcx, (%rsp)
testb $0x2, %al
je 0x5da7
movabsq $0x544c415f545550, %rdx # imm = 0x544C415F545550
movq %rdx, 0x5(%rsp)
movq %rcx, (%rsp)
testb $0x4, %al
je 0x5dbf
leaq 0x22d6(%rip), %rsi      # 0x8088
movq %rsp, %rdi
movq %rdi, %rdx
xorl %eax, %eax
callq 0x5250
leaq 0x22d6(%rip), %r8       # 0x809c
pushq $0x3
popq %rdi
pushq $0x12
popq %rsi
pushq $0x8
popq %rdx
movq %rsp, %r9
xorl %ecx, %ecx
xorl %eax, %eax
callq 0x53d7
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq