// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/tools/gt_convertseq.c
// Function: gt_convertseq_option_parser_new
static GtOptionParser* gt_convertseq_option_parser_new(void *tool_arguments)
{
  GtConvertseqArguments *arguments = tool_arguments;
  GtOptionParser *op;
  GtOption *o;
  gt_assert(arguments);

  op = gt_option_parser_new("[options] file [...]",
                            "Parse and convert sequence file formats "
                            "(FASTA/FASTQ, GenBank, EMBL).");

  o = gt_option_new_bool("v","be verbose", &arguments->verbose, false);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_bool("r","reverse complement sequences",
                         &arguments->revcomp, false);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_bool("showfilelengthvalues","show filelengths",
                         &arguments->showflv, false);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_bool("noseq","do not show sequences",
                         &arguments->showseq, false);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_uword("fastawidth",
                          "FASTA output line width, 0 for unlimited",
                         &arguments->fastawidth, 60UL);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_bool("contractdnawc", "replace stretches of DNA wildcards "
                                          "with a single 'N'",
                         &arguments->reduce_wc_dna, false);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_bool("contractproteinwc", "replace stretches of protein "
                                              "wildcards with a single 'X'",
                         &arguments->reduce_wc_prot, false);
  gt_option_parser_add_option(op, o);

  gt_output_file_info_register_options(arguments->ofi, op, &arguments->outfp);

  gt_option_parser_set_min_args(op, 1U);

  return op;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
testq %rdi, %rdi
je 0xa1704
movq %rdi, %rbx
leaq 0x2a8a76(%rip), %rdi    # 0x34a042
leaq 0x2a8a84(%rip), %rsi    # 0x34a057
callq 0x107bfe
movq %rax, %r14
leaq 0x5(%rbx), %rdx
leaq 0x2ee24c(%rip), %rdi    # 0x38f832
leaq 0x2a5afd(%rip), %rsi    # 0x3470ea
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x2(%rbx), %rdx
leaq 0x2b984b(%rip), %rdi    # 0x35ae55
leaq 0x2a8a8c(%rip), %rsi    # 0x34a09d
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x3(%rbx), %rdx
leaq 0x2a8a8c(%rip), %rdi    # 0x34a0ba
leaq 0x2a8a9a(%rip), %rsi    # 0x34a0cf
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x4(%rbx), %rdx
leaq 0x2a8a8e(%rip), %rdi    # 0x34a0e0
leaq 0x2a8a8d(%rip), %rsi    # 0x34a0e6
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x8(%rbx), %rdx
leaq 0x2a8a86(%rip), %rdi    # 0x34a0fc
leaq 0x2a8a8a(%rip), %rsi    # 0x34a107
movl $0x3c, %ecx
callq 0x10a2ab
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x2a8a97(%rip), %rdi    # 0x34a130
leaq 0x2a8a9e(%rip), %rsi    # 0x34a13e
movq %rbx, %rdx
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x1(%rbx), %rdx
leaq 0x2a8ab3(%rip), %rdi    # 0x34a173
leaq 0x2a8abe(%rip), %rsi    # 0x34a185
xorl %ecx, %ecx
callq 0x10a235
movq %r14, %rdi
movq %rax, %rsi
callq 0x107cc0
movq 0x10(%rbx), %rdi
addq $0x18, %rbx
movq %r14, %rsi
movq %rbx, %rdx
callq 0x10ad87
movq %r14, %rdi
movl $0x1, %esi
callq 0x10872d
movq %r14, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
callq 0x1996b