// File: /workspace/github_c_makefile_star2_O2/rpeepz[P]ft_ssl/libft/srcs/ft_printf/convert_b.c
// Function: convert_b
int				convert_b(t_mods modifiers, va_list ap, int i)
{
	uint64_t	num;
	int			nbyte;
	char		*str;

	nbyte = 0;
	num = convert_length(modifiers.length, ap);
	if (modifiers.length == 'l' || modifiers.length / 2 == 'l' ||
		modifiers.length == 'z')
		str = num_string_u_base(num, 2);
	else
		str = ft_uitoa_base(num, 2);
	num == 0 && modifiers.prcsn == 0 ? str[0] = '\0' : 0;
	if (modifiers.fl.minus == 1)
		nbyte += left_justify(modifiers, str, nbyte, i);
	else
		nbyte += right_justify(modifiers, str, nbyte, i);
	if (str)
		free(str);
	return (nbyte);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movl %esi, %ebp
leaq 0x70(%rsp), %r13
movl 0x1c(%r13), %eax
cmpl $0x68, %eax
jne 0x7c08
movl (%rdi), %ecx
cmpq $0x28, %rcx
ja 0x7c2b
movq %rcx, %rax
addq 0x10(%rdi), %rax
addl $0x8, %ecx
movl %ecx, (%rdi)
jmp 0x7c37
movl %eax, %ecx
andl $-0x2, %ecx
cmpl $0xd0, %ecx
jne 0x7c4b
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0x7c8c
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0x7c98
movq 0x8(%rdi), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%rdi)
movzwl (%rax), %r15d
pushq $0x2
popq %rsi
movl %r15d, %edi
callq 0xa9a7
jmp 0x7d09
leal -0xd8(%rax), %ecx
cmpl $0x2, %ecx
jb 0x7c76
cmpl $0x7a, %eax
je 0x7c76
cmpl $0x6c, %eax
jne 0x7caf
movl (%rdi), %ecx
cmpq $0x28, %rcx
ja 0x7cc5
movq %rcx, %rax
addq 0x10(%rdi), %rax
addl $0x8, %ecx
movl %ecx, (%rdi)
jmp 0x7cd1
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0x7c9e
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0x7caa
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movzbl (%rcx), %r15d
jmp 0x7ce5
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movq (%rcx), %r15
jmp 0x7ce5
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0x7cd6
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0x7ce2
movq 0x8(%rdi), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%rdi)
movq (%rax), %r15
jmp 0x7cfe
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movslq (%rcx), %r15
leal -0xd8(%rax), %ecx
cmpl $0x2, %ecx
jb 0x7cfe
cmpl $0x7a, %eax
je 0x7cfe
cmpl $0x6c, %eax
jne 0x7c3b
pushq $0x2
popq %rsi
movq %r15, %rdi
callq 0x78cd
movq %rax, %r12
testq %r15, %r15
sete %al
movl 0x18(%r13), %r14d
testl %r14d, %r14d
sete %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x7d28
movb $0x0, (%r12)
cmpl $0x1, 0x8(%r13)
movq %r12, 0x30(%rsp)
jne 0x7df1
movl 0x14(%r13), %eax
movl %eax, 0x2c(%rsp)
movl 0x4(%r13), %ebx
movq %r12, %rdi
callq 0x739e
movq %r12, %rcx
movq %rax, %r12
xorl %r15d, %r15d
testl %ebx, %ebx
je 0x7d81
cmpb $0x0, (%rcx)
je 0x7d81
cmpl $0x14, %ebp
leaq 0x4be9(%rip), %rax      # 0xc951
leaq 0x4be5(%rip), %rsi      # 0xc954
cmoveq %rax, %rsi
pushq $0x1
popq %rdi
pushq $0x2
popq %rdx
callq 0x1050
movq %rax, %r15
leaq 0x4034(%rip), %rbx      # 0xbdbc
pushq $0x1
popq %rbp
pushq $0x1
popq %r13
cmpl %r12d, %r14d
jle 0x7da9
decl %r14d
movl %ebp, %edi
movq %rbx, %rsi
movq %r13, %rdx
callq 0x1050
addl %eax, %r15d
jmp 0x7d8f
movslq %r12d, %rdx
pushq $0x1
popq %rbx
movl %ebx, %edi
movq 0x30(%rsp), %rsi
callq 0x1050
leaq 0x4580(%rip), %r12      # 0xc342
pushq $0x1
popq %r13
movl 0x2c(%rsp), %ebp
movl %r15d, %ecx
movl %eax, %r15d
addl %ecx, %r15d
cmpl %ebp, %r15d
jge 0x7de7
movl %ebx, %edi
movq %r12, %rsi
movq %r13, %rdx
callq 0x1050
jmp 0x7dca
movq 0x30(%rsp), %rbx
jmp 0x7f1b
movl %ebp, 0x2c(%rsp)
movl 0x10(%r13), %ebx
movl 0x18(%r13), %r14d
movl 0x4(%r13), %ebp
movq %r12, %rdi
callq 0x739e
movq %rax, %r15
testl %ebp, %ebp
je 0x7eb2
cmpb $0x0, (%r12)
je 0x7eb2
testl %ebx, %ebx
setne %al
cmpl $-0x1, %r14d
sete %cl
andb %al, %cl
xorl %esi, %esi
leaq 0x4b1e(%rip), %rax      # 0xc954
leaq 0x4b14(%rip), %r12      # 0xc951
cmpb $0x1, %cl
jne 0x7e5c
cmpl $0xa, 0x2c(%rsp)
movq %r12, %rsi
cmoveq %rax, %rsi
pushq $0x1
popq %rdi
pushq $0x2
popq %rdx
callq 0x1050
movq %rax, %rsi
movups (%r13), %xmm0
movups 0x10(%r13), %xmm1
movups %xmm1, 0x10(%rsp)
movups %xmm0, (%rsp)
movl %r15d, %edi
movq 0x30(%rsp), %rdx
callq 0x7f35
movl %eax, %ebp
testl %ebx, %ebx
sete %al
testl %r14d, %r14d
setns %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0x7ed4
cmpl $0xa, 0x2c(%rsp)
leaq 0x4ab8(%rip), %rax      # 0xc954
cmoveq %rax, %r12
pushq $0x1
popq %rdi
pushq $0x2
popq %rdx
movq %r12, %rsi
callq 0x1050
addl %eax, %ebp
jmp 0x7ed4
movups (%r13), %xmm0
movups 0x10(%r13), %xmm1
movups %xmm1, 0x10(%rsp)
movups %xmm0, (%rsp)
movl %r15d, %edi
xorl %esi, %esi
movq %r12, %rdx
callq 0x7f35
movl %eax, %ebp
cmpl %r15d, %r14d
jle 0x7f02
leaq 0x3edc(%rip), %rbx      # 0xbdbc
pushq $0x1
popq %r12
pushq $0x1
popq %r13
cmpl %r15d, %r14d
jle 0x7f02
decl %r14d
movl %r12d, %edi
movq %rbx, %rsi
movq %r13, %rdx
callq 0x1050
addl %eax, %ebp
jmp 0x7ee8
movslq %r15d, %rdx
pushq $0x1
popq %rdi
movq 0x30(%rsp), %rbx
movq %rbx, %rsi
callq 0x1050
movq %rax, %r15
addl %ebp, %r15d
movq %rbx, %rdi
callq 0x1030
movl %r15d, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq