// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/tools/gt_encseq_info.c
// Function: gt_encseq_info_option_parser_new
static GtOptionParser* gt_encseq_info_option_parser_new(void *tool_arguments)
{
  GtEncseqInfoArguments *arguments = tool_arguments;
  GtOptionParser *op;
  GtOption *option, *optionnomap;
  gt_assert(arguments);

  /* init */
  op = gt_option_parser_new("[option ...] indexname",
                            "Display meta-information about an "
                            "encoded sequence.");

  optionnomap = gt_option_new_bool("nomap", "do not map encoded sequence "
                                            "(gives less information)",
                                   &arguments->nomap, false);
  gt_option_parser_add_option(op, optionnomap);

  option = gt_option_new_bool("mirrored", "use mirrored encoded sequence "
                                          "(DNA only)",
                              &arguments->mirror, false);
  gt_option_parser_add_option(op, option);
  gt_option_exclude(optionnomap, option);

  option = gt_option_new_bool("noindexname", "do not output index name",
                              &arguments->noindexname, false);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_bool("show_alphabet", "output alphabet definition",
                              &arguments->show_alphabet, false);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_bool("n50", "show N50 values (minimum length of "
                              "largest sequences for covering at least 50% of "
                              "total sequence length)",
                              &arguments->show_n50, false);
  gt_option_parser_add_option(op, option);

  /* output file options */
  gt_output_file_info_register_options(arguments->ofi, op, &arguments->outfp);

  gt_option_parser_set_min_max_args(op, 1, 1);
  return op;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
testq %rdi, %rdi
je 0xa4cd3
movq %rdi, %rbx
leaq 0x2a60fb(%rip), %rdi    # 0x34acc7
leaq 0x2a6d34(%rip), %rsi    # 0x34b907
callq 0x107bfe
movq %rax, %r14
leaq 0x2a6d59(%rip), %rdi    # 0x34b93b
leaq 0x2a6d58(%rip), %rsi    # 0x34b941
movq %rbx, %rdx
xorl %ecx, %ecx
callq 0x10a235
movq %rax, %r15
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x1(%rbx), %rdx
leaq 0x2a8d33(%rip), %rdi    # 0x34d93f
leaq 0x2a6d63(%rip), %rsi    # 0x34b976
xorl %ecx, %ecx
callq 0x10a235
movq %rax, %r12
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
movq %r15, %rdi
movq %r12, %rsi
callq 0x10ab96
leaq 0x2(%rbx), %rdx
leaq 0x2a6d61(%rip), %rdi    # 0x34b99f
leaq 0x2a6d66(%rip), %rsi    # 0x34b9ab
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x3(%rbx), %rdx
leaq 0x2a6d62(%rip), %rdi    # 0x34b9c4
leaq 0x2a6d69(%rip), %rsi    # 0x34b9d2
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x4(%rbx), %rdx
leaq 0x2a6d67(%rip), %rdi    # 0x34b9ed
leaq 0x2a6d64(%rip), %rsi    # 0x34b9f1
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
movq 0x8(%rbx), %rdi
addq $0x10, %rbx
movq %r14, %rsi
movq %rbx, %rdx
callq 0x10ad87
movq %r14, %rdi
movl $0x1, %esi
movl $0x1, %edx
callq 0x10874b
movq %r14, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
callq 0x1a476