// File: /workspace/github_c_makefile_star2_O3/ffoissey[P]filler_42/srcs/get_board.c
// Function: get_line_board
int						get_line_board(t_game *game, char *line)
{
	size_t	y;
	char	row_str[5];

	y = 0;
	row_str[4] = '\0';
	row_str[3] = ' ';
	row_str[2] = game->row % 10 + '0';
	row_str[1] = (game->row / 10) % 10 + '0';
	row_str[0] = game->row / 100 + '0';
	if (ft_strnequ(row_str, line, 4) == FALSE)
		return (FAILURE);
	line += 4;
	if (((int)ft_strlen(line) != game->board.size.y)
			|| (game->row > game->board.size.x))
		return (FAILURE);
	while (line[y] != '\0')
	{
		game->board.mx[game->row][y] = board_char_is_ok(game,
											line[y], game->row, y);
		if (game->board.mx[game->row][y] == E_UNKNOW)
			return (FAILURE);
		y++;
	}
	return (SUCCESS);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x13(%rsp), %rdi
movw $0x20, 0x3(%rdi)
movslq 0x30(%r14), %rcx
imulq $0x66666667, %rcx, %rax # imm = 0x66666667
movq %rax, %rdx
shrq $0x3f, %rdx
shrq $0x20, %rax
sarl $0x2, %eax
addl %edx, %eax
leal (%rax,%rax), %edx
leal (%rdx,%rdx,4), %edx
imulq $0x51eb851f, %rcx, %rsi # imm = 0x51EB851F
subl %edx, %ecx
addb $0x30, %cl
movb %cl, 0x2(%rdi)
cltq
imulq $0x66666667, %rax, %rcx # imm = 0x66666667
movq %rcx, %rdx
shrq $0x3f, %rdx
shrq $0x20, %rcx
sarl $0x2, %ecx
addl %edx, %ecx
addl %ecx, %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movb %al, 0x1(%rdi)
movq %rsi, %rax
shrq $0x3f, %rax
shrq $0x25, %rsi
addl %eax, %esi
addb $0x30, %sil
movb %sil, (%rdi)
movl $0x4, %edx
movq %rbx, %rsi
callq 0x26d8
testl %eax, %eax
je 0x164d
addq $0x4, %rbx
movq %rbx, %rdi
callq 0x27e0
cmpl %eax, 0xc(%r14)
jne 0x164d
movl 0x30(%r14), %ecx
cmpl 0x8(%r14), %ecx
jle 0x1661
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x38(%r14), %r12
leaq 0x58(%r14), %rbp
xorl %r13d, %r13d
movabsq $0x100000000, %r8       # imm = 0x100000000
movabsq $0x20100000201, %r9     # imm = 0x20100000201
xorl %r15d, %r15d
movzbl (%rbx,%r15), %eax
leal -0x4f(%rax), %edx
cmpl $0x29, %edx
ja 0x16fc
btq %rdx, %r9
jae 0x16fc
movl %ecx, %edx
leaq (%rdx,%r13), %rcx
movq %rcx, 0x8(%rsp)
cmpb %al, 0x36(%r14)
je 0x16ad
cmpb %al, 0x37(%r14)
jne 0x1714
cmpl $0x0, (%rbp)
jne 0x16c2
cmpl $0x0, 0x5c(%r14)
jne 0x16c2
movq %rcx, 0x48(%r14)
movq %rcx, 0x58(%r14)
xorl %edx, %edx
cmpb %al, 0x37(%r14)
sete %dl
addl $0x3, %edx
movl 0x30(%r14), %ecx
movq 0x10(%r14), %rax
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rcx
movl %edx, (%rcx,%r15,4)
movslq 0x30(%r14), %rcx
movq (%rax,%rcx,8), %rax
addq %r8, %r13
cmpl $0x6, (%rax,%r15,4)
leaq 0x1(%r15), %r15
jne 0x1683
jmp 0x164d
cmpl $0x2e, %eax
je 0x1710
testl %eax, %eax
je 0x1652
movl $0x6, %edx
jmp 0x16d2
xorl %edx, %edx
jmp 0x16d2
cmpl $0x0, 0x50(%r14)
jne 0x1726
cmpl $0x0, 0x54(%r14)
je 0x17a9
movq 0x10(%r14), %rdi
movslq %edx, %rdx
movq (%rdi,%rdx,8), %rdx
movq %r13, %rdi
sarq $0x1e, %rdi
cmpl $0x0, (%rdx,%rdi)
je 0x1749
movl $0x1, %edx
cmpb %al, 0x35(%r14)
jne 0x16ce
cmpl $0x0, (%r12)
jne 0x1757
cmpl $0x0, 0x3c(%r14)
je 0x179b
leaq 0x8(%rsp), %rdi
movq %rbp, %rsi
callq 0x1b0e
movl %eax, 0x4(%rsp)
movq %r12, %rdi
movq %rbp, %rsi
callq 0x1b0e
movabsq $0x20100000201, %r9     # imm = 0x20100000201
movabsq $0x100000000, %r8       # imm = 0x100000000
movl $0x2, %edx
cmpl %eax, 0x4(%rsp)
jge 0x16ce
movq 0x8(%rsp), %rcx
movq %rcx, (%r12)
movl $0x2, %edx
jmp 0x16ce
movq %rcx, 0x38(%r14)
movq %rcx, 0x50(%r14)
movl $0x1, %edx
jmp 0x16ce