// File: /workspace/github_c_makefile_star2_O2/saltyJeff[P]uClibcpp/extra/config/conf.c
// Function: conf
static void conf(struct menu *menu)
{
	struct symbol *sym;
	struct property *prop;
	struct menu *child;

	if (!menu_is_visible(menu))
		return;

	sym = menu->sym;
	prop = menu->prompt;
	if (prop) {
		const char *prompt;

		switch (prop->type) {
		case P_MENU:
			if (input_mode == ask_silent && rootEntry != menu) {
				check_conf(menu);
				return;
			}
		case P_COMMENT:
			prompt = menu_get_prompt(menu);
			if (prompt)
				printf("%*c\n%*c %s\n%*c\n",
					indent, '*',
					indent, '*', prompt,
					indent, '*');
		default:
			;
		}
	}

	if (!sym)
		goto conf_childs;

	if (sym_is_choice(sym)) {
		conf_choice(menu);
		if (sym->curr.tri != mod)
			return;
		goto conf_childs;
	}

	switch (sym->type) {
	case S_INT:
	case S_HEX:
	case S_STRING:
		conf_string(menu);
		break;
	default:
		conf_sym(menu);
		break;
	}

conf_childs:
	if (sym)
		indent += 2;
	for (child = menu->list; child; child = child->next)
		conf(child);
	if (sym)
		indent -= 2;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdi, %r14
callq 0x7c07
testb %al, %al
je 0x2d2d
movq 0x18(%r14), %r15
movq 0x20(%r14), %rax
testq %rax, %rax
je 0x2924
movl 0x10(%rax), %eax
cmpl $0x2, %eax
je 0x28f3
cmpl $0x3, %eax
jne 0x2924
cmpl $0x2, 0x11b2e(%rip)     # 0x14400
jne 0x28f3
cmpq %r14, 0x11bb5(%rip)     # 0x14490
je 0x28f3
movq %r14, %rdi
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2d3c
movq %r14, %rdi
callq 0x7c7c
testq %rax, %rax
je 0x2924
movl 0x118aa(%rip), %ecx     # 0x141b0
leaq 0x77f5(%rip), %rdi      # 0xa102
pushq $0x2a
popq %rdx
movl %ecx, %esi
movl %edx, %r8d
movq %rax, %r9
xorl %eax, %eax
pushq $0x2a
pushq %rcx
callq 0x2100
popq %rcx
popq %rdx
testq %r15, %r15
je 0x2d0b
testb $0x10, 0x44(%r15)
jne 0x294d
movl 0x18(%r15), %eax
addl $-0x3, %eax
movq %r14, %rdi
cmpl $0x2, %eax
ja 0x2993
callq 0x242c
jmp 0x2d04
leaq 0x18(%r14), %rax
movq %rax, 0x28(%rsp)
movq (%rax), %r12
movq %r12, %rdi
callq 0x95b6
movl 0x44(%r12), %eax
movl %eax, 0x14(%rsp)
movq %r12, %rdi
callq 0x99b4
testb %al, %al
je 0x299d
movq %r14, %rdi
callq 0x2e0c
movq %r12, %rdi
callq 0x71aa
cmpl $0x2, 0x28(%r12)
jae 0x29de
jmp 0x2cfd
callq 0x2e0c
jmp 0x2d04
movl 0x28(%r12), %eax
testl %eax, %eax
je 0x2cfd
cmpl $0x1, %eax
jne 0x29de
movl 0x117fb(%rip), %ebx     # 0x141b0
decl %ebx
movq %r14, %rdi
callq 0x7c7c
leaq 0x774c(%rip), %rdi      # 0xa112
leaq 0xcd0a(%rip), %rdx      # 0xf6d7
movl %ebx, %esi
movq %rax, %rcx
xorl %eax, %eax
callq 0x2100
jmp 0x2cfd
movq %r15, 0x20(%rsp)
leaq 0x10(%r14), %rax
movq %rax, 0x18(%rsp)
leaq 0x7726(%rip), %rbp      # 0xa119
pushq $0x2a
popq %r15
movq %r14, 0x8(%rsp)
movq %r12, (%rsp)
movl 0x117aa(%rip), %ebx     # 0x141b0
decl %ebx
movq %r14, %rdi
callq 0x7c7c
leaq 0x76fb(%rip), %rdi      # 0xa112
movl %ebx, %esi
leaq 0xccb7(%rip), %rdx      # 0xf6d7
movq %rax, %rcx
xorl %eax, %eax
callq 0x2100
movq 0x20(%r12), %rax
movq %rax, 0x30(%rsp)
movw $0x30, 0x119d3(%rip)    # 0x14410
movq 0x18(%rsp), %rbx
xorl %r12d, %r12d
xorl %r13d, %r13d
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x2b12
movq %rbx, %rdi
callq 0x7c07
testb %al, %al
je 0x2a48
movq 0x18(%rbx), %rax
testq %rax, %rax
jne 0x2a8d
movl 0x11740(%rip), %r14d    # 0x141b0
movq %rbx, %rdi
callq 0x7c7c
movq %rbp, %rdi
movl %r14d, %esi
movl %r15d, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0x2100
jmp 0x2a48
incl %r12d
cmpq 0x30(%rsp), %rax
movl 0x11715(%rip), %esi     # 0x141b0
pushq $0x20
popq %rdx
pushq $0x3e
popq %rax
cmovel %eax, %edx
cmovel %r12d, %r13d
leaq 0x7672(%rip), %rdi      # 0xa121
xorl %eax, %eax
callq 0x2100
movq %rbx, %rdi
callq 0x7c7c
leaq 0x7660(%rip), %rdi      # 0xa125
movl %r12d, %esi
movq %rax, %rdx
xorl %eax, %eax
callq 0x2100
movq 0x18(%rbx), %rax
movq 0x8(%rax), %rsi
testq %rsi, %rsi
je 0x2af1
leaq 0x7647(%rip), %rdi      # 0xa12d
xorl %eax, %eax
callq 0x2100
movq 0x18(%rbx), %rax
testb $0x8, 0x45(%rax)
je 0x2b05
leaq 0x7635(%rip), %rdi      # 0xa133
xorl %eax, %eax
callq 0x2100
pushq $0xa
popq %rdi
callq 0x2050
jmp 0x2a48
movl 0x11698(%rip), %esi     # 0x141b0
decl %esi
leaq 0x7619(%rip), %rdi      # 0xa13a
leaq 0xcbaf(%rip), %rdx      # 0xf6d7
xorl %eax, %eax
callq 0x2100
cmpl $0x1, %r12d
jne 0x2b49
leaq 0x770c(%rip), %rdi      # 0xa248
callq 0x20a0
pushq $0x1
popq %rax
movl %eax, %r13d
jmp 0x2bac
leaq 0x75f4(%rip), %rdi      # 0xa144
movl %r12d, %esi
xorl %eax, %eax
callq 0x2100
movq (%rsp), %rax
cmpq $0x0, 0x10(%rax)
je 0x2b6d
pushq $0x3f
popq %rdi
callq 0x2050
leaq 0x75d6(%rip), %rdi      # 0xa14a
xorl %eax, %eax
callq 0x2100
movl 0x1187f(%rip), %eax     # 0x14400
cmpq $0x7, %rax
ja 0x2c9d
leaq 0x74c2(%rip), %rcx      # 0xa054
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0xcfc4(%rip), %rdi      # 0xfb66
movl %r13d, %esi
xorl %eax, %eax
callq 0x2100
movq 0x8(%rsp), %r14
movq (%rsp), %r12
movq 0x18(%rsp), %rbx
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x2a00
cmpq $0x0, 0x18(%rbx)
je 0x2bba
movq %rbx, %rdi
callq 0x7c07
testb %al, %al
je 0x2bba
decl %r13d
jne 0x2bba
leaq 0x1182b(%rip), %r13     # 0x14410
movq %r13, %rdi
callq 0x20e0
cmpb $0x3f, -0x1(%rax,%r13)
jne 0x2cd0
addq $0x18, %rbx
jmp 0x2c5d
btl $0xb, 0x14(%rsp)
jae 0x2b9b
callq 0x2dca
movq 0x113bd(%rip), %rax     # 0x13fd0
movq (%rax), %rdi
callq 0x2240
movq 0x113b6(%rip), %rax     # 0x13fd8
movq (%rax), %rdx
leaq 0x117e4(%rip), %rdi     # 0x14410
movl $0x80, %esi
callq 0x2170
callq 0x3027
movzbl 0x117ce(%rip), %eax     # 0x14410
testl %eax, %eax
movq 0x8(%rsp), %r14
movq (%rsp), %r12
je 0x2bb5
movq 0x28(%rsp), %rbx
cmpl $0x3f, %eax
jne 0x2ca5
movq (%rbx), %rax
movq 0x10(%rax), %rsi
testq %rsi, %rsi
leaq 0x11552(%rip), %rax     # 0x141c0
cmoveq %rax, %rsi
leaq 0xca65(%rip), %rdi      # 0xf6de
xorl %eax, %eax
callq 0x2100
jmp 0x2a00
callq 0x2220
movl %r12d, %ecx
cqto
idivq %rcx
movq %rdx, %r13
incl %r13d
jmp 0x2b9b
movl %r12d, %r13d
jmp 0x2bac
movsbq %al, %rbx
callq 0x2320
movq (%rax), %rax
testb $0x8, 0x1(%rax,%rbx,2)
je 0x2a00
leaq 0x1174d(%rip), %rdi     # 0x14410
callq 0x22c0
movl %eax, %r13d
jmp 0x2bb5
movq 0x18(%rbx), %rdi
pushq $0x2
popq %rsi
callq 0x979d
movq 0x10(%rbx), %rdi
testq %rdi, %rdi
movq 0x20(%rsp), %r15
je 0x2cfd
addl $0x2, 0x114bf(%rip)     # 0x141b0
callq 0x2893
addl $-0x2, 0x114b3(%rip)    # 0x141b0
cmpl $0x1, 0x28(%r15)
jne 0x2d2d
addl $0x2, 0x114a5(%rip)     # 0x141b0
addq $0x10, %r14
movq (%r14), %r14
testq %r14, %r14
je 0x2d21
movq %r14, %rdi
callq 0x2893
jmp 0x2d0f
testq %r15, %r15
je 0x2d2d
addl $-0x2, 0x11483(%rip)    # 0x141b0
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq