// File: /workspace/github_cpp_makefile_star2_O2/ATOMIC-LICHESS[P]ATOMKRAFT/bitboard.cpp
// Function: init_bitboards()
void init_bitboards() {

  int rookDeltas[4][2] = {{0,1},{0,-1},{1,0},{-1,0}};
  int bishopDeltas[4][2] = {{1,1},{-1,1},{1,-1},{-1,-1}};

  init_masks();
  init_step_attacks();
  init_sliding_attacks(RAttacks, RAttackIndex, RMask, RShift, RMult, rookDeltas);
  init_sliding_attacks(BAttacks, BAttackIndex, BMask, BShift, BMult, bishopDeltas);
  init_pseudo_attacks();
  init_between_bitboards();
}

// Assembly:
movabsq $0x101010101010101, %rdx # imm = 0x101010101010101
movabsq $-0x55aa55aa55aa55ab, %rax # imm = 0xAA55AA55AA55AA55
movq %rax, 0x1099f7(%rip)    # 0x1115c0
movabsq $0x55aa55aa55aa55aa, %rax # imm = 0x55AA55AA55AA55AA
movq %rax, 0x1099ee(%rip)    # 0x1115c8
movq %rdx, 0x1099ef(%rip)    # 0x1115d0
movq $0xff, 0x109a24(%rip) # 0x111610
pushq $0x1
popq %rsi
movl $0xff, %edi
leaq 0x1099d5(%rip), %rax    # 0x1115d0
leaq 0x109a0e(%rip), %rcx    # 0x111610
cmpq $0x8, %rsi
je 0x7c1c
addq %rdx, %rdx
movq %rdx, (%rax,%rsi,8)
shlq $0x8, %rdi
movq %rdi, (%rcx,%rsi,8)
incq %rsi
jmp 0x7c02
xorl %edi, %edi
leaq 0x109a2b(%rip), %rdx    # 0x111650
leaq 0x109a64(%rip), %rsi    # 0x111690
pushq $0x8
popq %r8
movq %rdi, %r9
testq %rdi, %rdi
je 0x7c51
cmpq $0x8, %rdi
je 0x7c6e
movq -0x8(%rax,%rdi,8), %r9
cmpq $0x7, %rdi
jne 0x7c51
movq %r8, %r10
xorl %r11d, %r11d
jmp 0x7c5a
leaq 0x1(%rdi), %r10
movq 0x8(%rax,%rdi,8), %r11
orq %r11, %r9
movq %r9, (%rdx,%rdi,8)
orq (%rax,%rdi,8), %r9
movq %r9, (%rsi,%rdi,8)
movq %r10, %rdi
jmp 0x7c30
xorl %r8d, %r8d
leaq 0x109a58(%rip), %rdi    # 0x1116d0
xorl %r9d, %r9d
cmpq $0x38, %r9
je 0x7cad
leaq 0x6(%r8), %r10
movq 0x38(%rcx,%r8,8), %r11
orq 0x38(%rdi,%r8,8), %r11
movl %r10d, %r10d
movq %r11, (%rdi,%r10,8)
movq (%r9,%rcx), %r10
orq 0x40(%r9,%rdi), %r10
movq %r10, 0x48(%r9,%rdi)
addq $0x8, %r9
decq %r8
jmp 0x7c7b
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
andq $0x0, 0x1096e0(%rip)    # 0x1113a0
orq $-0x1, 0x1098e8(%rip)   # 0x1115b0
xorl %r8d, %r8d
leaq 0x1094ce(%rip), %r14    # 0x1111a0
pushq $-0x2
popq %r9
leaq 0x1096d3(%rip), %r10    # 0x1113b0
xorl %ecx, %ecx
cmpq $0x40, %rcx
je 0x7d03
pushq $0x1
popq %r11
shlq %cl, %r11
movq %r9, %rbx
rolq %cl, %rbx
movq %r11, (%r8,%r14)
movq %rbx, (%r8,%r10)
incq %rcx
addq $0x8, %r8
jmp 0x7cdf
leaq 0x114246(%rip), %rcx    # 0x11bf50
leaq 0x113e3f(%rip), %r8     # 0x11bb50
leaq 0x113a38(%rip), %r9     # 0x11b750
xorl %r10d, %r10d
movl $0x200, %r11d           # imm = 0x200
cmpq $0x2, %r10
je 0x7d81
movq %r10, %rbx
shlq $0x6, %rbx
addq %rdi, %rbx
xorl %r14d, %r14d
cmpq $0x40, %r14
je 0x7d73
movl %r14d, %r15d
andl $-0x8, %r15d
movq (%r15,%rbx), %r15
movl %r14d, %r12d
andl $0x7, %r12d
shll $0x3, %r12d
movq (%r12,%rax), %r13
andq %r15, %r13
movq %r13, (%r9,%r14,8)
movq (%r12,%rsi), %r13
andq %r15, %r13
movq %r13, (%r8,%r14,8)
andq (%r12,%rdx), %r15
movq %r15, (%rcx,%r14,8)
incq %r14
jmp 0x7d34
incq %r10
addq %r11, %rcx
addq %r11, %r8
addq %r11, %r9
jmp 0x7d21
xorl %ebx, %ebx
leaq 0x114bc6(%rip), %r14    # 0x11c950
cmpq $0x100, %rbx            # imm = 0x100
je 0x7da4
movq %rbx, %rdi
callq 0x819a
movb %al, (%rbx,%r14)
incq %rbx
jmp 0x7d8a
xorl %ebx, %ebx
cmpq $0x40, %rbx
je 0x7e17
leaq 0x1ebf1(%rip), %r14     # 0x269a4
pushq $0x1
popq %r15
cmpq $0xf, %r15
je 0x7e12
movq %r15, %rax
shlq $0x9, %rax
leaq 0x109985(%rip), %rcx    # 0x111750
addq %rcx, %rax
leaq (%rax,%rbx,8), %r13
movq %r14, %r12
movl (%r12), %ebp
testl %ebp, %ebp
je 0x7e09
addl %ebx, %ebp
cmpl $0x3f, %ebp
ja 0x7e03
movl %ebx, %edi
movl %ebp, %esi
callq 0x75ec
cmpl $0x2, %eax
jg 0x7e03
movl %ebp, %eax
leaq 0x1093a5(%rip), %rcx    # 0x1111a0
movq (%rcx,%rax,8), %rax
orq %rax, (%r13)
addq $0x4, %r12
jmp 0x7dd5
incq %r15
addq $0x24, %r14
jmp 0x7db7
incq %rbx
jmp 0x7da6
leaq 0x36c82(%rip), %rdi     # 0x3eaa0
leaq 0x36b7b(%rip), %rsi     # 0x3e9a0
leaq 0x36974(%rip), %rdx     # 0x3e7a0
leaq 0x1e94d(%rip), %rcx     # 0x26780
leaq 0x1e646(%rip), %r8      # 0x26480
leaq 0x1ed5f(%rip), %r9      # 0x26ba0
callq 0x7f8e
leaq 0xfef53(%rip), %rdi     # 0x106da0
leaq 0xfee4c(%rip), %rsi     # 0x106ca0
leaq 0xfec45(%rip), %rdx     # 0x106aa0
leaq 0x1e81e(%rip), %rcx     # 0x26680
leaq 0x1e417(%rip), %r8      # 0x26280
leaq 0x1ed50(%rip), %r9      # 0x26bc0
callq 0x7f8e
xorl %r12d, %r12d
leaq 0x1144d1(%rip), %r13    # 0x11c350
leaq 0x1146ca(%rip), %rbp    # 0x11c550
leaq 0x1148c3(%rip), %r15    # 0x11c750
xorl %ebx, %ebx
cmpq $0x40, %rbx
je 0x7ec5
movl %ebx, %edi
xorl %esi, %esi
callq 0x8208
movq %rax, (%r12,%r13)
movl %ebx, %edi
xorl %esi, %esi
callq 0x8255
movq %rax, (%r12,%rbp)
movl %ebx, %edi
xorl %esi, %esi
callq 0x82a2
movq %rax, (%r12,%r15)
incq %rbx
addq $0x8, %r12
jmp 0x7e8f
xorl %ecx, %ecx
leaq 0x10b882(%rip), %rsi    # 0x113750
leaq 0x1092cb(%rip), %rbp    # 0x1111a0
cmpq $0x40, %rcx
je 0x7f7f
movq (%r15,%rcx,8), %rdi
movl %ecx, %r8d
andl $0x7, %r8d
movl %ecx, %r9d
shrl $0x3, %r9d
movq %rcx, %r10
shlq $0x9, %r10
addq %rsi, %r10
xorl %r11d, %r11d
cmpq $0x40, %r11
je 0x7f77
testq %rdi, (%rbp,%r11,8)
je 0x7f72
movl %r11d, %eax
andl $0x7, %eax
movl %r8d, %edx
subl %eax, %edx
movl %edx, %ebx
negl %ebx
cmovsl %edx, %ebx
movl %r11d, %eax
shrl $0x3, %eax
movl %r9d, %edx
subl %eax, %edx
movl %edx, %ebp
negl %ebp
cmovsl %edx, %ebp
movl %r11d, %eax
subl %ecx, %eax
cmpl %ebp, %ebx
cmoval %ebx, %ebp
cltd
idivl %ebp
leaq 0x10925d(%rip), %rbp    # 0x1111a0
leaq (%r10,%r11,8), %rdx
cltq
leal (%rcx,%rax), %ebx
movslq %ebx, %rbx
movq %r11, %r14
subq %rbx, %r14
shlq $0x3, %rbx
xorl %r12d, %r12d
cmpq %r12, %r14
je 0x7f72
leaq (%rbx,%r12,8), %r13
movq (%rbp,%r13), %r13
orq %r13, (%rdx)
addq %rax, %r12
jmp 0x7f5c
incq %r11
jmp 0x7efe
incq %rcx
jmp 0x7ed5
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq