// File: kobanium[P]Ray/src/pattern/Pattern.cpp
// Function: UpdatePatternStone(pattern_t*, int, int)
void
UpdatePatternStone( pattern_t *pat, const int color, const int pos )
{
  //  3x3 
  pat[pos + NW].list[MD_2] |= update_mask[0][color];
  pat[pos +  N].list[MD_2] |= update_mask[1][color];
  pat[pos + NE].list[MD_2] |= update_mask[2][color];
  pat[pos +  W].list[MD_2] |= update_mask[3][color];
  pat[pos +  E].list[MD_2] |= update_mask[4][color];
  pat[pos + SW].list[MD_2] |= update_mask[5][color];
  pat[pos +  S].list[MD_2] |= update_mask[6][color];
  pat[pos + SE].list[MD_2] |= update_mask[7][color];

  //  md2
  pat[pos + NN].list[MD_2] |= update_mask[8][color];
  pat[pos + EE].list[MD_2] |= update_mask[9][color];
  pat[pos + SS].list[MD_2] |= update_mask[10][color];
  pat[pos + WW].list[MD_2] |= update_mask[11][color];

  //  md3
  pat[pos + NN + N].list[MD_3] |= update_mask[12][color];
  pat[pos + NN + E].list[MD_3] |= update_mask[13][color];
  pat[pos + EE + N].list[MD_3] |= update_mask[14][color];
  pat[pos + EE + E].list[MD_3] |= update_mask[15][color];
  pat[pos + EE + S].list[MD_3] |= update_mask[16][color];
  pat[pos + SS + E].list[MD_3] |= update_mask[17][color];
  pat[pos + SS + S].list[MD_3] |= update_mask[18][color];
  pat[pos + SS + W].list[MD_3] |= update_mask[19][color];
  pat[pos + WW + S].list[MD_3] |= update_mask[20][color];
  pat[pos + WW + W].list[MD_3] |= update_mask[21][color];
  pat[pos + WW + N].list[MD_3] |= update_mask[22][color];
  pat[pos + NN + W].list[MD_3] |= update_mask[23][color];

  // md4 
  pat[pos + NN + NN].list[MD_4] |= update_mask[24][color];
  pat[pos + NN + NE].list[MD_4] |= update_mask[25][color];
  pat[pos + NE + NE].list[MD_4] |= update_mask[26][color];
  pat[pos + EE + NE].list[MD_4] |= update_mask[27][color];
  pat[pos + EE + EE].list[MD_4] |= update_mask[28][color];
  pat[pos + EE + SE].list[MD_4] |= update_mask[29][color];
  pat[pos + SE + SE].list[MD_4] |= update_mask[30][color];
  pat[pos + SS + SE].list[MD_4] |= update_mask[31][color];
  pat[pos + SS + SS].list[MD_4] |= update_mask[32][color];
  pat[pos + SS + SW].list[MD_4] |= update_mask[33][color];
  pat[pos + SW + SW].list[MD_4] |= update_mask[34][color];
  pat[pos + WW + SW].list[MD_4] |= update_mask[35][color];
  pat[pos + WW + WW].list[MD_4] |= update_mask[36][color];
  pat[pos + WW + NW].list[MD_4] |= update_mask[37][color];
  pat[pos + NW + NW].list[MD_4] |= update_mask[38][color];
  pat[pos + NN + NW].list[MD_4] |= update_mask[39][color];

  // md5
  pat[pos + NN + NN + N].large_list[MD_5] |= large_mask[0][color];
  pat[pos + NN + NN + E].large_list[MD_5] |= large_mask[1][color];
  pat[pos + NN + NE + E].large_list[MD_5] |= large_mask[2][color];
  pat[pos + NN + EE + E].large_list[MD_5] |= large_mask[3][color];
  pat[pos + NE + EE + E].large_list[MD_5] |= large_mask[4][color];
  pat[pos + EE + EE + E].large_list[MD_5] |= large_mask[5][color];
  pat[pos + SE + EE + E].large_list[MD_5] |= large_mask[6][color];
  pat[pos + SS + EE + E].large_list[MD_5] |= large_mask[7][color];
  pat[pos + SS + SE + E].large_list[MD_5] |= large_mask[8][color];
  pat[pos + SS + SS + E].large_list[MD_5] |= large_mask[9][color];
  pat[pos + SS + SS + S].large_list[MD_5] |= large_mask[10][color];
  pat[pos + SS + SS + W].large_list[MD_5] |= large_mask[11][color];
  pat[pos + SS + SW + W].large_list[MD_5] |= large_mask[12][color];
  pat[pos + SS + WW + W].large_list[MD_5] |= large_mask[13][color];
  pat[pos + SW + WW + W].large_list[MD_5] |= large_mask[14][color];
  pat[pos + WW + WW + W].large_list[MD_5] |= large_mask[15][color];
  pat[pos + NW + WW + W].large_list[MD_5] |= large_mask[16][color];
  pat[pos + NN + WW + W].large_list[MD_5] |= large_mask[17][color];
  pat[pos + NN + NW + W].large_list[MD_5] |= large_mask[18][color];
  pat[pos + NN + NN + W].large_list[MD_5] |= large_mask[19][color];
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movslq -0xc(%rbp), %rcx
leaq 0x1d6e7(%rip), %rax     # 0xaf330
movl (%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55df0(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d6b4(%rip), %rax     # 0xaf330
movl 0xc(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55dbc(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d683(%rip), %rax     # 0xaf330
movl 0x18(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55d8b(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d64f(%rip), %rax     # 0xaf330
movl 0x24(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d628(%rip), %rax     # 0xaf330
movl 0x30(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d601(%rip), %rax     # 0xaf330
movl 0x3c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55d0b(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d5cf(%rip), %rax     # 0xaf330
movl 0x48(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55cd9(%rip), %rsi     # 0xe7a4c
addl (%rsi), %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d5a2(%rip), %rax     # 0xaf330
movl 0x54(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55cac(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d570(%rip), %rax     # 0xaf330
movl 0x60(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55c78(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55c6d(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d531(%rip), %rax     # 0xaf330
movl 0x6c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d50a(%rip), %rax     # 0xaf330
movl 0x78(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55c14(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55c0b(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d4d2(%rip), %rax     # 0xaf330
movl 0x84(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl (%rax), %ecx
movl %ecx, (%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d4a8(%rip), %rax     # 0xaf330
movl 0x90(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55bad(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55ba2(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55b92(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d457(%rip), %rax     # 0xaf330
movl 0x9c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55b5c(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55b51(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d410(%rip), %rax     # 0xaf330
movl 0xa8(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
xorl %esi, %esi
leaq 0x55b12(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d3d7(%rip), %rax     # 0xaf330
movl 0xb4(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d3a8(%rip), %rax     # 0xaf330
movl 0xc0(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
leaq 0x55aac(%rip), %rsi     # 0xe7a4c
addl (%rsi), %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d373(%rip), %rax     # 0xaf330
movl 0xcc(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55a7a(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55a71(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d333(%rip), %rax     # 0xaf330
movl 0xd8(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55a3a(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55a31(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x55a26(%rip), %rsi     # 0xe7a4c
addl (%rsi), %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d2ed(%rip), %rax     # 0xaf330
movl 0xe4(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x559f4(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x559eb(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d2ad(%rip), %rax     # 0xaf330
movl 0xf0(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
leaq 0x559b1(%rip), %rsi     # 0xe7a4c
addl (%rsi), %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d278(%rip), %rax     # 0xaf330
movl 0xfc(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d249(%rip), %rax     # 0xaf330
movl 0x108(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
xorl %esi, %esi
leaq 0x5594b(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d210(%rip), %rax     # 0xaf330
movl 0x114(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55915(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x5590a(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x4(%rax), %ecx
movl %ecx, 0x4(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d1c9(%rip), %rax     # 0xaf330
movl 0x120(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x558ce(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x558c3(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x558b3(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x558a8(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d16a(%rip), %rax     # 0xaf330
movl 0x12c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x5586f(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55864(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55854(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d116(%rip), %rax     # 0xaf330
movl 0x138(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x5581b(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x5580b(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d0cd(%rip), %rax     # 0xaf330
movl 0x144(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
xorl %esi, %esi
leaq 0x557cf(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d091(%rip), %rax     # 0xaf330
movl 0x150(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
addl $0x2, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d062(%rip), %rax     # 0xaf330
movl 0x15c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
leaq 0x55766(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1d028(%rip), %rax     # 0xaf330
movl 0x168(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5572f(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
leaq 0x55721(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cfe3(%rip), %rax     # 0xaf330
movl 0x174(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x556ea(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x556e1(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x556d6(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cf98(%rip), %rax     # 0xaf330
movl 0x180(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5569f(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55696(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x5568b(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55682(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cf47(%rip), %rax     # 0xaf330
movl 0x18c(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5564e(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55645(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x5563a(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cefc(%rip), %rax     # 0xaf330
movl 0x198(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55603(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
leaq 0x555f5(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ceb7(%rip), %rax     # 0xaf330
movl 0x1a4(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
leaq 0x555bb(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ce7d(%rip), %rax     # 0xaf330
movl 0x1b0(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
addl $-0x2, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ce4e(%rip), %rax     # 0xaf330
movl 0x1bc(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
xorl %esi, %esi
leaq 0x55550(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ce12(%rip), %rax     # 0xaf330
movl 0x1c8(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55517(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55507(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cdc9(%rip), %rax     # 0xaf330
movl 0x1d4(%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x554ce(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x554c3(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x554b3(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orl 0x8(%rax), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cf55(%rip), %rax     # 0xaf510
movq (%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x5547d(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55472(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55462(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55457(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55447(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl %esi, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ceea(%rip), %rax     # 0xaf510
movq 0x18(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55411(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x55406(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x553f6(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x553eb(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ce88(%rip), %rax     # 0xaf510
movq 0x30(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x553af(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x553a4(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x55394(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ce31(%rip), %rax     # 0xaf510
movq 0x48(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x55358(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x5534d(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cde7(%rip), %rax     # 0xaf510
movq 0x60(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x5530e(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $0x1, %esi
addl %esi, %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cda8(%rip), %rax     # 0xaf510
movq 0x78(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $0x2, %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cd76(%rip), %rax     # 0xaf510
movq 0x90(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5529c(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cd36(%rip), %rax     # 0xaf510
movq 0xa8(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5525c(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55253(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $0x2, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ccf0(%rip), %rax     # 0xaf510
movq 0xc0(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55216(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x5520d(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x55202(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $0x1, %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cc9f(%rip), %rax     # 0xaf510
movq 0xd8(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x551c5(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x551bc(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x551b1(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x551a8(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cc48(%rip), %rax     # 0xaf510
movq 0xf0(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x5516e(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55165(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x5515a(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55151(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x55146(%rip), %rsi     # 0xe7a4c
addl (%rsi), %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cbeb(%rip), %rax     # 0xaf510
movq 0x108(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55111(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55108(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x550fd(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x550f4(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cb94(%rip), %rax     # 0xaf510
movq 0x120(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x550ba(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x550b1(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
leaq 0x550a6(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cb43(%rip), %rax     # 0xaf510
movq 0x138(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55069(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
leaq 0x55060(%rip), %rdi     # 0xe7a4c
addl (%rdi), %esi
addl %esi, %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cafd(%rip), %rax     # 0xaf510
movq 0x150(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
leaq 0x55023(%rip), %rsi     # 0xe7a4c
movl (%rsi), %esi
addl $-0x1, %esi
addl %esi, %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1cabd(%rip), %rax     # 0xaf510
movq 0x168(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
addl $-0x2, %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ca88(%rip), %rax     # 0xaf510
movq 0x180(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x54fac(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1ca46(%rip), %rax     # 0xaf510
movq 0x198(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x54f6a(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x54f5f(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $-0x2, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1c9f9(%rip), %rax     # 0xaf510
movq 0x1b0(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x54f1d(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x54f12(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x54f02(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
addl $-0x1, %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
movslq -0xc(%rbp), %rcx
leaq 0x1c99f(%rip), %rax     # 0xaf510
movq 0x1c8(%rax,%rcx,8), %rcx
movq -0x8(%rbp), %rax
movl -0x10(%rbp), %edx
xorl %esi, %esi
leaq 0x54ec3(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x54eb8(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
xorl %esi, %esi
leaq 0x54ea8(%rip), %rdi     # 0xe7a4c
subl (%rdi), %esi
xorl %edi, %edi
leaq 0x54e9d(%rip), %r8      # 0xe7a4c
subl (%r8), %edi
addl %edi, %esi
addl %esi, %edx
addl $-0x1, %edx
movslq %edx, %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
orq 0x10(%rax), %rcx
movq %rcx, 0x10(%rax)
popq %rbp
retq
nopl (%rax)