// File: /workspace/github_cpp_makefile_star2_O1/jswaff[P]prophet3/test/evalp__test.cpp
// Function: test_botvinnik_capablanca38()
void test_botvinnik_capablanca38() {
    position pos;
    set_pos(&pos,"8/p3q1kp/1p2Pnp1/3pQ3/2pP4/1nP3N1/1B4PP/6K1 w - -");

    assert(is_passed(&pos,A7,false));
    assert(!is_passed(&pos,H7,false));
    assert(!is_passed(&pos,B6,false));
    assert(!is_passed(&pos,G6,false));
    assert(!is_passed(&pos,D5,false));
    assert(!is_passed(&pos,C4,false));
    assert(!is_passed(&pos,D4,true));
    assert(!is_passed(&pos,C3,true));
    assert(!is_passed(&pos,G2,true));
    assert(!is_passed(&pos,H2,true));
}

// Assembly:
pushq %rbx
subq $0x1d0, %rsp            # imm = 0x1D0
leaq 0x1d0f1(%rip), %rsi     # 0x311e0
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0xaa74
movq %rbx, %rdi
movl $0x8, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
je 0x14209
leaq 0x8(%rsp), %rdi
movl $0xf, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
jne 0x14228
leaq 0x8(%rsp), %rdi
movl $0x11, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
jne 0x14247
leaq 0x8(%rsp), %rdi
movl $0x16, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
jne 0x14266
leaq 0x8(%rsp), %rdi
movl $0x1b, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
jne 0x14285
leaq 0x8(%rsp), %rdi
movl $0x22, %esi
xorl %edx, %edx
callq 0x5bee
testb %al, %al
jne 0x142a4
leaq 0x8(%rsp), %rdi
movl $0x23, %esi
movl $0x1, %edx
callq 0x5bee
testb %al, %al
jne 0x142c3
leaq 0x8(%rsp), %rdi
movl $0x2a, %esi
movl $0x1, %edx
callq 0x5bee
testb %al, %al
jne 0x142e2
leaq 0x8(%rsp), %rdi
movl $0x36, %esi
movl $0x1, %edx
callq 0x5bee
testb %al, %al
jne 0x14301
leaq 0x8(%rsp), %rdi
movl $0x37, %esi
movl $0x1, %edx
callq 0x5bee
testb %al, %al
jne 0x14320
addq $0x1d0, %rsp            # imm = 0x1D0
popq %rbx
retq
leaq 0x1d153(%rip), %rdi     # 0x31363
leaq 0x1caf3(%rip), %rsi     # 0x30d0a
leaq 0x1cff4(%rip), %rcx     # 0x31212
movl $0x67, %edx
callq 0x20d0
leaq 0x1ccfb(%rip), %rdi     # 0x30f2a
leaq 0x1cad4(%rip), %rsi     # 0x30d0a
leaq 0x1cfd5(%rip), %rcx     # 0x31212
movl $0x68, %edx
callq 0x20d0
leaq 0x1cfe7(%rip), %rdi     # 0x31235
leaq 0x1cab5(%rip), %rsi     # 0x30d0a
leaq 0x1cfb6(%rip), %rcx     # 0x31212
movl $0x69, %edx
callq 0x20d0
leaq 0x1ce9d(%rip), %rdi     # 0x3110a
leaq 0x1ca96(%rip), %rsi     # 0x30d0a
leaq 0x1cf97(%rip), %rcx     # 0x31212
movl $0x6a, %edx
callq 0x20d0
leaq 0x1cfc3(%rip), %rdi     # 0x3124f
leaq 0x1ca77(%rip), %rsi     # 0x30d0a
leaq 0x1cf78(%rip), %rcx     # 0x31212
movl $0x6b, %edx
callq 0x20d0
leaq 0x1cfbe(%rip), %rdi     # 0x31269
leaq 0x1ca58(%rip), %rsi     # 0x30d0a
leaq 0x1cf59(%rip), %rcx     # 0x31212
movl $0x6c, %edx
callq 0x20d0
leaq 0x1cfb9(%rip), %rdi     # 0x31283
leaq 0x1ca39(%rip), %rsi     # 0x30d0a
leaq 0x1cf3a(%rip), %rcx     # 0x31212
movl $0x6d, %edx
callq 0x20d0
leaq 0x1cfb3(%rip), %rdi     # 0x3129c
leaq 0x1ca1a(%rip), %rsi     # 0x30d0a
leaq 0x1cf1b(%rip), %rcx     # 0x31212
movl $0x6e, %edx
callq 0x20d0
leaq 0x1cfad(%rip), %rdi     # 0x312b5
leaq 0x1c9fb(%rip), %rsi     # 0x30d0a
leaq 0x1cefc(%rip), %rcx     # 0x31212
movl $0x6f, %edx
callq 0x20d0
leaq 0x1cea0(%rip), %rdi     # 0x311c7
leaq 0x1c9dc(%rip), %rsi     # 0x30d0a
leaq 0x1cedd(%rip), %rcx     # 0x31212
movl $0x70, %edx
callq 0x20d0