// File: /workspace/github_cpp_makefile_star2_O3/tewalds[P]morat/havannah/lbdist.h
// Function: Morat::Havannah::LBDists::init_player(bool, Morat::Side)
void init_player(bool crossvcs, Side player) {
		int e = board->lines() - 1;
		int m = e / 2;

		init(0, 0, 0, player, 3); flood(0, player, crossvcs); //corner 0
		init(m, 0, 1, player, 4); flood(1, player, crossvcs); //corner 1
		init(e, m, 2, player, 5); flood(2, player, crossvcs); //corner 2
		init(e, e, 3, player, 0); flood(3, player, crossvcs); //corner 3
		init(m, e, 4, player, 1); flood(4, player, crossvcs); //corner 4
		init(0, m, 5, player, 2); flood(5, player, crossvcs); //corner 5

		for(int x = 1; x < m; x++)   { init(x,   0, 6,  player, 3+(x==1));   } flood(6,  player, crossvcs); //edge 0
		for(int y = 1; y < m; y++)   { init(m+y, y, 7,  player, 4+(y==1));   } flood(7,  player, crossvcs); //edge 1
		for(int y = m+1; y < e; y++) { init(e,   y, 8,  player, 5+(y==m+1)); } flood(8,  player, crossvcs); //edge 2
		for(int x = m+1; x < e; x++) { init(x,   e, 9,  player, 0+(x==e-1)); } flood(9,  player, crossvcs); //edge 3
		for(int x = 1; x < m; x++)   { init(x, m+x, 10, player, 1+(x==m-1)); } flood(10, player, crossvcs); //edge 4
		for(int y = 1; y < m; y++)   { init(0,   y, 11, player, 2+(y==m-1)); } flood(11, player, crossvcs); //edge 5
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq 0xcb28(%rdi), %rax
movl $0x3, %r9d
movl %edx, %ebp
movl %esi, %r15d
movl %esi, 0x4(%rsp)
movq %rdi, %rbx
xorl %esi, %esi
xorl %edx, %edx
movl %ebp, %r8d
movsbl (%rax), %ecx
leal -0x1(%rcx), %r12d
movq %rcx, 0x8(%rsp)
movzwl %r12w, %eax
shrl $0xf, %eax
leal -0x1(%rcx,%rax), %eax
xorl %ecx, %ecx
movswl %ax, %r14d
sarl %r14d
callq 0x19160
movq %rbx, %rdi
xorl %esi, %esi
movl %ebp, %edx
movl %r15d, %ecx
callq 0x1921a
movl $0x1, %ecx
movl $0x4, %r9d
movl $0x1, %r13d
movq %rbx, %rdi
movl %r14d, %esi
xorl %edx, %edx
movl %ebp, %r8d
callq 0x19160
movl $0x1, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r15d, %ecx
callq 0x1921a
movl $0x2, %ecx
movl $0x5, %r9d
movl $0x2, %r15d
movq %rbx, %rdi
movl %r12d, %esi
movl %r14d, %edx
movl %ebp, %r8d
callq 0x19160
movl 0x4(%rsp), %ecx
movl $0x2, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movl $0x3, %ecx
movq %rbx, %rdi
movl %r12d, %esi
movl %r12d, %edx
movl %ebp, %r8d
xorl %r9d, %r9d
callq 0x19160
movl 0x4(%rsp), %ecx
movl $0x3, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movl $0x4, %ecx
movl $0x1, %r9d
movq %rbx, %rdi
movl %r14d, %esi
movl %r12d, %edx
movl %ebp, %r8d
callq 0x19160
movl 0x4(%rsp), %ecx
movl $0x4, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movl $0x5, %ecx
movl $0x2, %r9d
movq %rbx, %rdi
xorl %esi, %esi
movl %r14d, %edx
movl %ebp, %r8d
callq 0x19160
movl 0x4(%rsp), %ecx
movl $0x5, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movzbl 0x4(%rsp), %ecx
cmpl $0x4, 0x8(%rsp)
movzbl %bpl, %ebp
movq %r14, 0x10(%rsp)
movl %ecx, 0x4(%rsp)
jle 0x18f65
cmpl $0x3, %r14d
cmovgel %r14d, %r15d
xorl %r9d, %r9d
cmpl $0x1, %r13d
movl $0x6, %ecx
movq %rbx, %rdi
movl %r13d, %esi
movl %ebp, %r8d
sete %r9b
xorl %edx, %edx
addl $0x3, %r9d
callq 0x19160
incl %r13d
cmpl %r13d, %r15d
jne 0x18ed6
movl 0x4(%rsp), %ecx
movl $0x6, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
cmpb $0x5, 0x8(%rsp)
movq 0x10(%rsp), %r14
jl 0x18f74
cmpl $0x3, %r14d
movl $0x2, %r15d
movl $0x1, %r13d
cmovgel %r14d, %r15d
xorl %r9d, %r9d
cmpl $0x1, %r13d
leal (%r14,%r13), %esi
movl $0x7, %ecx
movq %rbx, %rdi
movl %r13d, %edx
movl %ebp, %r8d
sete %r9b
orl $0x4, %r9d
callq 0x19160
incl %r13d
cmpl %r13d, %r15d
jne 0x18f35
jmp 0x18f74
movl $0x6, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movl 0x4(%rsp), %r15d
movl $0x7, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r15d, %ecx
callq 0x1921a
leal 0x1(%r14), %r13d
cmpl %r12d, %r13d
jge 0x19033
movq 0x8(%rsp), %rax
movl %eax, %r15d
subl %r14d, %r15d
xorl %r14d, %r14d
addl $-0x2, %r15d
cmpl $0x1, %r14d
movl $0x0, %r9d
leal (%r13,%r14), %edx
movl $0x8, %ecx
movq %rbx, %rdi
movl %r12d, %esi
movl %ebp, %r8d
adcl $0x5, %r9d
callq 0x19160
incl %r14d
cmpl %r14d, %r15d
jne 0x18faa
movl 0x4(%rsp), %ecx
movl $0x8, %esi
movq %rbx, %rdi
movl %ebp, %edx
callq 0x1921a
movq 0x8(%rsp), %r14
cmpl %r12d, %r13d
jge 0x1904a
movl %r14d, %r15d
negl %r15d
leal (%r15,%r13), %eax
xorl %r9d, %r9d
movl $0x9, %ecx
movq %rbx, %rdi
movl %r13d, %esi
movl %r12d, %edx
movl %ebp, %r8d
cmpl $-0x2, %eax
sete %r9b
callq 0x19160
leal 0x1(%r15,%r13), %eax
movl %r13d, %ecx
incl %ecx
movl %ecx, %r13d
cmpl $-0x1, %eax
jne 0x18ffb
jmp 0x1904a
movl $0x8, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r15d, %ecx
callq 0x1921a
movq 0x8(%rsp), %r14
movl 0x4(%rsp), %r13d
movl $0x9, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r13d, %ecx
callq 0x1921a
cmpb $0x4, %r14b
jle 0x1912d
movq 0x10(%rsp), %r14
movl $0x2, %r15d
movl $0x2, %r13d
movl $0x1, %r12d
cmpl $0x3, %r14d
cmovgel %r14d, %r13d
subl %r14d, %r15d
leal (%r15,%r12), %eax
xorl %r9d, %r9d
leal (%r14,%r12), %edx
movl $0xa, %ecx
movq %rbx, %rdi
movl %r12d, %esi
movl %ebp, %r8d
cmpl $0x1, %eax
sete %r9b
incl %r9d
callq 0x19160
incl %r12d
cmpl %r12d, %r13d
jne 0x1908d
movl 0x4(%rsp), %r13d
movl $0xa, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r13d, %ecx
callq 0x1921a
cmpb $0x5, 0x8(%rsp)
jl 0x1913f
movq 0x10(%rsp), %rax
movl $0x2, %r15d
movl $0x2, %r12d
movl $0x1, %r14d
cmpl $0x3, %eax
cmovgel %eax, %r12d
subl %eax, %r15d
leal (%r15,%r14), %eax
xorl %r9d, %r9d
movl $0xb, %ecx
movq %rbx, %rdi
movl %r14d, %edx
movl %ebp, %r8d
cmpl $0x1, %eax
sete %r9b
xorl %esi, %esi
orl $0x2, %r9d
callq 0x19160
incl %r14d
cmpl %r14d, %r12d
jne 0x190fc
jmp 0x1913f
movl $0xa, %esi
movq %rbx, %rdi
movl %ebp, %edx
movl %r13d, %ecx
callq 0x1921a
movq %rbx, %rdi
movl $0xb, %esi
movl %ebp, %edx
movl %r13d, %ecx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1921a
nop