// File: /workspace/github_c_makefile_star2_O0/j-hoppe[P]tu58fs/getopt2.c
// Function: getopt_help_option_intern
static void getopt_help_option_intern(getopt_option_descr_t *odesc, FILE *stream, unsigned linelen, unsigned indent)
{
	char linebuff[2 * GETOPT_MAX_LINELEN];
	char phrase[2 * GETOPT_MAX_LINELEN];
	linebuff[0] = 0;

	// print syntax
	strncpy(phrase, getopt_getoptionsyntax(odesc, 1), sizeof(phrase));
	output_append(stream, linebuff, sizeof(linebuff), phrase, /*linebreak*/0, linelen, indent);
	output_append(stream, linebuff, sizeof(linebuff), "", /*linebreak*/1, linelen, indent); // newline
	if (odesc->info)
		getopt_print_multilinestring(stream, linebuff, sizeof(linebuff), odesc->info, linelen, indent);
	if (odesc->default_args) {
		snprintf(phrase, sizeof(phrase), " Default: \"%s\"", odesc->default_args);
		output_append(stream, linebuff, sizeof(linebuff), phrase, /*linebreak*/0, linelen, indent);
	}

	// print examples:
	if (odesc->example_simple_cline_args) {
		output_append(stream, linebuff, sizeof(linebuff), "Simple example:  ", 1, linelen, indent);
		if (odesc->short_name) {
			output_append(stream, linebuff, sizeof(linebuff), "-", 0, linelen, indent);
			output_append(stream, linebuff, sizeof(linebuff), odesc->short_name, 0, linelen, indent);
			output_append(stream, linebuff, sizeof(linebuff), " ", 0, linelen, indent);
		}
		getopt_print_multilinestring(stream, linebuff, sizeof(linebuff), odesc->example_simple_cline_args, linelen, indent + 4);
		output_append(stream, linebuff, sizeof(linebuff), "    ", /*linebreak*/1, linelen, indent); // newline + extra indent
//		output_append(stream, linebuff, sizeof(linebuff), "", /*linebreak*/1, linelen, indent); // newline + extra indent
		getopt_print_multilinestring(stream, linebuff, sizeof(linebuff), odesc->example_simple_info, linelen, indent + 4);
	}
	if (odesc->example_complex_cline_args) {
		output_append(stream, linebuff, sizeof(linebuff), "Complex example:  ", 1, linelen, indent);
		if (odesc->long_name) {
			output_append(stream, linebuff, sizeof(linebuff), "--", 0, linelen, indent);
			output_append(stream, linebuff, sizeof(linebuff), odesc->long_name, 0, linelen, indent);
			output_append(stream, linebuff, sizeof(linebuff), " ", 0, linelen, indent);
		}
		getopt_print_multilinestring(stream, linebuff, sizeof(linebuff), odesc->example_complex_cline_args, linelen, indent + 4);
		//		output_append(stream, linebuff, sizeof(linebuff), "", /*linebreak*/1, linelen, indent); // newline + extra indent
		output_append(stream, linebuff, sizeof(linebuff), "    ", /*linebreak*/1, linelen, indent); // newline + extra indent
		getopt_print_multilinestring(stream, linebuff, sizeof(linebuff), odesc->example_complex_info, linelen, indent + 4);
	}
	// flush
	fprintf(stream, "%s\n", linebuff);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x430, %rsp            # imm = 0x430
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
movb $0x0, -0x220(%rbp)
leaq -0x420(%rbp), %rax
movq %rax, -0x428(%rbp)
movq -0x8(%rbp), %rdi
movl $0x1, %esi
callq 0x7000
movq -0x428(%rbp), %rdi
movq %rax, %rsi
movl $0x200, %edx            # imm = 0x200
callq 0x3090
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
leaq -0x420(%rbp), %rcx
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x152ad(%rip), %rcx     # 0x1c6c4
movl $0x1, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x688(%rax)
je 0x745b
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x688(%rax), %rcx
movl -0x14(%rbp), %r8d
movl -0x18(%rbp), %r9d
movl $0x200, %edx            # imm = 0x200
callq 0x78b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x680(%rax)
je 0x74b7
leaq -0x420(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x680(%rax), %rcx
movl $0x200, %esi            # imm = 0x200
leaq 0x14237(%rip), %rdx     # 0x1b6be
movb $0x0, %al
callq 0x31d0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
leaq -0x420(%rbp), %rcx
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x690(%rax)
je 0x7600
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x141e6(%rip), %rcx     # 0x1b6cd
movl $0x1, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x8(%rax)
je 0x757c
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x13eeb(%rip), %rcx     # 0x1b409
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rcx
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x161f3(%rip), %rcx     # 0x1d764
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x690(%rax), %rcx
movl -0x14(%rbp), %r8d
movl -0x18(%rbp), %r9d
addl $0x4, %r9d
movl $0x200, %edx            # imm = 0x200
callq 0x78b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x1619b(%rip), %rcx     # 0x1d761
movl $0x1, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x698(%rax), %rcx
movl -0x14(%rbp), %r8d
movl -0x18(%rbp), %r9d
addl $0x4, %r9d
movl $0x200, %edx            # imm = 0x200
callq 0x78b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x6a0(%rax)
je 0x7749
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x140af(%rip), %rcx     # 0x1b6df
movl $0x1, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x76c5
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x13da1(%rip), %rcx     # 0x1b408
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rcx
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x160aa(%rip), %rcx     # 0x1d764
xorl %r8d, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x6a0(%rax), %rcx
movl -0x14(%rbp), %r8d
movl -0x18(%rbp), %r9d
addl $0x4, %r9d
movl $0x200, %edx            # imm = 0x200
callq 0x78b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movl -0x14(%rbp), %r9d
movl -0x18(%rbp), %eax
movl $0x200, %edx            # imm = 0x200
leaq 0x16052(%rip), %rcx     # 0x1d761
movl $0x1, %r8d
movl %eax, (%rsp)
callq 0x72b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rsi
movq -0x8(%rbp), %rax
movq 0x6a8(%rax), %rcx
movl -0x14(%rbp), %r8d
movl -0x18(%rbp), %r9d
addl $0x4, %r9d
movl $0x200, %edx            # imm = 0x200
callq 0x78b0
movq -0x10(%rbp), %rdi
leaq -0x220(%rbp), %rdx
leaq 0x15539(%rip), %rsi     # 0x1cc94
movb $0x0, %al
callq 0x3300
addq $0x430, %rsp            # imm = 0x430
popq %rbp
retq
nopl (%rax,%rax)