// File: /workspace/github_cpp_makefile_star2_O2/EstherJin[P]TetrisRemake/graphicsDisplay.cc
// Function: GraphicsDisplay::printNext(char)
void GraphicsDisplay::printNext (char next) {
    if (next != ' ') {
        switch (next) {
            case 'T':
                window->fillRectangle(xmar,712, cellLength, cellLength, 2);
                window->fillRectangle(xmar+cellLength,712, cellLength, cellLength, 2);
                window->fillRectangle(xmar+2*cellLength,712, cellLength, cellLength, 2);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 2);
                break;
            case 'L':
                window->fillRectangle(xmar+2*cellLength,712, cellLength, cellLength, 3);
                window->fillRectangle(xmar,712+cellLength, cellLength, cellLength, 3);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 3);
                window->fillRectangle(xmar+2*cellLength,712+cellLength, cellLength, cellLength, 3);
                break;
            case 'Z':
                window->fillRectangle(xmar,712, cellLength, cellLength, 4);
                window->fillRectangle(xmar+cellLength,712, cellLength, cellLength, 4);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 4);
                window->fillRectangle(xmar+2*cellLength,712+cellLength, cellLength, cellLength, 4);
                break;
            case 'O':
                window->fillRectangle(xmar,712, cellLength, cellLength, 5);
                window->fillRectangle(xmar+cellLength,712,cellLength, cellLength, 5);
                window->fillRectangle(xmar,712+cellLength, cellLength, cellLength, 5);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 5);
                break;
            case 'S':
                window->fillRectangle(xmar+cellLength,712, cellLength, cellLength, 6);
                window->fillRectangle(xmar+2*cellLength,712, cellLength, cellLength, 6);
                window->fillRectangle(xmar,712+cellLength, cellLength, cellLength, 6);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 6);
                break;
            case 'J':
                window->fillRectangle(xmar,712, cellLength, cellLength, 7);
                window->fillRectangle(xmar,712+cellLength, cellLength, cellLength, 7);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 7);
                window->fillRectangle(xmar+2*cellLength,712+cellLength, cellLength, cellLength, 7);
                break;
            case 'I':
                window->fillRectangle(xmar,712+cellLength, cellLength, cellLength, 8);
                window->fillRectangle(xmar+cellLength,712+cellLength, cellLength, cellLength, 8);
                window->fillRectangle(xmar+2*cellLength,712+cellLength, cellLength, cellLength, 8);
                window->fillRectangle(xmar+3*cellLength,712+cellLength, cellLength, cellLength, 8);
                break;
        }
    } else {
        window->fillRectangle(xmar, 712, 405, 150, 0);
    }
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movq %rdi, %rbx
leal -0x49(%rsi), %eax
cmpl $0xb, %eax
ja 0x10457
leaq 0x14a6(%rip), %rcx      # 0x11890
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
movl $0x2c8, %r14d           # imm = 0x2C8
leal (%rcx,%r14), %edx
pushq $0x8
popq %rbp
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
leal (%rcx,%r14), %edx
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx), %esi
addl 0x14(%rbx), %esi
leal (%rcx,%r14), %edx
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx,2), %esi
jmp 0x105b1
cmpl $0x20, %esi
je 0x10637
cmpl $0x5a, %esi
jne 0x1049e
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
movl $0x2c8, %r14d           # imm = 0x2C8
pushq $0x4
popq %rbp
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
movl $0x2c8, %edx            # imm = 0x2C8
jmp 0x10585
popq %rbx
popq %r14
popq %rbp
retq
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
movl $0x2c8, %r14d           # imm = 0x2C8
pushq $0x5
popq %rbp
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
jmp 0x1051a
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
movl $0x2c8, %r14d           # imm = 0x2C8
pushq $0x7
jmp 0x10566
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
movl $0x2c8, %r14d           # imm = 0x2C8
pushq $0x6
popq %rbp
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx), %esi
addl 0x14(%rbx), %esi
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
leal (%rcx,%r14), %edx
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
jmp 0x105b8
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx), %esi
addl 0x14(%rbx), %esi
movl $0x2c8, %r14d           # imm = 0x2C8
pushq $0x3
popq %rbp
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
leal (%rcx,%r14), %edx
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
leal (%rcx,%r14), %edx
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx), %esi
addl 0x14(%rbx), %esi
movq 0x20(%rbx), %rdi
addl %ecx, %r14d
movl %r14d, %edx
movl %ecx, %r8d
movl %ebp, %r9d
popq %rbx
popq %r14
popq %rbp
jmp 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
pushq $0x2
popq %rbp
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
leal (%rcx,%rcx), %esi
addl 0x14(%rbx), %esi
movl $0x2c8, %edx            # imm = 0x2C8
movl %ecx, %r8d
movl %ebp, %r9d
callq 0x108f0
movq 0x20(%rbx), %rdi
movl 0x8(%rbx), %ecx
movl 0x14(%rbx), %esi
addl %ecx, %esi
leal 0x2c8(%rcx), %edx
jmp 0x105be
movq 0x20(%rbx), %rdi
movl 0x14(%rbx), %esi
movl $0x2c8, %edx            # imm = 0x2C8
movl $0x195, %ecx            # imm = 0x195
movl $0x96, %r8d
xorl %r9d, %r9d
jmp 0x105c4