// File: /workspace/github_c_makefile_star2_O1/DeforaOS[P]libSystem/tools/configctl.c
// Function: main
int main(int argc, char * argv[])
{
	int o;
	int list = 0;
	int verbose = 0;
	int write = 0;
	char const * filename = NULL;

	while((o = getopt(argc, argv, "af:qvw")) != -1)
		switch(o)
		{
			case 'a':
				list = 1;
				break;
			case 'f':
				filename = optarg;
				break;
			case 'q':
				verbose = -1;
				break;
			case 'v':
				verbose = 1;
				break;
			case 'w':
				write = 1;
				break;
			default:
				return _usage();
		}
	if(list)
	{
		if(verbose != 0 || write != 0 || filename == NULL
				|| optind != argc)
			return _usage();
		return _configctl_list(filename) ? 0 : 2;
	}
	if(filename == NULL || optind == argc)
		return _usage();
	return (_configctl(verbose, write, filename, argc - optind,
				&argv[optind]) == 0) ? 0 : 2;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rsi, %r12
movl %edi, %ebp
movq $0x0, 0x8(%rsp)
movb $0x1, %r13b
leaq 0xd92(%rip), %r15       # 0x2004
movq 0x2d5f(%rip), %r14      # 0x3fd8
movl $0x0, 0x4(%rsp)
xorl %ebx, %ebx
movl %ebp, %edi
movq %r12, %rsi
movq %r15, %rdx
callq 0x10d0
cmpl $0x66, %eax
jne 0x129a
movq (%r14), %rbx
jmp 0x1283
cmpl $0x70, %eax
jle 0x12bc
cmpl $0x71, %eax
je 0x12cf
cmpl $0x76, %eax
je 0x12db
cmpl $0x77, %eax
jne 0x14bf
movl $0x1, 0x4(%rsp)
jmp 0x1283
cmpl $-0x1, %eax
je 0x12e7
cmpl $0x61, %eax
jne 0x14bf
xorl %r13d, %r13d
jmp 0x1283
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movq %rax, 0x8(%rsp)
jmp 0x1283
movl $0x1, %eax
movq %rax, 0x8(%rsp)
jmp 0x1283
testb $0x1, %r13b
je 0x133f
testq %rbx, %rbx
je 0x14c6
movq 0x2cd3(%rip), %rax      # 0x3fd0
movslq (%rax), %r14
cmpl %r14d, %ebp
je 0x14c6
callq 0x10e0
testq %rax, %rax
je 0x1331
movq %rax, %r15
movq %rax, %rdi
movq %rbx, %rsi
callq 0x1040
testl %eax, %eax
je 0x13c7
movq %r15, %rdi
callq 0x1090
leaq 0xdf2(%rip), %rdi       # 0x212a
callq 0x10c0
jmp 0x13bd
cmpl $0x0, 0x8(%rsp)
jne 0x150a
cmpl $0x0, 0x4(%rsp)
jne 0x150a
testq %rbx, %rbx
je 0x150a
movq 0x2c6b(%rip), %rax      # 0x3fd0
cmpl %ebp, (%rax)
jne 0x150a
callq 0x10e0
testq %rax, %rax
je 0x1391
movq %rax, %r14
movq %rax, %rdi
movq %rbx, %rsi
callq 0x1040
testl %eax, %eax
je 0x13a4
movq %r14, %rdi
callq 0x1090
leaq 0xd92(%rip), %rdi       # 0x212a
callq 0x10c0
xorl %eax, %eax
jmp 0x152b
leaq 0x18f(%rip), %rsi       # 0x153a
movq %r14, %rdi
xorl %edx, %edx
callq 0x1080
movq %r14, %rdi
callq 0x1090
movl $0x2, %eax
jmp 0x152b
movq %r15, 0x10(%rsp)
subl %r14d, %ebp
testl %ebp, %ebp
jle 0x14cd
leaq (%r12,%r14,8), %rax
movq %rax, 0x20(%rsp)
movl %ebp, %eax
movq %rax, 0x18(%rsp)
xorl %r14d, %r14d
xorl %r13d, %r13d
xorl %r15d, %r15d
movq 0x20(%rsp), %rax
movq (%rax,%r14,8), %rbp
movq %rbp, %rdi
movl $0x2e, %esi
callq 0x1050
testq %rax, %rax
je 0x1419
movq %rbp, %r12
movq %rax, %rbp
incq %rbp
movb $0x0, (%rax)
jmp 0x141c
xorl %r12d, %r12d
cmpl $0x0, 0x4(%rsp)
je 0x1443
movq %rbp, %rdi
movl $0x3d, %esi
callq 0x1050
testq %rax, %rax
je 0x1440
movq %rax, %r13
incq %r13
movb $0x0, (%rax)
jmp 0x1443
xorl %r13d, %r13d
testq %r13, %r13
je 0x146f
movq 0x10(%rsp), %rdi
movq %r12, %rsi
movq %rbp, %rdx
movq %r13, %rcx
callq 0x10f0
testl %eax, %eax
jne 0x149b
movq 0x8(%rsp), %rdi
movq %r12, %rsi
movq %rbp, %rdx
movq %r13, %rcx
jmp 0x1492
movq 0x10(%rsp), %rdi
movq %r12, %rsi
movq %rbp, %rdx
callq 0x10a0
testq %rax, %rax
je 0x149b
movq 0x8(%rsp), %rdi
movq %r12, %rsi
movq %rbp, %rdx
movq %rax, %rcx
callq 0x154f
xorl %eax, %eax
jmp 0x14ac
leaq 0xc88(%rip), %rdi       # 0x212a
callq 0x10c0
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
orl %eax, %r15d
incq %r14
cmpq %r14, 0x18(%rsp)
jne 0x13f0
jmp 0x14d0
callq 0x113c
jmp 0x150f
callq 0x1126
jmp 0x150f
xorl %r15d, %r15d
testl %r15d, %r15d
setne %al
cmpl $0x0, 0x4(%rsp)
sete %cl
orb %al, %cl
movq 0x10(%rsp), %r14
jne 0x1519
movq %r14, %rdi
movq %rbx, %rsi
callq 0x10b0
testl %eax, %eax
je 0x1516
leaq 0xc2d(%rip), %rdi       # 0x212a
callq 0x10c0
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
jmp 0x1519
callq 0x1110
movl $0x1, %eax
jmp 0x152b
xorl %r15d, %r15d
movq %r14, %rdi
callq 0x1090
xorl %eax, %eax
testl %r15d, %r15d
setne %al
addl %eax, %eax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq