// File: /workspace/github_c_makefile_star2_O2/ffoissey[P]push_swap_42/libft/srcs/ft_printf/ft_printf.c
// Function: ft_manage_conversion
static int	ft_manage_conversion(va_list *args, t_flag *flag,
		char *s, char **out)
{
	char	*tmp;
	char	*new;
	int		nl;

	tmp = *out;
	nl = flag->null;
	ft_wildcard(args, flag);
	if (ft_ok_dioux(*s) || *s == 'b' || *s == 'B' || *s == 'p')
		new = ft_nb(args, s, flag);
	else if (*s == 'c' || *s == 'C' || *s == 's' || *s == 'S')
	{
		if (ft_conversion_c_n_s(args, s, flag, &new))
			return (1);
	}
	else if (flag->str)
		new = ft_strdup(flag->str);
	else if (*s == 'f' || *s == 'F')
		new = ft_conversion_double(ft_double_select(args, flag), flag, *s);
	else
		return (1);
	*out = ft_strjoin_hub(*out, new, flag->null, flag->null == nl ? 1 : 3);
	ft_strdel(&flag->str);
	ft_strdel(&tmp);
	ft_strdel(&new);
	return (0);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x30, %rsp
movq %rcx, %r14
movq %rdx, %r12
movq %rsi, %rbx
movq %rdi, %r15
movq (%rcx), %rax
movq %rax, 0x28(%rsp)
movl 0x44(%rsi), %ebp
callq 0x2766
movsbl (%r12), %edi
callq 0x2e0a
testl %eax, %eax
je 0x2538
movq %r15, %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x286b
movq %rax, 0x18(%rsp)
movq (%r14), %rdi
leaq 0x18(%rsp), %r15
movq (%r15), %rsi
movl 0x44(%rbx), %edx
xorl %eax, %eax
cmpl %ebp, %edx
setne %al
leal 0x1(,%rax,2), %ecx
callq 0x2f3e
movq %rax, (%r14)
movq %rbx, %rdi
callq 0x1c38
leaq 0x28(%rsp), %rdi
callq 0x1c38
movq %r15, %rdi
callq 0x1c38
xorl %eax, %eax
addq $0x30, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movzbl (%r12), %eax
leal -0x42(%rax), %ecx
cmpl $0x31, %ecx
ja 0x25ae
movabsq $0x2000200020002, %rdx  # imm = 0x2000200020002
btq %rcx, %rdx
jae 0x259a
leal -0x43(%rax), %ecx
rolb $0x4, %cl
cmpb $0x3, %cl
ja 0x24eb
movzbl %cl, %ecx
leaq 0x3bfe(%rip), %rdx      # 0x6168
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
cmpl $0x43, %eax
je 0x2582
cmpl $0x0, 0x18(%rbx)
je 0x2662
movl (%r15), %ecx
cmpq $0x28, %rcx
ja 0x25e7
movq %rcx, %rax
addq 0x10(%r15), %rax
addl $0x8, %ecx
movl %ecx, (%r15)
jmp 0x25f3
movabsq $0x400100000001, %rdx   # imm = 0x400100000001
btq %rcx, %rdx
jb 0x24d8
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x2630
callq 0x5088
jmp 0x24e6
cmpl $0x53, %eax
je 0x25cf
cmpl $0x0, 0x18(%rbx)
je 0x267a
movl (%r15), %ecx
cmpq $0x28, %rcx
ja 0x2604
movq %rcx, %rax
addq 0x10(%r15), %rax
addl $0x8, %ecx
movl %ecx, (%r15)
jmp 0x2610
movq 0x8(%r15), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%r15)
movl (%rax), %edi
leaq 0x18(%rsp), %rdx
movq %rbx, %rsi
callq 0x391c
jmp 0x2620
movq 0x8(%r15), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%r15)
movq (%rax), %rdi
leaq 0x18(%rsp), %rdx
movq %rbx, %rsi
callq 0x3a95
testl %eax, %eax
je 0x24eb
pushq $0x1
popq %rax
jmp 0x252b
orl $0x20, %eax
cmpl $0x66, %eax
jne 0x2628
movq %r15, %rdi
movq %rbx, %rsi
callq 0x2818
movsd %xmm0, 0x20(%rsp)
fldl 0x20(%rsp)
movsbl (%r12), %esi
fstpt (%rsp)
movq %rbx, %rdi
callq 0x3463
jmp 0x24e6
movl (%r15), %ecx
cmpq $0x28, %rcx
ja 0x2692
movq %rcx, %rax
addq 0x10(%r15), %rax
addl $0x8, %ecx
movl %ecx, (%r15)
jmp 0x269e
movl (%r15), %ecx
cmpq $0x28, %rcx
ja 0x26ad
movq %rcx, %rax
addq 0x10(%r15), %rax
addl $0x8, %ecx
movl %ecx, (%r15)
jmp 0x26b9
movq 0x8(%r15), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%r15)
movl (%rax), %edi
movq %rbx, %rsi
callq 0x3332
jmp 0x24e6
movq 0x8(%r15), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x8(%r15)
movq (%rax), %rdi
movq %rbx, %rsi
callq 0x3396
jmp 0x24e6
nopl (%rax)