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

	nbyte = 0;
	len = -1;
	num = convert_length(modifiers.length, ap);
	if (modifiers.length == 'l' || modifiers.length / 2 == 'l' ||
		modifiers.length == 'z')
		str = num_string_u_base(num, 16);
	else
		str = ft_uitoa_base(num, 16);
	if (i == 8)
		while (str[++len])
			str[len] = ft_tolower(str[len]);
	str[0] == '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 $0x28, %rsp
movl %esi, %ebp
movl 0x7c(%rsp), %eax
cmpl $0x68, %eax
jne 0x9fe3
movl (%rdi), %ecx
cmpq $0x28, %rcx
ja 0xa006
movq %rcx, %rax
addq 0x10(%rdi), %rax
addl $0x8, %ecx
movl %ecx, (%rdi)
jmp 0xa012
movl %eax, %ecx
andl $-0x2, %ecx
cmpl $0xd0, %ecx
jne 0xa024
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0xa065
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0xa071
movq 0x8(%rdi), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%rdi)
movzwl (%rax), %edi
movl $0x10, %esi
callq 0xb8b7
jmp 0xa0e0
leal -0xd8(%rax), %ecx
cmpl $0x2, %ecx
jb 0xa04f
cmpl $0x7a, %eax
je 0xa04f
cmpl $0x6c, %eax
jne 0xa087
movl (%rdi), %ecx
cmpq $0x28, %rcx
ja 0xa09d
movq %rcx, %rax
addq 0x10(%rdi), %rax
addl $0x8, %ecx
movl %ecx, (%rdi)
jmp 0xa0a9
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0xa076
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0xa082
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movzbl (%rcx), %edi
jmp 0xa0bd
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movq (%rcx), %rdi
jmp 0xa0bd
movl (%rdi), %edx
cmpq $0x28, %rdx
ja 0xa0ae
movq %rdx, %rcx
addq 0x10(%rdi), %rcx
addl $0x8, %edx
movl %edx, (%rdi)
jmp 0xa0ba
movq 0x8(%rdi), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%rdi)
movq (%rax), %rdi
jmp 0xa0d6
movq 0x8(%rdi), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rdi)
movslq (%rcx), %rdi
leal -0xd8(%rax), %ecx
cmpl $0x2, %ecx
jb 0xa0d6
cmpl $0x7a, %eax
je 0xa0d6
cmpl $0x6c, %eax
jne 0xa015
movl $0x10, %esi
callq 0x866e
movq %rax, %rbx
leaq 0x60(%rsp), %r15
movb (%rax), %al
cmpl $0x8, %ebp
movl %ebp, 0x24(%rsp)
jne 0xa113
testb %al, %al
je 0xa12f
leaq 0x1(%rbx), %r14
movsbl %al, %edi
callq 0x725c
movb %al, -0x1(%r14)
movb (%r14), %al
incq %r14
testb %al, %al
jne 0xa0fb
movb (%rbx), %al
cmpb $0x30, %al
sete %al
movl 0x18(%r15), %ebp
testl %ebp, %ebp
sete %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0xa133
movb $0x0, (%rbx)
xorl %ebp, %ebp
jmp 0xa133
movl 0x18(%r15), %ebp
cmpl $0x1, 0x8(%r15)
jne 0xa1fb
movl 0x14(%r15), %r13d
movl 0x4(%r15), %r12d
movq %rbx, %rdi
callq 0x8082
movq %rax, %r14
xorl %r15d, %r15d
testl %r12d, %r12d
je 0xa18e
movzbl (%rbx), %eax
testl %eax, %eax
je 0xa18e
cmpl $0x30, %eax
je 0xa18e
cmpl $0x8, 0x24(%rsp)
leaq 0x388a(%rip), %rax      # 0xd9fb
leaq 0x3891(%rip), %rsi      # 0xda09
cmoveq %rax, %rsi
movl $0x2, %edx
movl $0x1, %edi
callq 0x1050
movq %rax, %r15
cmpl %r14d, %ebp
jle 0xa1b6
leaq 0x2c22(%rip), %r12      # 0xcdbc
decl %ebp
movl $0x1, %edx
movl $0x1, %edi
movq %r12, %rsi
callq 0x1050
addl %eax, %r15d
cmpl %r14d, %ebp
jg 0xa19a
movslq %r14d, %rdx
movl $0x1, %edi
movq %rbx, %rsi
callq 0x1050
movq %rax, %r14
addl %r15d, %r14d
cmpl %r13d, %r14d
jge 0xa284
leaq 0x321e(%rip), %r15      # 0xd3fa
movl $0x1, %edx
movl $0x1, %edi
movq %r15, %rsi
callq 0x1050
addl %eax, %r14d
cmpl %r13d, %r14d
jl 0xa1dc
jmp 0xa284
movl 0x10(%r15), %ebp
movl 0x18(%r15), %r13d
movl 0x4(%r15), %r12d
movq %rbx, %rdi
callq 0x8082
movq %rax, %r14
testl %r12d, %r12d
je 0xa223
movzbl (%rbx), %eax
testl %eax, %eax
je 0xa223
cmpl $0x30, %eax
jne 0xa29e
movups (%r15), %xmm0
movups 0x10(%r15), %xmm1
movups %xmm1, 0x10(%rsp)
movups %xmm0, (%rsp)
movl %r14d, %edi
xorl %esi, %esi
movq %rbx, %rdx
callq 0xa343
movl %eax, %r15d
cmpl %r14d, %r13d
jle 0xa26e
leaq 0x2b6b(%rip), %r12      # 0xcdbc
decl %r13d
movl $0x1, %edx
movl $0x1, %edi
movq %r12, %rsi
callq 0x1050
addl %eax, %r15d
cmpl %r14d, %r13d
jg 0xa251
movslq %r14d, %rdx
movl $0x1, %edi
movq %rbx, %rsi
callq 0x1050
movq %rax, %r14
addl %r15d, %r14d
movq %rbx, %rdi
callq 0x1030
movl %r14d, %eax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
testl %ebp, %ebp
setne %al
cmpl $-0x1, %r13d
sete %cl
andb %al, %cl
xorl %esi, %esi
cmpb $0x1, %cl
movl 0x24(%rsp), %r12d
jne 0xa2e0
cmpl $0x8, %r12d
leaq 0x3738(%rip), %rax      # 0xd9fb
leaq 0x373f(%rip), %rsi      # 0xda09
cmoveq %rax, %rsi
movl $0x2, %edx
movl $0x1, %edi
callq 0x1050
movq %rax, %rsi
movups (%r15), %xmm0
movups 0x10(%r15), %xmm1
movups %xmm1, 0x10(%rsp)
movups %xmm0, (%rsp)
movl %r14d, %edi
movq %rbx, %rdx
callq 0xa343
movl %eax, %r15d
testl %ebp, %ebp
sete %al
testl %r13d, %r13d
setns %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0xa245
cmpl $0x8, %r12d
leaq 0x36da(%rip), %rax      # 0xd9fb
leaq 0x36e1(%rip), %rsi      # 0xda09
cmoveq %rax, %rsi
movl $0x2, %edx
movl $0x1, %edi
callq 0x1050
addl %eax, %r15d
jmp 0xa245