// File: /workspace/github_cpp_makefile_star2_O1/ATOMIC-LICHESS[P]ATOMKRAFT/evaluate.cpp
// Function: (anonymous namespace)::trace_row(char const*, int)
void trace_row(const char *name, int idx) {

    Score wScore = TracedScores[WHITE][idx];
    Score bScore = TracedScores[BLACK][idx];

    switch (idx) {
    case PST: case IMBALANCE: case PAWN: case UNSTOPPABLE: case TOTAL:
        TraceStream << std::setw(20) << name << " |   ---   --- |   ---   --- | "
                    << std::setw(6)  << to_cp(mg_value(wScore)) << " "
                    << std::setw(6)  << to_cp(eg_value(wScore)) << " \n";
        break;
    default:
        TraceStream << std::setw(20) << name << " | " << std::noshowpos
                    << std::setw(5)  << to_cp(mg_value(wScore)) << " "
                    << std::setw(5)  << to_cp(eg_value(wScore)) << " | "
                    << std::setw(5)  << to_cp(mg_value(bScore)) << " "
                    << std::setw(5)  << to_cp(eg_value(bScore)) << " | "
                    << std::showpos
                    << std::setw(6)  << to_cp(mg_value(wScore - bScore)) << " "
                    << std::setw(6)  << to_cp(eg_value(wScore - bScore)) << " \n";
    }
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movl %esi, %eax
leaq 0x39e53c(%rip), %rcx    # 0x3b2940
movl (%rcx,%rax,4), %r12d
cmpl $0xf, %esi
ja 0x14542
movl $0xa302, %edx           # imm = 0xA302
btl %esi, %edx
jae 0x14542
movq 0x39e37a(%rip), %rax    # 0x3b27a0
leaq 0x39e363(%rip), %r15    # 0x3b2790
movq -0x18(%rax), %rcx
movq $0x14, 0x20(%rcx,%r15)
testq %rbx, %rbx
je 0x1445b
movq %rbx, %rdi
callq 0x5190
leaq 0x39e352(%rip), %rdi    # 0x3b27a0
movq %rbx, %rsi
movq %rax, %rdx
callq 0x5460
jmp 0x14472
movq -0x18(%rax), %rax
leaq (%rax,%r15), %rdi
addq $0x10, %rdi
movl 0x20(%rdi), %esi
orl $0x1, %esi
callq 0x5740
leaq 0x39e327(%rip), %r14    # 0x3b27a0
leaq 0x1cd1c(%rip), %rsi     # 0x3119c
movl $0x1f, %edx
movq %r14, %rdi
callq 0x5460
movq 0x39e30c(%rip), %rax    # 0x3b27a0
movq -0x18(%rax), %rax
movq $0x6, 0x20(%rax,%r15)
movl $0x8000, %r13d          # imm = 0x8000
leal (%r12,%r13), %eax
sarl $0x10, %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
leaq 0x27f8c(%rip), %r15     # 0x3c448
xorps %xmm1, %xmm1
cvtsi2sdl (%r15), %xmm1
divsd %xmm1, %xmm0
movq %r14, %rdi
callq 0x56b0
movq %rax, %rbx
leaq 0x1c166(%rip), %rsi     # 0x30640
movl $0x1, %edx
movq %rax, %rdi
callq 0x5460
movl %r12d, %eax
andl %r13d, %r12d
movq (%rbx), %rcx
movq -0x18(%rcx), %rcx
andl $0x7fff, %eax           # imm = 0x7FFF
subl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movq $0x6, 0x10(%rbx,%rcx)
xorps %xmm1, %xmm1
cvtsi2sdl (%r15), %xmm1
divsd %xmm1, %xmm0
movq %rbx, %rdi
callq 0x56b0
leaq 0x1cb5a(%rip), %rsi     # 0x31081
movl $0x2, %edx
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x5460
movl 0x40(%rcx,%rax,4), %r13d
movq 0x39e252(%rip), %rax    # 0x3b27a0
leaq 0x39e23b(%rip), %r15    # 0x3b2790
movq -0x18(%rax), %rcx
movq $0x14, 0x20(%rcx,%r15)
testq %rbx, %rbx
je 0x14583
movq %rbx, %rdi
callq 0x5190
leaq 0x39e22a(%rip), %rdi    # 0x3b27a0
movq %rbx, %rsi
movq %rax, %rdx
callq 0x5460
jmp 0x1459a
movq -0x18(%rax), %rax
leaq (%rax,%r15), %rdi
addq $0x10, %rdi
movl 0x20(%rdi), %esi
orl $0x1, %esi
callq 0x5740
leaq 0x39e1ff(%rip), %r14    # 0x3b27a0
leaq 0x1cc10(%rip), %rsi     # 0x311b8
movl $0x3, %edx
movq %r14, %rdi
callq 0x5460
movq 0x39e1e4(%rip), %rax    # 0x3b27a0
movq -0x18(%rax), %rcx
andl $0xfffff7ff, 0x28(%rcx,%r15) # imm = 0xFFFFF7FF
movq -0x18(%rax), %rax
movl $0x5, %ecx
movq %rcx, 0x20(%rax,%r15)
movl $0x8000, %ebx           # imm = 0x8000
leal (%r12,%rbx), %eax
sarl $0x10, %eax
cvtsi2sd %eax, %xmm0
leaq 0x27e5a(%rip), %rbp     # 0x3c448
cvtsi2sdl (%rbp), %xmm1
divsd %xmm1, %xmm0
movq %r14, %rdi
callq 0x56b0
movq %rax, %r15
leaq 0x1c037(%rip), %rsi     # 0x30640
movl $0x1, %edx
movq %rax, %rdi
callq 0x5460
movl $0x7fff, %r14d          # imm = 0x7FFF
movl %r12d, %eax
andl %r14d, %eax
movl %r12d, %ecx
andl %ebx, %ecx
subl %ecx, %eax
movq (%r15), %rcx
movq -0x18(%rcx), %rcx
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movl $0x5, %eax
movq %rax, 0x10(%r15,%rcx)
xorps %xmm1, %xmm1
cvtsi2sdl (%rbp), %xmm1
divsd %xmm1, %xmm0
movq %r15, %rdi
callq 0x56b0
movq %rax, %r15
movl $0x3, %edx
movq %rax, %rdi
leaq 0x1cb51(%rip), %rsi     # 0x311b8
callq 0x5460
leal (%rbx,%r13), %eax
sarl $0x10, %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
movq (%r15), %rax
movq -0x18(%rax), %rax
movl $0x5, %ecx
movq %rcx, 0x10(%r15,%rax)
xorps %xmm1, %xmm1
cvtsi2sdl (%rbp), %xmm1
divsd %xmm1, %xmm0
movq %r15, %rdi
callq 0x56b0
movq %rax, %r15
movl $0x1, %edx
movq %rax, %rdi
leaq 0x1bf8f(%rip), %rsi     # 0x30640
callq 0x5460
movq (%r15), %rax
movq -0x18(%rax), %rax
andl %r13d, %r14d
andl %r13d, %ebx
subl %ebx, %r14d
xorps %xmm0, %xmm0
cvtsi2sd %r14d, %xmm0
movl $0x5, %ecx
movq %rcx, 0x10(%r15,%rax)
xorps %xmm1, %xmm1
cvtsi2sdl (%rbp), %xmm1
divsd %xmm1, %xmm0
movq %r15, %rdi
callq 0x56b0
movq %rax, %r14
movl $0x3, %edx
movq %rax, %rdi
leaq 0x1caba(%rip), %rsi     # 0x311b8
callq 0x5460
movq (%r14), %rax
movq -0x18(%rax), %rcx
orl $0x800, 0x18(%r14,%rcx) # imm = 0x800
movq -0x18(%rax), %rax
movq $0x6, 0x10(%r14,%rax)
subl %r13d, %r12d
jmp 0x144a1