// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/extended/gff3_visitor.c
// Function: gff3_visitor_region_node
static int gff3_visitor_region_node(GtNodeVisitor *nv, GtRegionNode *rn,
                                    GT_UNUSED GtError *err)
{
  GtGFF3Visitor *gff3_visitor;
  gt_error_check(err);
  gff3_visitor = gff3_visitor_cast(nv);
  gt_assert(nv && rn);
  gff3_version_string(nv);
  if (!gff3_visitor->outstr) {
    gt_file_xprintf(gff3_visitor->outfp, "%s   %s "GT_WU" "GT_WU"\n",
                    GT_GFF_SEQUENCE_REGION,
                    gt_str_get(gt_genome_node_get_seqid((GtGenomeNode*) rn)),
                    gt_genome_node_get_start((GtGenomeNode*) rn),
                    gt_genome_node_get_end((GtGenomeNode*) rn));
  } else {
    gt_str_append_cstr(gff3_visitor->outstr, GT_GFF_SEQUENCE_REGION);
    gt_str_append_cstr(gff3_visitor->outstr, "   ");
    gt_str_append_cstr(gff3_visitor->outstr,
                      gt_str_get(gt_genome_node_get_seqid((GtGenomeNode*) rn)));
    gt_str_append_char(gff3_visitor->outstr, ' ');
    gt_str_append_uword(gff3_visitor->outstr,
                                  gt_genome_node_get_start((GtGenomeNode*) rn));
    gt_str_append_char(gff3_visitor->outstr, ' ');
    gt_str_append_uword(gff3_visitor->outstr,
                                  gt_genome_node_get_end((GtGenomeNode*) rn));
    gt_str_append_char(gff3_visitor->outstr, '\n');
  }
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r15
testq %rdx, %rdx
je 0x23c36
movq %rdx, %rdi
callq 0xc103
testb %al, %al
jne 0x23d84
callq 0x238d4
movq %rax, %rdi
movq %r15, %rsi
callq 0x2603e
testq %r15, %r15
je 0x23d56
testq %rbx, %rbx
je 0x23d56
movq %rax, %r14
movq %r15, %rdi
callq 0x24334
movq 0x40(%r14), %rdi
testq %rdi, %rdi
je 0x23d00
leaq 0xabf1d(%rip), %rsi     # 0xcfb94
callq 0x13dd3
movq 0x40(%r14), %rdi
leaq 0xc3d5c(%rip), %rsi     # 0xe79e3
callq 0x13dd3
movq 0x40(%r14), %r15
movq %rbx, %rdi
callq 0x1c31a
movq %rax, %rdi
callq 0x143d2
movq %r15, %rdi
movq %rax, %rsi
callq 0x13dd3
movq 0x40(%r14), %rdi
pushq $0x20
popq %rbp
movl %ebp, %esi
callq 0x140b1
movq 0x40(%r14), %r15
movq %rbx, %rdi
callq 0x1c3bf
movq %r15, %rdi
movq %rax, %rsi
callq 0x13ffe
movq 0x40(%r14), %rdi
movl %ebp, %esi
callq 0x140b1
movq 0x40(%r14), %r15
movq %rbx, %rdi
callq 0x1c415
movq %r15, %rdi
movq %rax, %rsi
callq 0x13ffe
movq 0x40(%r14), %rdi
pushq $0xa
popq %rsi
callq 0x140b1
jmp 0x23d4b
movq 0x38(%r14), %r14
movq %rbx, %rdi
callq 0x1c31a
movq %rax, %rdi
callq 0x143d2
movq %rax, %r15
movq %rbx, %rdi
callq 0x1c3bf
movq %rax, %r12
movq %rbx, %rdi
callq 0x1c415
leaq 0xadc6e(%rip), %rsi     # 0xd199f
leaq 0xabe5c(%rip), %rdx     # 0xcfb94
movq %r14, %rdi
movq %r15, %rcx
movq %r12, %r8
movq %rax, %r9
xorl %eax, %eax
callq 0x542da
xorl %eax, %eax
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq 0x10a25b(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa62ff(%rip), %rsi     # 0xca066
leaq 0xadc28(%rip), %rdx     # 0xd1996
leaq 0xadc08(%rip), %rcx     # 0xd197d
leaq 0xada38(%rip), %r8      # 0xd17b4
movl $0x1b8, %r9d            # imm = 0x1B8
jmp 0x23db0
movq 0x10a22d(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa62d1(%rip), %rsi     # 0xca066
leaq 0xa68bd(%rip), %rdx     # 0xca659
leaq 0xadbda(%rip), %rcx     # 0xd197d
leaq 0xada0a(%rip), %r8      # 0xd17b4
movl $0x1b6, %r9d            # imm = 0x1B6
xorl %eax, %eax
callq 0xb8c0
callq 0xb300