// File: smallHW89[P]gobang/GoBang_ChessBoard.cpp
// Function: ChessBoard::ShowChessBoard()
void ChessBoard::ShowChessBoard ()
{
    char  szTmp[1024];
    int   len =0;
    for(int i=1; i<=m_size ; i++ )
    {
        szTmp[len++]= ('0'+i);
        for(int j=1; j <=m_size; j++ ) 
        {
            char c;
            if( m_board[i][j] == Chess_White)
                c = 'O' ;
            else if( m_board[i][j] == Chess_Black)
                c = '#';
            else if(m_board[i][j]  == Chess_Empty)
                c = '_';
            else 
                c= '/';
            szTmp[len++] =    c;                 
            szTmp[len++] = ' '; 
        } 
        szTmp[len++] = '\n';
    }
    for(int i=0; i<m_size; i++) 
        szTmp[len++] = '0'+i;
    szTmp[len++] = '\n';
    szTmp[len++] = 0;
    printf("%s\n" , szTmp);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x430, %rsp            # imm = 0x430
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x430(%rbp)
movl $0x0, -0x414(%rbp)
movl $0x1, -0x418(%rbp)
movq -0x430(%rbp), %rcx
movl -0x418(%rbp), %eax
cmpl 0x194(%rcx), %eax
jg 0x157e
movl -0x418(%rbp), %eax
addl $0x30, %eax
movb %al, %cl
movl -0x414(%rbp), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, -0x414(%rbp)
cltq
movb %cl, -0x410(%rbp,%rax)
movl $0x1, -0x41c(%rbp)
movq -0x430(%rbp), %rcx
movl -0x41c(%rbp), %eax
cmpl 0x194(%rcx), %eax
jg 0x154f
movq -0x430(%rbp), %rax
addq $0x4, %rax
movslq -0x418(%rbp), %rcx
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movslq -0x41c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x77, %eax
jne 0x1491
movb $0x4f, -0x41d(%rbp)
jmp 0x1500
movq -0x430(%rbp), %rax
addq $0x4, %rax
movslq -0x418(%rbp), %rcx
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movslq -0x41c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x62, %eax
jne 0x14c3
movb $0x23, -0x41d(%rbp)
jmp 0x14fe
movq -0x430(%rbp), %rax
addq $0x4, %rax
movslq -0x418(%rbp), %rcx
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movslq -0x41c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x65, %eax
jne 0x14f5
movb $0x5f, -0x41d(%rbp)
jmp 0x14fc
movb $0x2f, -0x41d(%rbp)
jmp 0x14fe
jmp 0x1500
movb -0x41d(%rbp), %cl
movl -0x414(%rbp), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, -0x414(%rbp)
cltq
movb %cl, -0x410(%rbp,%rax)
movl -0x414(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0x414(%rbp)
cltq
movb $0x20, -0x410(%rbp,%rax)
movl -0x41c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x41c(%rbp)
jmp 0x1446
movl -0x414(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0x414(%rbp)
cltq
movb $0xa, -0x410(%rbp,%rax)
movl -0x418(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x418(%rbp)
jmp 0x13fe
movl $0x0, -0x424(%rbp)
movq -0x430(%rbp), %rcx
movl -0x424(%rbp), %eax
cmpl 0x194(%rcx), %eax
jge 0x15d3
movl -0x424(%rbp), %eax
addl $0x30, %eax
movb %al, %cl
movl -0x414(%rbp), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, -0x414(%rbp)
cltq
movb %cl, -0x410(%rbp,%rax)
movl -0x424(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x424(%rbp)
jmp 0x1588
movl -0x414(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0x414(%rbp)
cltq
movb $0xa, -0x410(%rbp,%rax)
movl -0x414(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0x414(%rbp)
cltq
movb $0x0, -0x410(%rbp,%rax)
leaq -0x410(%rbp), %rsi
leaq 0x6a21(%rip), %rdi      # 0x8038
movb $0x0, %al
callq 0x1030
addq $0x430, %rsp            # imm = 0x430
popq %rbp
retq
nopw (%rax,%rax)