// File: /workspace/github_cpp_makefile_star2_O2/eugene87222[P]Game-of-Life/gol.cpp
// Function: draw(int, int, char*, int, int)
void draw(int height, int width, char *status_background, int gen, int ms) {
	int not_first;
    for(int i=0; i<=height+1; i++) {
		for(int j=0; j<=width+1; j++) {
            not_first = (int)(j>0);
            if(i==0 && j==0) mvaddstr(i, j, "╔");
            else if(i==height+1 && j==0) mvaddstr(i, j, "╚");
            else if(i==0 && j==width+1) mvaddstr(i, j*2-not_first, "╗");
            else if(i==height+1 && j==width+1) mvaddstr(i, j*2-not_first, "╝");
            else if(i==0 || i==height+1) mvaddstr(i, j*2-not_first, "══");
            else if(j==0 || j==width+1) mvaddstr(i, j*2-not_first, "║");
            else if(board[i][j] == 0) mvaddstr(i, j*2-not_first, "  ");
            else mvaddstr(i, j*2-not_first, "██");
		}
    }
	status(status_background, gen, ms);
	refresh();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movl %r8d, 0x14(%rsp)
movl %ecx, 0x10(%rsp)
movq %rdx, 0x20(%rsp)
incl %edi
leal 0x1(%rsi), %eax
movq %rax, 0x18(%rsp)
cltq
movq %rax, 0x30(%rsp)
movq %rdi, 0x8(%rsp)
movslq %edi, %rax
movq %rax, 0x28(%rsp)
leal 0x2(,%rsi,2), %eax
movl %eax, 0x4(%rsp)
xorl %r12d, %r12d
movq 0x46cd(%rip), %r14      # 0x6fd0
cmpq 0x28(%rsp), %r12
jg 0x2a77
testq %r12, %r12
sete %al
movq 0x8(%rsp), %rcx
cmpq %rcx, %r12
sete %dl
orb %al, %dl
movb %dl, 0x3(%rsp)
xorl %ebp, %ebp
movq %r12, %r15
xorq %rcx, %r15
xorl %r13d, %r13d
cmpq 0x30(%rsp), %r13
jg 0x2a6f
xorl %eax, %eax
testq %r13, %r13
setne %cl
movl %r13d, %edx
orl %r12d, %edx
je 0x296e
movq %r15, %rdx
orq %r13, %rdx
jne 0x2986
movq (%r14), %rdi
movq 0x8(%rsp), %rsi
xorl %edx, %edx
callq 0x20d0
leaq 0x1783(%rip), %rbx      # 0x40ec
jmp 0x2a51
movq (%r14), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x20d0
leaq 0x1767(%rip), %rbx      # 0x40e8
jmp 0x2a51
movb %cl, %al
movq 0x18(%rsp), %rcx
xorq %r13, %rcx
movq %r12, %rdx
orq %rcx, %rdx
jne 0x29b4
movq (%r14), %rdi
movl 0x4(%rsp), %edx
subl %eax, %edx
xorl %esi, %esi
callq 0x20d0
leaq 0x1741(%rip), %rbx      # 0x40f0
jmp 0x2a51
orq %r15, %rcx
jne 0x29d5
movq (%r14), %rdi
movl 0x4(%rsp), %edx
subl %eax, %edx
movq 0x8(%rsp), %rsi
callq 0x20d0
leaq 0x1721(%rip), %rbx      # 0x40f4
jmp 0x2a51
cmpb $0x0, 0x3(%rsp)
je 0x29f4
movq (%r14), %rdi
movl %ebp, %edx
subl %eax, %edx
movl %r12d, %esi
callq 0x20d0
leaq 0x174c(%rip), %rbx      # 0x413e
jmp 0x2a51
cmpq %r13, 0x18(%rsp)
setne %cl
testq %r13, %r13
setne %dl
testb %cl, %dl
jne 0x2a1e
movq (%r14), %rdi
movl %ebp, %edx
subl %eax, %edx
movl %r12d, %esi
callq 0x20d0
leaq 0x16dc(%rip), %rbx      # 0x40f8
jmp 0x2a51
movq 0x474b(%rip), %rcx      # 0x7170
imulq $0x18, %r12, %rdx
movq (%rcx,%rdx), %rcx
cmpl $0x0, (%rcx,%r13,4)
leaq 0x16c3(%rip), %rbx      # 0x40fc
je 0x2a42
leaq 0x16bd(%rip), %rbx      # 0x40ff
movl %ebp, %edx
subl %eax, %edx
movq (%r14), %rdi
movl %r12d, %esi
callq 0x20d0
cmpl $-0x1, %eax
je 0x2a64
movq (%r14), %rdi
movq %rbx, %rsi
pushq $-0x1
popq %rdx
callq 0x2240
incq %r13
addl $0x2, %ebp
jmp 0x2930
incq %r12
jmp 0x2903
movq 0x20(%rsp), %rdi
movl 0x10(%rsp), %esi
movl 0x14(%rsp), %edx
callq 0x286e
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2030