// File: /workspace/github_c_makefile_star2_O0/cinemast[P]sudoku/sudoku.c
// Function: draw_screen
static
void
draw_screen (void)
{
    int i;

    wclear(stdscr);
    attron(A_BOLD);
    mvaddstr(SUDOKU_LINE, SUDOKU_POS, "Su-Do-Ku!");
    attroff(A_BOLD);

    for (i = 0; i < 3; ++i) {
        mvaddstr(TOP + 0 + 4 * i, LEFT, "+-------+-------+-------+");
        mvaddstr(TOP + 1 + 4 * i, LEFT, "|       |       |       |");
        mvaddstr(TOP + 2 + 4 * i, LEFT, "|       |       |       |");
        mvaddstr(TOP + 3 + 4 * i, LEFT, "|       |       |       |");
    }
    mvaddstr(TOP + 4 * 3, LEFT, "+-------+-------+-------+");

    mvaddstr(TOP + 2, LEFT_LEFT + 1, "Rules:");
    mvaddstr(TOP + 3, LEFT_LEFT + 2, "Fill the grid so that");
    mvaddstr(TOP + 4, LEFT_LEFT + 2, "every column, row and");
    mvaddstr(TOP + 5, LEFT_LEFT + 2, "3x3 box contains each");
    mvaddstr(TOP + 6, LEFT_LEFT + 2, "of the digits 1 to 9.");
    i = TOP + 7;
    if (0 == opt_restrict) {
        mvaddstr(++i, LEFT_LEFT + 1, "File:");
        mvaddstr(++i, LEFT_LEFT + 2, "s   save board");
        mvaddstr(++i, LEFT_LEFT + 2, "w   write template");
        mvaddstr(++i, LEFT_LEFT + 2, "o   open board");
        mvaddstr(++i, LEFT_LEFT + 2, "t   set board title");
    }

/*    mvaddstr(TOP - 1, RIGHT + 4, "Keys:"); */
    mvaddstr(TOP + 0, RIGHT + 8, "k");
    mvaddstr(TOP + 1, RIGHT + 4, "  h   l move cursor");
    mvaddstr(TOP + 2, RIGHT + 8, "j");
    mvaddstr(TOP + 3, RIGHT + 7, "1-9  place digit");
    mvaddstr(TOP + 4, RIGHT + 7, "0 .  clear digit");
    mvaddstr(TOP + 5, RIGHT + 8, "c   clear board");
    mvaddstr(TOP + 6, RIGHT + 8, "d   redraw the board");
    mvaddstr(TOP + 7, RIGHT + 8, "f   fix squares");
    mvaddstr(TOP + 8, RIGHT + 8, "n   new board");
    mvaddstr(TOP + 9, RIGHT + 8, "q   quit game");
    i = TOP + 9;
    mvaddstr(++i, RIGHT + 8, "r   restart");
    mvaddstr(++i, RIGHT + 8, "u   undo last move");
    mvaddstr(++i, RIGHT + 8, "v   solve");
    mvaddstr(++i, RIGHT + 8, "?   request hint");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq 0xc7d9(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
callq 0x20a0
movq 0xc7ca(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x200000, %esi         # imm = 0x200000
xorl %eax, %eax
movl %eax, %edx
callq 0x21b0
movq 0xc7b2(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x2, %esi
movl $0x23, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x483f
jmp 0x485a
movq 0xc792(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x90f0(%rip), %rsi      # 0xd940
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc777(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x200000, %esi         # imm = 0x200000
xorl %eax, %eax
movl %eax, %edx
callq 0x2340
movl $0x0, -0x4(%rbp)
cmpl $0x3, -0x4(%rbp)
jge 0x498d
movq 0xc74e(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
shll $0x2, %esi
addl $0x6, %esi
movl $0x1b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x48a7
jmp 0x48c2
movq 0xc72a(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x9092(%rip), %rsi      # 0xd94a
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc70f(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
shll $0x2, %esi
addl $0x7, %esi
movl $0x1b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x48e6
jmp 0x4901
movq 0xc6eb(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x906d(%rip), %rsi      # 0xd964
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc6d0(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
shll $0x2, %esi
addl $0x8, %esi
movl $0x1b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4925
jmp 0x4940
movq 0xc6ac(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x902e(%rip), %rsi      # 0xd964
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc691(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
shll $0x2, %esi
addl $0x9, %esi
movl $0x1b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4964
jmp 0x497f
movq 0xc66d(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8fef(%rip), %rsi      # 0xd964
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x4879
movq 0xc644(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x12, %esi
movl $0x1b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x49ad
jmp 0x49c8
movq 0xc624(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8f8c(%rip), %rsi      # 0xd94a
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc609(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x8, %esi
movl $0x1, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x49e8
jmp 0x4a03
movq 0xc5e9(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8f85(%rip), %rsi      # 0xd97e
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc5ce(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x9, %esi
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4a23
jmp 0x4a3e
movq 0xc5ae(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8f51(%rip), %rsi      # 0xd985
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc593(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xa, %esi
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4a5e
jmp 0x4a79
movq 0xc573(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8f2c(%rip), %rsi      # 0xd99b
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc558(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xb, %esi
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4a99
jmp 0x4ab4
movq 0xc538(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8f07(%rip), %rsi      # 0xd9b1
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc51d(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xc, %esi
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4ad4
jmp 0x4aef
movq 0xc4fd(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8ee2(%rip), %rsi      # 0xd9c7
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movl $0xd, -0x4(%rbp)
xorl %eax, %eax
cmpl 0xd8ee(%rip), %eax      # 0x123ec
jne 0x4c3f
movq 0xc4cd(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x1, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4b28
jmp 0x4b43
movq 0xc4a9(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8ea4(%rip), %rsi      # 0xd9dd
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc48e(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4b67
jmp 0x4b82
movq 0xc46a(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8e6b(%rip), %rsi      # 0xd9e3
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc44f(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4ba6
jmp 0x4bc1
movq 0xc42b(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8e3b(%rip), %rsi      # 0xd9f2
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc410(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4be5
jmp 0x4c00
movq 0xc3ec(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8e0f(%rip), %rsi      # 0xda05
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc3d1(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x2, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4c24
jmp 0x4c3f
movq 0xc3ad(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8ddf(%rip), %rsi      # 0xda14
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc392(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x6, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4c5f
jmp 0x4c7a
movq 0xc372(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8db8(%rip), %rsi      # 0xda28
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc357(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x7, %esi
movl $0x37, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4c9a
jmp 0x4cb5
movq 0xc337(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8d7f(%rip), %rsi      # 0xda2a
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc31c(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x8, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4cd5
jmp 0x4cf0
movq 0xc2fc(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8d58(%rip), %rsi      # 0xda3e
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc2e1(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0x9, %esi
movl $0x3a, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4d10
jmp 0x4d2b
movq 0xc2c1(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8d1f(%rip), %rsi      # 0xda40
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc2a6(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xa, %esi
movl $0x3a, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4d4b
jmp 0x4d66
movq 0xc286(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8cf5(%rip), %rsi      # 0xda51
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc26b(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xb, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4d86
jmp 0x4da1
movq 0xc24b(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8ccb(%rip), %rsi      # 0xda62
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc230(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xc, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4dc1
jmp 0x4ddc
movq 0xc210(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8ca0(%rip), %rsi      # 0xda72
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc1f5(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xd, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4dfc
jmp 0x4e17
movq 0xc1d5(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8c7a(%rip), %rsi      # 0xda87
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc1ba(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xe, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4e37
jmp 0x4e52
movq 0xc19a(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8c4f(%rip), %rsi      # 0xda97
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc17f(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl $0xf, %esi
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4e72
jmp 0x4e8d
movq 0xc15f(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8c22(%rip), %rsi      # 0xdaa5
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movl $0xf, -0x4(%rbp)
movq 0xc13d(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4eb8
jmp 0x4ed3
movq 0xc119(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8bea(%rip), %rsi      # 0xdab3
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc0fe(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4ef7
jmp 0x4f12
movq 0xc0da(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8bb7(%rip), %rsi      # 0xdabf
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc0bf(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4f36
jmp 0x4f51
movq 0xc09b(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8b8b(%rip), %rsi      # 0xdad2
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
movq 0xc080(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
movl -0x4(%rbp), %esi
addl $0x1, %esi
movl %esi, -0x4(%rbp)
movl $0x3b, %edx
callq 0x22b0
cmpl $-0x1, %eax
jne 0x4f75
jmp 0x4f90
movq 0xc05c(%rip), %rax      # 0x10fd8
movq (%rax), %rdi
leaq 0x8b56(%rip), %rsi      # 0xdadc
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x2330
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)