// File: kobanium[P]Ray/src/common/Message.cpp
// Function: PrintRate(game_info_t const*, int)
void
PrintRate( const game_info_t *game, const int color )
{
  std::ostringstream oss;

  oss << "Sum : " << game->sum_rate[color - 1] << "\n";

  for (int y = board_start; y <= board_end; y++) {
    oss << std::setw(6) << game->sum_rate_row[color - 1][y] << " | ";
    for (int x = board_start; x <= board_end; x++) {
      const int pos = POS(x, y);
      oss << std::setw(5) << game->rate[color - 1][pos] << " ";
    }
    oss << "\n";
  }

  std::cerr << oss.str() << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x220, %rsp            # imm = 0x220
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
leaq -0x188(%rbp), %rdi
movq %rdi, -0x1d8(%rbp)
callq 0x7750
movq -0x1d8(%rbp), %rdi
leaq 0x892fa(%rip), %rsi     # 0xac34d
callq 0x7530
movq %rax, -0x1d0(%rbp)
jmp 0x23061
movq -0x1d0(%rbp), %rdi
movq -0x8(%rbp), %rax
movl -0xc(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
movq 0x9dea8(%rax,%rcx,8), %rsi
callq 0x72a0
movq %rax, -0x1e0(%rbp)
jmp 0x2308a
movq -0x1e0(%rbp), %rdi
leaq 0x8c66d(%rip), %rsi     # 0xaf705
callq 0x7530
jmp 0x2309f
leaq 0xc49aa(%rip), %rax     # 0xe7a50
movl (%rax), %eax
movl %eax, -0x198(%rbp)
movl -0x198(%rbp), %eax
leaq 0xc4999(%rip), %rcx     # 0xe7a54
cmpl (%rcx), %eax
jg 0x2326f
movl $0x6, %edi
callq 0x25760
movl %eax, -0x1e4(%rbp)
jmp 0x230d5
movl -0x1e4(%rbp), %eax
movl %eax, -0x19c(%rbp)
movl -0x19c(%rbp), %esi
leaq -0x188(%rbp), %rdi
callq 0x7640
movq %rax, -0x1f0(%rbp)
jmp 0x230fc
movq -0x1f0(%rbp), %rdi
movq -0x8(%rbp), %rax
movl -0xc(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
imulq $0xe8, %rcx, %rcx
addq %rcx, %rax
movslq -0x198(%rbp), %rcx
movq 0x9dcd8(%rax,%rcx,8), %rsi
callq 0x72a0
movq %rax, -0x1f8(%rbp)
jmp 0x23136
movq -0x1f8(%rbp), %rdi
leaq 0x89210(%rip), %rsi     # 0xac354
callq 0x7530
jmp 0x2314b
leaq 0xc48fe(%rip), %rax     # 0xe7a50
movl (%rax), %eax
movl %eax, -0x1a0(%rbp)
movl -0x1a0(%rbp), %eax
leaq 0xc48ed(%rip), %rcx     # 0xe7a54
cmpl (%rcx), %eax
jg 0x23244
movl -0x1a0(%rbp), %eax
movl -0x198(%rbp), %ecx
leaq 0xc48ca(%rip), %rdx     # 0xe7a4c
movl (%rdx), %edx
imull %edx, %ecx
addl %ecx, %eax
movl %eax, -0x1a4(%rbp)
movl $0x5, %edi
callq 0x25760
movl %eax, -0x1fc(%rbp)
jmp 0x231a1
movl -0x1fc(%rbp), %eax
movl %eax, -0x1a8(%rbp)
movl -0x1a8(%rbp), %esi
leaq -0x188(%rbp), %rdi
callq 0x7640
movq %rax, -0x208(%rbp)
jmp 0x231c8
movq -0x208(%rbp), %rdi
movq -0x8(%rbp), %rax
movl -0xc(%rbp), %ecx
decl %ecx
movslq %ecx, %rcx
imulq $0x1a48, %rcx, %rcx     # imm = 0x1A48
addq %rcx, %rax
movslq -0x1a4(%rbp), %rcx
movq 0x9a848(%rax,%rcx,8), %rsi
callq 0x72a0
movq %rax, -0x210(%rbp)
jmp 0x23202
movq -0x210(%rbp), %rdi
leaq 0x89236(%rip), %rsi     # 0xac446
callq 0x7530
jmp 0x23217
jmp 0x23219
movl -0x1a0(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1a0(%rbp)
jmp 0x2315a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x190(%rbp)
movl %eax, -0x194(%rbp)
jmp 0x232f4
leaq 0x8c4ba(%rip), %rsi     # 0xaf705
leaq -0x188(%rbp), %rdi
callq 0x7530
jmp 0x23259
jmp 0x2325b
movl -0x198(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x198(%rbp)
jmp 0x230ae
leaq -0x1c8(%rbp), %rdi
leaq -0x188(%rbp), %rsi
callq 0x7580
jmp 0x23284
movq 0xc3d65(%rip), %rdi     # 0xe6ff0
leaq -0x1c8(%rbp), %rsi
callq 0x7480
movq %rax, -0x218(%rbp)
jmp 0x232a0
movq -0x218(%rbp), %rdi
movq 0xc3cba(%rip), %rsi     # 0xe6f68
callq 0x75b0
jmp 0x232b5
leaq -0x1c8(%rbp), %rdi
callq 0x7ae8
leaq -0x188(%rbp), %rdi
callq 0x7110
addq $0x220, %rsp            # imm = 0x220
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x190(%rbp)
movl %eax, -0x194(%rbp)
leaq -0x1c8(%rbp), %rdi
callq 0x7ae8
leaq -0x188(%rbp), %rdi
callq 0x7110
movq -0x190(%rbp), %rdi
callq 0x79b0
nopl (%rax)