LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_node_iterator_lua.c
// Function: gt_lua_open_feature_node_iterator
int gt_lua_open_feature_node_iterator(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_newmetatable(L, GENOME_NODE_ITERATOR_METATABLE);
  /* metatable.__index = metatable */
  lua_pushvalue(L, -1); /* duplicate the metatable */
  lua_setfield(L, -2, "__index");
  /* set its _gc field */
  lua_pushstring(L, "__gc");
  lua_pushcfunction(L, feature_node_iterator_lua_delete);
  lua_settable(L, -3);
  /* register functions */
  luaL_register(L, NULL, feature_node_iterator_lib_m);
  lua_pop(L, 1);
  luaL_register(L, "gt", feature_node_iterator_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9319
movq 0xbacf0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64d74(%rip), %rsi     # 0x15e066
leaq 0x71b05(%rip), %rdx     # 0x16adfe
leaq 0x831c8(%rip), %rcx     # 0x17c4c8
leaq 0x831e3(%rip), %r8      # 0x17c4ea
movl $0x5d, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf931b
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x831db(%rip), %rsi     # 0x17c510
callq 0x55930
movq 0x10(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4f790
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
leaq 0x7232d(%rip), %rdx     # 0x16b687
callq 0x51fc0
movq 0x10(%rsp), %rdi
leaq 0x71c74(%rip), %rsi     # 0x16afdf
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0xc4(%rip), %rsi        # 0xf9440
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
leaq 0xba7ae(%rip), %rdx     # 0x1b3b50
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
leaq 0x8a8b5(%rip), %rsi     # 0x183c77
leaq 0xba7a7(%rip), %rdx     # 0x1b3b70
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xf9425
movq 0xbabe4(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64c68(%rip), %rsi     # 0x15e066
leaq 0x7982d(%rip), %rdx     # 0x172c32
leaq 0x830bc(%rip), %rcx     # 0x17c4c8
leaq 0x830d7(%rip), %r8      # 0x17c4ea
movl $0x6e, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf9427
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_node_iterator_lua.c
// Function: feature_node_iterator_lua_next
static int feature_node_iterator_lua_next(lua_State *L)
{
  GtFeatureNodeIterator **fni;
  GtFeatureNode *fn;
  fni = check_gt_feature_node_iterator(L, 1);
  fn = gt_feature_node_iterator_next(*fni);
  if (fn)
    gt_lua_genome_node_push(L, gt_genome_node_ref((GtGenomeNode*) fn));
  else
    lua_pushnil(L);
  return 1;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rdi
movl $0x1, %esi
leaq 0x83076(%rip), %rdx     # 0x17c510
callq 0x559c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq (%rax), %rdi
callq 0x24bd0
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
je 0xf94e1
movq 0x20(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
callq 0x25140
movq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0xaade0
jmp 0xf94eb
movq 0x20(%rsp), %rdi
callq 0x506a0
movl $0x1, %eax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_node_iterator_lua.c
// Function: feature_node_iterator_lua_new
static int feature_node_iterator_lua_new(lua_State *L)
{
  GtFeatureNodeIterator **fni;
  GtFeatureNode **fn;
  gt_assert(L);
  fn = (GtFeatureNode**) check_genome_node(L, 1);
  fni = lua_newuserdata(L, sizeof (GtFeatureNodeIterator*));
  gt_assert(fni);
  *fni = gt_feature_node_iterator_new(*fn);
  luaL_getmetatable(L, GENOME_NODE_ITERATOR_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9549
movq 0xbaac0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64b44(%rip), %rsi     # 0x15e066
leaq 0x718d5(%rip), %rdx     # 0x16adfe
leaq 0x83002(%rip), %rcx     # 0x17c532
leaq 0x82fb3(%rip), %r8      # 0x17c4ea
movl $0x20, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf954b
movq 0x10(%rsp), %rdi
movl $0x1, %esi
leaq 0x7a0db(%rip), %rdx     # 0x173637
callq 0x559c0
movq %rax, (%rsp)
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
jne 0xf95b9
movq 0xbaa50(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64ad4(%rip), %rsi     # 0x15e066
leaq 0x693cb(%rip), %rdx     # 0x162964
leaq 0x82f92(%rip), %rcx     # 0x17c532
leaq 0x82f43(%rip), %r8      # 0x17c4ea
movl $0x23, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf95bb
movq (%rsp), %rax
movq (%rax), %rdi
callq 0x248a0
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x82f2d(%rip), %rdx     # 0x17c510
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_node_iterator_lua.c
// Function: feature_node_iterator_lua_new_direct
static int feature_node_iterator_lua_new_direct(lua_State *L)
{
  GtFeatureNodeIterator **fni;
  GtFeatureNode **fn;
  gt_assert(L);
  fn = (GtFeatureNode**) check_genome_node(L, 1);
  fni = lua_newuserdata(L, sizeof (GtFeatureNodeIterator*));
  gt_assert(fni);
  *fni = gt_feature_node_iterator_new_direct(*fn);
  luaL_getmetatable(L, GENOME_NODE_ITERATOR_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9659
movq 0xba9b0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64a34(%rip), %rsi     # 0x15e066
leaq 0x717c5(%rip), %rdx     # 0x16adfe
leaq 0x82f10(%rip), %rcx     # 0x17c550
leaq 0x82ea3(%rip), %r8      # 0x17c4ea
movl $0x2e, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf965b
movq 0x10(%rsp), %rdi
movl $0x1, %esi
leaq 0x79fcb(%rip), %rdx     # 0x173637
callq 0x559c0
movq %rax, (%rsp)
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
jne 0xf96c9
movq 0xba940(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x649c4(%rip), %rsi     # 0x15e066
leaq 0x692bb(%rip), %rdx     # 0x162964
leaq 0x82ea0(%rip), %rcx     # 0x17c550
leaq 0x82e33(%rip), %r8      # 0x17c4ea
movl $0x31, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf96cb
movq (%rsp), %rax
movq (%rax), %rdi
callq 0x24a80
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x82e1d(%rip), %rdx     # 0x17c510
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_stream_lua.c
// Function: gt_lua_open_feature_stream
int gt_lua_open_feature_stream(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_register(L, "gt", feature_stream_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9769
movq 0xba8a0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64924(%rip), %rsi     # 0x15e066
leaq 0x716b5(%rip), %rdx     # 0x16adfe
leaq 0x82e25(%rip), %rcx     # 0x17c575
leaq 0x82e39(%rip), %r8      # 0x17c590
movl $0x31, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf976b
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x8a4f2(%rip), %rsi     # 0x183c77
leaq 0xba414(%rip), %rdx     # 0x1b3ba0
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xf97e8
movq 0xba821(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x648a5(%rip), %rsi     # 0x15e066
leaq 0x7946a(%rip), %rdx     # 0x172c32
leaq 0x82da6(%rip), %rcx     # 0x17c575
leaq 0x82dba(%rip), %r8      # 0x17c590
movl $0x37, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf97ea
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_stream_lua.c
// Function: feature_stream_lua_new
static int feature_stream_lua_new(lua_State *L)
{
  GtNodeStream **feature_stream, **in_stream;
  GtFeatureIndex **feature_index;
  feature_stream = lua_newuserdata(L, sizeof (GtNodeStream*));
  gt_assert(feature_stream);
  in_stream = check_genome_stream(L, 1);
  feature_index = check_feature_index(L, 2);
  *feature_stream = gt_feature_stream_new(*in_stream, *feature_index);
  luaL_getmetatable(L, GENOME_STREAM_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x18(%rsp)
cmpq $0x0, 0x18(%rsp)
jne 0xf985d
movq 0xba7ac(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64830(%rip), %rsi     # 0x15e066
leaq 0x82d44(%rip), %rdx     # 0x17c581
leaq 0x82d7e(%rip), %rcx     # 0x17c5c2
leaq 0x82d45(%rip), %r8      # 0x17c590
movl $0x1e, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf985f
movq 0x20(%rsp), %rdi
movl $0x1, %esi
leaq 0x7a638(%rip), %rdx     # 0x173ea8
callq 0x559c0
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rdi
movl $0x2, %esi
leaq 0x821f2(%rip), %rdx     # 0x17ba7d
callq 0x559c0
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rax
movq (%rax), %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rsi
callq 0x151990
movq %rax, %rcx
movq 0x18(%rsp), %rax
movq %rcx, (%rax)
movq 0x20(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x7a5e2(%rip), %rdx     # 0x173ea8
callq 0x51640
movq 0x20(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
nop
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_visitor_lua.c
// Function: gt_lua_open_feature_visitor
int gt_lua_open_feature_visitor(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_register(L, "gt", feature_visitor_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9939
movq 0xba6d0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64754(%rip), %rsi     # 0x15e066
leaq 0x714e5(%rip), %rdx     # 0x16adfe
leaq 0x82cb9(%rip), %rcx     # 0x17c5d9
leaq 0x82cce(%rip), %r8      # 0x17c5f5
movl $0x30, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf993b
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x8a322(%rip), %rsi     # 0x183c77
leaq 0xba264(%rip), %rdx     # 0x1b3bc0
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xf99b8
movq 0xba651(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x646d5(%rip), %rsi     # 0x15e066
leaq 0x7929a(%rip), %rdx     # 0x172c32
leaq 0x82c3a(%rip), %rcx     # 0x17c5d9
leaq 0x82c4f(%rip), %r8      # 0x17c5f5
movl $0x36, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf99ba
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/feature_visitor_lua.c
// Function: feature_visitor_lua_new
static int feature_visitor_lua_new(lua_State *L)
{
  GtNodeVisitor **feature_visitor;
  GtFeatureIndex **feature_index;
  feature_visitor = lua_newuserdata(L, sizeof (GtNodeVisitor*));
  gt_assert(feature_visitor);
  feature_index = check_feature_index(L, 1);
  *feature_visitor = gt_feature_visitor_new(*feature_index);
  luaL_getmetatable(L, GENOME_VISITOR_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
jne 0xf9a2d
movq 0xba5dc(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64660(%rip), %rsi     # 0x15e066
leaq 0x82bd8(%rip), %rdx     # 0x17c5e5
leaq 0x82c01(%rip), %rcx     # 0x17c615
leaq 0x82bda(%rip), %r8      # 0x17c5f5
movl $0x1e, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf9a2f
movq 0x10(%rsp), %rdi
movl $0x1, %esi
leaq 0x8203d(%rip), %rdx     # 0x17ba7d
callq 0x559c0
movq %rax, (%rsp)
movq (%rsp), %rax
movq (%rax), %rdi
callq 0x25060
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x79d11(%rip), %rdx     # 0x173782
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x18, %rsp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: gt_lua_custom_stream_class
const GtNodeStreamClass* gt_lua_custom_stream_class(void)
{
  static const GtNodeStreamClass *nsc = NULL;
  gt_class_alloc_lock_enter();
  if (!nsc) {
    nsc = gt_node_stream_class_new(sizeof (GtLuaCustomStream),
                                   NULL,
                                   lua_custom_stream_next);
  }
  gt_class_alloc_lock_leave();
  return nsc;
}

// Assembly:
pushq %rax
callq 0x7b730
cmpq $0x0, 0xbcbb2(%rip)     # 0x1b6650
jne 0xf9abc
movl $0x28, %edi
xorl %eax, %eax
movl %eax, %esi
leaq 0x20(%rip), %rdx        # 0xf9ad0
callq 0x344e0
movq %rax, 0xbcb94(%rip)     # 0x1b6650
callq 0x7b790
movq 0xbcb88(%rip), %rax     # 0x1b6650
popq %rcx
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: gt_lua_open_genome_stream
int gt_lua_open_genome_stream(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_newmetatable(L, GENOME_STREAM_METATABLE);
  /* metatable.__index = metatable */
  /* lua_pushvalue(L, -1); */ /* duplicate the metatable */
  /* lua_setfield(L, -2, "__index"); */
  /* set its _gc field */
  lua_pushstring(L, "__gc");
  lua_pushcfunction(L, gt_node_stream_lua_delete);
  lua_settable(L, -3);
  lua_pushstring(L, "__index");
  lua_pushcfunction(L, custom_stream_lua_index);
  lua_settable(L, -3);
  lua_pushstring(L, "__newindex");
  lua_pushcfunction(L, custom_stream_lua_newindex);
  lua_settable(L, -3);
  /* register functions */
  luaL_register(L, NULL, gt_node_stream_lib_m);
  lua_pop(L, 1);
  luaL_register(L, "gt", gt_node_stream_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xf9db9
movq 0xba250(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x642d4(%rip), %rsi     # 0x15e066
leaq 0x71065(%rip), %rdx     # 0x16adfe
leaq 0x8288d(%rip), %rcx     # 0x17c62d
leaq 0x828a0(%rip), %r8      # 0x17c647
movl $0x129, %r9d            # imm = 0x129
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf9dbb
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x7a0d3(%rip), %rsi     # 0x173ea8
callq 0x55930
movq 0x10(%rsp), %rdi
leaq 0x711f9(%rip), %rsi     # 0x16afdf
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x129(%rip), %rsi       # 0xf9f20
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
leaq 0x7186e(%rip), %rsi     # 0x16b687
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x136(%rip), %rsi       # 0xf9f60
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
leaq 0x71843(%rip), %rsi     # 0x16b68f
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x1b3(%rip), %rsi       # 0xfa010
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
leaq 0xb9d5d(%rip), %rdx     # 0x1b3be0
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
leaq 0x89dd4(%rip), %rsi     # 0x183c77
leaq 0xb9d56(%rip), %rdx     # 0x1b3c00
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xf9f06
movq 0xba103(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x64187(%rip), %rsi     # 0x15e066
leaq 0x78d4c(%rip), %rdx     # 0x172c32
leaq 0x82740(%rip), %rcx     # 0x17c62d
leaq 0x82753(%rip), %r8      # 0x17c647
movl $0x140, %r9d            # imm = 0x140
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xf9f08
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: custom_stream_lua_index
static int custom_stream_lua_index(lua_State* L)
{
  lua_getfenv(L, -2);
  lua_pushvalue(L, -2);
  lua_rawget(L, -2);
  if (lua_isnoneornil(L, -1) == 0) {
      return 1;
  }
  lua_pop(L, 2);

  /* check the metatable */
  lua_getmetatable(L, -2);
  lua_pushvalue(L, -2);
  lua_rawget(L, -2);

  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x8(%rsp)
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x51bf0
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f790
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x516f0
movq 0x8(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4f800
cmpl $0x0, %eax
setle %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0xf9fbf
movl $0x1, 0x14(%rsp)
jmp 0xfa003
movq 0x8(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x4f100
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x51b00
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f790
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x516f0
movl $0x1, 0x14(%rsp)
movl 0x14(%rsp), %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: custom_stream_lua_newindex
static int custom_stream_lua_newindex(lua_State* L)
{
  lua_getfenv(L, -3);
  lua_pushvalue(L, -3);
  lua_pushvalue(L, -3);
  lua_rawset(L, -3);
  return 0;
}

// Assembly:
pushq %rax
movq %rdi, (%rsp)
movq (%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51bf0
movq (%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x4f790
movq (%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x4f790
movq (%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
xorl %eax, %eax
popq %rcx
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: gt_node_stream_lua_next_tree
static int gt_node_stream_lua_next_tree(lua_State *L)
{
  GtNodeStream **gs = check_genome_stream(L, 1);
  GtGenomeNode *gn;
  GtError *err = gt_error_new();
  if (gt_node_stream_next(*gs, &gn, err))
    return gt_lua_error(L, err); /* handle error */
  else if (gn)
    gt_lua_genome_node_push(L, gn);
  else
    lua_pushnil(L);
  gt_error_delete(err);
  return 1;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq 0x18(%rsp), %rdi
movl $0x1, %esi
leaq 0x79e2e(%rip), %rdx     # 0x173ea8
callq 0x559c0
movq %rax, 0x10(%rsp)
callq 0xc0b0
movq %rax, (%rsp)
movq 0x10(%rsp), %rax
movq (%rax), %rdi
movq (%rsp), %rdx
leaq 0x8(%rsp), %rsi
callq 0x34790
cmpl $0x0, %eax
je 0xfa0bc
movq 0x18(%rsp), %rdi
movq (%rsp), %rsi
callq 0xe84e0
movl %eax, 0x24(%rsp)
jmp 0xfa0f2
cmpq $0x0, 0x8(%rsp)
je 0xfa0d5
movq 0x18(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0xaade0
jmp 0xfa0df
movq 0x18(%rsp), %rdi
callq 0x506a0
jmp 0xfa0e1
movq (%rsp), %rdi
callq 0xc490
movl $0x1, 0x24(%rsp)
movl 0x24(%rsp), %eax
addq $0x28, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: gff3_in_stream_lua_new_sorted
static int gff3_in_stream_lua_new_sorted(lua_State *L)
{
  GtNodeStream **gs;
  const char *filename = NULL;
  gt_assert(L);
  lua_settop(L, 1);
  /* get/check parameters */
  if (!lua_isnil(L, 1)) {
    filename = luaL_checkstring(L, 1);
    luaL_argcheck(L, gt_file_exists(filename), 1, "file does not exist");
  }
  /* construct object */
  gs = lua_newuserdata(L, sizeof (GtNodeStream*));
  *gs = gt_gff3_in_stream_new_sorted(filename);
  gt_assert(*gs);
  luaL_getmetatable(L, GENOME_STREAM_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq $0x0, 0x10(%rsp)
cmpq $0x0, 0x20(%rsp)
jne 0xfa152
movq 0xb9eb7(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63f3b(%rip), %rsi     # 0x15e066
leaq 0x70ccc(%rip), %rdx     # 0x16adfe
leaq 0x82627(%rip), %rcx     # 0x17c760
leaq 0x82507(%rip), %r8      # 0x17c647
movl $0x23, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfa154
movq 0x20(%rsp), %rdi
movl $0x1, %esi
callq 0x4f100
movq 0x20(%rsp), %rdi
movl $0x1, %esi
callq 0x4f800
cmpl $0x0, %eax
je 0xfa1ca
movq 0x20(%rsp), %rdi
movl $0x1, %esi
xorl %eax, %eax
movl %eax, %edx
callq 0x558e0
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rdi
callq 0x84330
movb %al, %cl
movb $0x1, %al
testb $0x1, %cl
movb %al, 0xf(%rsp)
jne 0xfa1c6
movq 0x20(%rsp), %rdi
movl $0x1, %esi
leaq 0x825c7(%rip), %rdx     # 0x17c77e
callq 0x55420
cmpl $0x0, %eax
setne %al
movb %al, 0xf(%rsp)
movb 0xf(%rsp), %al
movq 0x20(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x18(%rsp)
movq 0x10(%rsp), %rdi
callq 0x279c0
movq %rax, %rcx
movq 0x18(%rsp), %rax
movq %rcx, (%rax)
movq 0x18(%rsp), %rax
cmpq $0x0, (%rax)
jne 0xfa236
movq 0xb9dd3(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63e57(%rip), %rsi     # 0x15e066
leaq 0x8257c(%rip), %rdx     # 0x17c792
leaq 0x82543(%rip), %rcx     # 0x17c760
leaq 0x82423(%rip), %r8      # 0x17c647
movl $0x2d, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfa238
movq 0x20(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x79c5f(%rip), %rdx     # 0x173ea8
callq 0x51640
movq 0x20(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x28, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_stream_lua.c
// Function: gff3_out_stream_lua_new
static int gff3_out_stream_lua_new(lua_State *L)
{
  GtFile *outfile = NULL;
  GtError *err = NULL;
  GtNodeStream **out_stream, **in_stream;
  gt_assert(L);
  in_stream = check_genome_stream(L, 1);
  lua_settop(L, 2);
  if (!lua_isnil(L, 2)) {
    const char *filename = luaL_checkstring(L, 2);
    err = gt_error_new();
    outfile = gt_file_new(filename, "w+", err);
    if (!outfile)
      return gt_lua_error(L, err);
  }
  /* construct object */
  out_stream = lua_newuserdata(L, sizeof (GtNodeStream*));
  *out_stream = gt_gff3_out_stream_new(*in_stream, outfile);
  gt_assert(*out_stream);
  luaL_getmetatable(L, GENOME_STREAM_METATABLE);
  lua_setmetatable(L, -2);
  gt_file_delete(outfile);
  gt_error_delete(err);
  return 1;
}

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq $0x0, 0x20(%rsp)
movq $0x0, 0x18(%rsp)
cmpq $0x0, 0x28(%rsp)
jne 0xfa30b
movq 0xb9cfe(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63d82(%rip), %rsi     # 0x15e066
leaq 0x70b13(%rip), %rdx     # 0x16adfe
leaq 0x824fc(%rip), %rcx     # 0x17c7ee
leaq 0x8234e(%rip), %r8      # 0x17c647
movl $0x38, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfa30d
movq 0x28(%rsp), %rdi
movl $0x1, %esi
leaq 0x79b8a(%rip), %rdx     # 0x173ea8
callq 0x559c0
movq %rax, 0x8(%rsp)
movq 0x28(%rsp), %rdi
movl $0x2, %esi
callq 0x4f100
movq 0x28(%rsp), %rdi
movl $0x2, %esi
callq 0x4f800
cmpl $0x0, %eax
je 0xfa3a8
movq 0x28(%rsp), %rdi
movl $0x2, %esi
xorl %eax, %eax
movl %eax, %edx
callq 0x558e0
movq %rax, (%rsp)
callq 0xc0b0
movq %rax, 0x18(%rsp)
movq (%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x6e50d(%rip), %rsi     # 0x168889
callq 0x82e30
movq %rax, 0x20(%rsp)
cmpq $0x0, 0x20(%rsp)
jne 0xfa3a6
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rsi
callq 0xe84e0
movl %eax, 0x34(%rsp)
jmp 0xfa45f
jmp 0xfa3a8
movq 0x28(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x10(%rsp)
movq 0x8(%rsp), %rax
movq (%rax), %rdi
movq 0x20(%rsp), %rsi
callq 0x151b40
movq %rax, %rcx
movq 0x10(%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rax
cmpq $0x0, (%rax)
jne 0xfa41c
movq 0xb9bed(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63c71(%rip), %rsi     # 0x15e066
leaq 0x8240a(%rip), %rdx     # 0x17c806
leaq 0x823eb(%rip), %rcx     # 0x17c7ee
leaq 0x8223d(%rip), %r8      # 0x17c647
movl $0x45, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfa41e
movq 0x28(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x79a79(%rip), %rdx     # 0x173ea8
callq 0x51640
movq 0x28(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movq 0x20(%rsp), %rdi
callq 0x83f40
movq 0x18(%rsp), %rdi
callq 0xc490
movl $0x1, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: lua_custom_visitor_class
const GtNodeVisitorClass* lua_custom_visitor_class()
{
  static GtNodeVisitorClass *nvc = NULL;
  gt_class_alloc_lock_enter();
  if (!nvc) {
    nvc = gt_node_visitor_class_new(sizeof (GtLuaCustomVisitor),
                                    NULL,
                                    lua_custom_visitor_visit_comment,
                                    lua_custom_visitor_visit_feature ,
                                    lua_custom_visitor_visit_region,
                                    lua_custom_visitor_visit_sequence,
                                    lua_custom_visitor_visit_eof);
    gt_node_visitor_class_set_meta_node_func(nvc,
                                             lua_custom_visitor_visit_meta);
  }
  gt_class_alloc_lock_leave();
  return nvc;
}

// Assembly:
pushq %rax
callq 0x7b730
cmpq $0x0, 0xbbdea(%rip)     # 0x1b6658
jne 0xfa8bf
movl $0x18, %edi
xorl %eax, %eax
movl %eax, %esi
leaq 0x50(%rip), %rdx        # 0xfa8d0
leaq 0x89(%rip), %rcx        # 0xfa910
leaq 0xc2(%rip), %r8         # 0xfa950
leaq 0xfb(%rip), %r9         # 0xfa990
leaq 0x134(%rip), %rax       # 0xfa9d0
movq %rax, (%rsp)
callq 0x34b70
movq %rax, 0xbbdac(%rip)     # 0x1b6658
movq 0xbbda5(%rip), %rdi     # 0x1b6658
leaq 0x156(%rip), %rsi       # 0xfaa10
callq 0x34c50
callq 0x7b790
movq 0xbbd8d(%rip), %rax     # 0x1b6658
popq %rcx
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: gt_lua_open_genome_visitor
int gt_lua_open_genome_visitor(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_newmetatable(L, GENOME_VISITOR_METATABLE);
  /* metatable.__index = metatable */
  /* lua_pushvalue(L, -1); */ /* duplicate the metatable */
  /* lua_setfield(L, -2, "__index"); */
  lua_pushstring(L, "__gc");
  lua_pushcfunction(L, gt_node_visitor_lua_delete);
  lua_settable(L, -3);
  lua_pushstring(L, "__index");
  lua_pushcfunction(L, custom_visitor_lua_index);
  lua_settable(L, -3);
  lua_pushstring(L, "__newindex");
  lua_pushcfunction(L, custom_visitor_lua_newindex);
  lua_settable(L, -3);
  lua_pop(L, 1);
  /* register functions */
  luaL_register(L, "gt", gt_node_visitor_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfaa99
movq 0xb9570(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x635f4(%rip), %rsi     # 0x15e066
leaq 0x70385(%rip), %rdx     # 0x16adfe
leaq 0x81db4(%rip), %rcx     # 0x17c834
leaq 0x81dc8(%rip), %r8      # 0x17c84f
movl $0xdd, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfaa9b
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x78ccd(%rip), %rsi     # 0x173782
callq 0x55930
movq 0x10(%rsp), %rdi
leaq 0x70519(%rip), %rsi     # 0x16afdf
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x109(%rip), %rsi       # 0xfabe0
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
leaq 0x70b8e(%rip), %rsi     # 0x16b687
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x116(%rip), %rsi       # 0xfac20
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
leaq 0x70b63(%rip), %rsi     # 0x16b68f
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0x193(%rip), %rsi       # 0xfacd0
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
leaq 0x89109(%rip), %rsi     # 0x183c77
leaq 0xb90eb(%rip), %rdx     # 0x1b3c60
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xfabd1
movq 0xb9438(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x634bc(%rip), %rsi     # 0x15e066
leaq 0x78081(%rip), %rdx     # 0x172c32
leaq 0x81c7c(%rip), %rcx     # 0x17c834
leaq 0x81c90(%rip), %r8      # 0x17c84f
movl $0xf2, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfabd3
movl $0x1, %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: custom_visitor_lua_index
static int custom_visitor_lua_index(lua_State* L)
{
  lua_getfenv(L, -2);
  lua_pushvalue(L, -2);
  lua_rawget(L, -2);
  if (lua_isnoneornil(L, -1) == 0) {
      return 1;
  }
  lua_pop(L, 2);

  /* check the metatable */
  lua_getmetatable(L, -2);
  lua_pushvalue(L, -2);
  lua_rawget(L, -2);

  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x8(%rsp)
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x51bf0
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f790
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x516f0
movq 0x8(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4f800
cmpl $0x0, %eax
setle %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0xfac7f
movl $0x1, 0x14(%rsp)
jmp 0xfacc3
movq 0x8(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x4f100
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x51b00
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f790
movq 0x8(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x516f0
movl $0x1, 0x14(%rsp)
movl 0x14(%rsp), %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: gt_lua_genome_visitor_push
void gt_lua_genome_visitor_push(lua_State *L, GtNodeVisitor *gv)
{
  GtNodeVisitor **gv_lua;
  gt_assert(L && gv);
  gv_lua = lua_newuserdata(L, sizeof (GtNodeVisitor**));
  *gv_lua = gv;
  luaL_getmetatable(L, GENOME_VISITOR_METATABLE);
  lua_setmetatable(L, -2);
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq %rsi, 0x8(%rsp)
cmpq $0x0, 0x10(%rsp)
je 0xfad3e
cmpq $0x0, 0x8(%rsp)
jne 0xfad76
movq 0xb9293(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63317(%rip), %rsi     # 0x15e066
leaq 0x81b18(%rip), %rdx     # 0x17c86e
leaq 0x81b19(%rip), %rcx     # 0x17c876
leaq 0x81aeb(%rip), %r8      # 0x17c84f
movl $0xf9, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfad78
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, (%rsp)
movq 0x8(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x789da(%rip), %rdx     # 0x173782
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: gff3_visitor_lua_new
static int gff3_visitor_lua_new(lua_State *L)
{
  GtNodeVisitor **gv;
  gt_assert(L);
  /* construct object */
  gv = lua_newuserdata(L, sizeof (GtNodeVisitor*));
  *gv = gt_gff3_visitor_new(NULL);
  gt_assert(*gv);
  luaL_getmetatable(L, GENOME_VISITOR_METATABLE);
  lua_setmetatable(L, -2);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfb079
movq 0xb8f90(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x63014(%rip), %rsi     # 0x15e066
leaq 0x6fda5(%rip), %rdx     # 0x16adfe
leaq 0x81900(%rip), %rcx     # 0x17c960
leaq 0x817e8(%rip), %r8      # 0x17c84f
movl $0x2c, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb07b
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x8(%rsp)
xorl %eax, %eax
movl %eax, %edi
callq 0x31e50
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x8(%rsp), %rax
cmpq $0x0, (%rax)
jne 0xfb0e6
movq 0xb8f23(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62fa7(%rip), %rsi     # 0x15e066
leaq 0x818af(%rip), %rdx     # 0x17c975
leaq 0x81893(%rip), %rcx     # 0x17c960
leaq 0x8177b(%rip), %r8      # 0x17c84f
movl $0x30, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb0e8
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x78689(%rip), %rdx     # 0x173782
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/genome_visitor_lua.c
// Function: custom_visitor_lua_new
static int custom_visitor_lua_new(lua_State *L)
{
  GtNodeVisitor **gv;
  GtLuaCustomVisitor *lcv;
  gt_assert(L);

  gv = lua_newuserdata(L, sizeof (GtNodeVisitor*));
  gt_assert(gv);
  *gv = gt_node_visitor_create(lua_custom_visitor_class());
  gt_assert(*gv);
  lcv = lua_custom_visitor_cast(*gv);
  luaL_getmetatable(L, GENOME_VISITOR_METATABLE);
  lua_setmetatable(L, -2);

  /* set clean env for this visitor */
  lua_newtable(L);
  lua_setfenv(L, -2);
  lcv->L = L;
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfb169
movq 0xb8ea0(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62f24(%rip), %rsi     # 0x15e066
leaq 0x6fcb5(%rip), %rdx     # 0x16adfe
leaq 0x81829(%rip), %rcx     # 0x17c979
leaq 0x816f8(%rip), %r8      # 0x17c84f
movl $0xb9, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb16b
movq 0x10(%rsp), %rdi
movl $0x8, %esi
callq 0x53950
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
jne 0xfb1bf
movq 0xb8e4a(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62ece(%rip), %rsi     # 0x15e066
leaq 0x816d4(%rip), %rdx     # 0x17c873
leaq 0x817d3(%rip), %rcx     # 0x17c979
leaq 0x816a2(%rip), %r8      # 0x17c84f
movl $0xbc, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb1c1
callq 0xfa860
movq %rax, %rdi
callq 0x34cc0
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x8(%rsp), %rax
cmpq $0x0, (%rax)
jne 0xfb21c
movq 0xb8ded(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62e71(%rip), %rsi     # 0x15e066
leaq 0x81779(%rip), %rdx     # 0x17c975
leaq 0x81776(%rip), %rcx     # 0x17c979
leaq 0x81645(%rip), %r8      # 0x17c84f
movl $0xbe, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb21e
callq 0xfa860
movq %rax, %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rsi
callq 0x34d50
movq %rax, (%rsp)
movq 0x10(%rsp), %rdi
movl $0xffffd8f0, %esi       # imm = 0xFFFFD8F0
leaq 0x7853a(%rip), %rdx     # 0x173782
callq 0x51640
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x523f0
movq 0x10(%rsp), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x519c0
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x52550
movq 0x10(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x10(%rax)
movl $0x1, %eax
addq $0x18, %rsp
retq
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/image_info_lua.c
// Function: gt_lua_open_imageinfo
int gt_lua_open_imageinfo(lua_State *L)
{
#ifndef NDEBUG
  int stack_size;
#endif
  gt_assert(L);
#ifndef NDEBUG
  stack_size = lua_gettop(L);
#endif
  luaL_newmetatable(L, IMAGEINFO_METATABLE);
  lua_pushvalue(L, -1); /* duplicate the metatable */
  lua_setfield(L, -2, "__index");
  /* set its _gc field */
  lua_pushstring(L, "__gc");
  lua_pushcfunction(L, imageinfo_lua_delete);
  lua_settable(L, -3);
  /* register functions */
  luaL_register(L, NULL, imageinfo_lib_m);
  lua_pop(L, 1);
  luaL_register(L, "gt", imageinfo_lib_f);
  lua_pop(L, 1);
  gt_assert(lua_gettop(L) == stack_size);
  return 1;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfb2d9
movq 0xb8d30(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62db4(%rip), %rsi     # 0x15e066
leaq 0x6fb45(%rip), %rdx     # 0x16adfe
leaq 0x816d0(%rip), %rcx     # 0x17c990
leaq 0x816df(%rip), %r8      # 0x17c9a6
movl $0x94, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb2db
movq 0x10(%rsp), %rdi
callq 0x4f0e0
movl %eax, 0xc(%rsp)
movq 0x10(%rsp), %rdi
leaq 0x80674(%rip), %rsi     # 0x17b969
callq 0x55930
movq 0x10(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x4f790
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
leaq 0x7036d(%rip), %rdx     # 0x16b687
callq 0x51fc0
movq 0x10(%rsp), %rdi
leaq 0x6fcb4(%rip), %rsi     # 0x16afdf
callq 0x50970
movq 0x10(%rsp), %rdi
leaq 0xc4(%rip), %rsi        # 0xfb400
xorl %edx, %edx
callq 0x51120
movq 0x10(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x51d10
movq 0x10(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
leaq 0xb892e(%rip), %rdx     # 0x1b3c90
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
leaq 0x888f5(%rip), %rsi     # 0x183c77
leaq 0xb8947(%rip), %rdx     # 0x1b3cd0
callq 0x55e30
movq 0x10(%rsp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x4f100
movq 0x10(%rsp), %rdi
callq 0x4f0e0
cmpl 0xc(%rsp), %eax
je 0xfb3e5
movq 0xb8c24(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62ca8(%rip), %rsi     # 0x15e066
leaq 0x7786d(%rip), %rdx     # 0x172c32
leaq 0x815c4(%rip), %rcx     # 0x17c990
leaq 0x815d3(%rip), %r8      # 0x17c9a6
movl $0xa4, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb3e7
movl $0x1, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/image_info_lua.c
// Function: imageinfo_lua_get_height
static int imageinfo_lua_get_height(lua_State *L)
{
  GtImageInfo **ii;
  GtUword height;
  GtError *err = NULL;
  ii = check_imageinfo(L, 1);
  gt_assert(ii);
  height = gt_image_info_get_height(*ii);
  if (height > DBL_MAX)
  {
    err = gt_error_new();
    gt_error_set(err, "image height exceeds %f!", DBL_MAX);
    return gt_lua_error(L, err);
  }
  else
    lua_pushnumber(L, (double) height);
  gt_error_delete(err);
  return 0;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq $0x0, (%rsp)
movq 0x18(%rsp), %rdi
movl $0x1, %esi
leaq 0x80507(%rip), %rdx     # 0x17b969
callq 0x559c0
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfb4ac
movq 0xb8b5d(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62be1(%rip), %rsi     # 0x15e066
leaq 0x7a45d(%rip), %rdx     # 0x1758e9
leaq 0x8153a(%rip), %rcx     # 0x17c9cd
leaq 0x8150c(%rip), %r8      # 0x17c9a6
movl $0x2f, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb4ae
movq 0x10(%rsp), %rax
movq (%rax), %rdi
callq 0x452f0
movl %eax, %eax
movq %rax, 0x8(%rsp)
movaps 0x62fb7(%rip), %xmm1    # 0x15e480
movq 0x8(%rsp), %xmm0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x62fb5(%rip), %xmm1    # 0x15e490
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movsd 0x6330e(%rip), %xmm1    # 0x15e800
ucomisd %xmm1, %xmm0
jbe 0xfb52f
callq 0xc0b0
movq %rax, (%rsp)
movq (%rsp), %rdi
leaq 0x814da(%rip), %rsi     # 0x17c9e6
movsd 0x632ec(%rip), %xmm0    # 0x15e800
movb $0x1, %al
callq 0xc0d0
movq 0x18(%rsp), %rdi
movq (%rsp), %rsi
callq 0xe84e0
movl %eax, 0x24(%rsp)
jmp 0xfb572
movq 0x18(%rsp), %rdi
movaps 0x62f45(%rip), %xmm1    # 0x15e480
movq 0x8(%rsp), %xmm0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x62f43(%rip), %xmm1    # 0x15e490
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
callq 0x506d0
movq (%rsp), %rdi
callq 0xc490
movl $0x0, 0x24(%rsp)
movl 0x24(%rsp), %eax
addq $0x28, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/image_info_lua.c
// Function: imageinfo_lua_num_of_recmaps
static int imageinfo_lua_num_of_recmaps(lua_State *L)
{
  GtImageInfo **ii;
  GtUword nof_rm;
  GtError *err = NULL;
  ii = check_imageinfo(L, 1);
  gt_assert(ii);
  nof_rm = gt_image_info_num_of_rec_maps(*ii);
  if (nof_rm > DBL_MAX)
  {
    err = gt_error_new();
    gt_error_set(err, "number of recmaps exceeds %f!", DBL_MAX);
    return gt_lua_error(L, err);
  }
  else
    lua_pushnumber(L, (double) nof_rm);
  gt_error_delete(err);
  return 0;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq $0x0, (%rsp)
movq 0x18(%rsp), %rdi
movl $0x1, %esi
leaq 0x803c7(%rip), %rdx     # 0x17b969
callq 0x559c0
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0xfb5ec
movq 0xb8a1d(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62aa1(%rip), %rsi     # 0x15e066
leaq 0x7a31d(%rip), %rdx     # 0x1758e9
leaq 0x8142c(%rip), %rcx     # 0x17c9ff
leaq 0x813cc(%rip), %r8      # 0x17c9a6
movl $0x43, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb5ee
movq 0x10(%rsp), %rax
movq (%rax), %rdi
callq 0x451b0
movq %rax, 0x8(%rsp)
movaps 0x62e79(%rip), %xmm1    # 0x15e480
movq 0x8(%rsp), %xmm0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x62e77(%rip), %xmm1    # 0x15e490
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movsd 0x631d0(%rip), %xmm1    # 0x15e800
ucomisd %xmm1, %xmm0
jbe 0xfb66d
callq 0xc0b0
movq %rax, (%rsp)
movq (%rsp), %rdi
leaq 0x813d2(%rip), %rsi     # 0x17ca1c
movsd 0x631ae(%rip), %xmm0    # 0x15e800
movb $0x1, %al
callq 0xc0d0
movq 0x18(%rsp), %rdi
movq (%rsp), %rsi
callq 0xe84e0
movl %eax, 0x24(%rsp)
jmp 0xfb6b0
movq 0x18(%rsp), %rdi
movaps 0x62e07(%rip), %xmm1    # 0x15e480
movq 0x8(%rsp), %xmm0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x62e05(%rip), %xmm1    # 0x15e490
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
callq 0x506d0
movq (%rsp), %rdi
callq 0xc490
movl $0x0, 0x24(%rsp)
movl 0x24(%rsp), %eax
addq $0x28, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/image_info_lua.c
// Function: imageinfo_lua_recmaps_as_table
static int imageinfo_lua_recmaps_as_table(lua_State *L)
{
  GtImageInfo **ii;
  GtUword num, i;
  ii = check_imageinfo(L, 1);
  gt_assert(ii);
  num = gt_image_info_num_of_rec_maps(*ii);
  if (num>0)
  {
    lua_newtable(L);
    for (i=0;i<num;i++)
    {
      lua_pushnumber(L, i+1);
      push_recmap_as_table(L, gt_image_info_get_rec_map(*ii, i));
      lua_rawset(L, -3);
    }
  } else lua_pushnil(L);
  return 1;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rdi
movl $0x1, %esi
leaq 0x8028f(%rip), %rdx     # 0x17b969
callq 0x559c0
movq %rax, 0x18(%rsp)
cmpq $0x0, 0x18(%rsp)
jne 0xfb724
movq 0xb88e5(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x62969(%rip), %rsi     # 0x15e066
leaq 0x7a1e5(%rip), %rdx     # 0x1758e9
leaq 0x8132f(%rip), %rcx     # 0x17ca3a
leaq 0x81294(%rip), %r8      # 0x17c9a6
movl $0x6c, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb726
movq 0x18(%rsp), %rax
movq (%rax), %rdi
callq 0x451b0
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jbe 0xfb7ef
movq 0x20(%rsp), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x519c0
movq $0x0, 0x8(%rsp)
movq 0x8(%rsp), %rax
cmpq 0x10(%rsp), %rax
jae 0xfb7ed
movq 0x20(%rsp), %rdi
movq 0x8(%rsp), %rax
incq %rax
movq %rax, %xmm0
movaps 0x62cfc(%rip), %xmm1    # 0x15e480
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x62d00(%rip), %xmm1    # 0x15e490
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
callq 0x506d0
movq 0x20(%rsp), %rax
movq %rax, (%rsp)
movq 0x18(%rsp), %rax
movq (%rax), %rdi
movq 0x8(%rsp), %rsi
callq 0x45340
movq (%rsp), %rdi
movq %rax, %rsi
callq 0xfb810
movq 0x20(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
movq 0x8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x8(%rsp)
jmp 0xfb75b
jmp 0xfb7f9
movq 0x20(%rsp), %rdi
callq 0x506a0
movl $0x1, %eax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtlua/image_info_lua.c
// Function: push_recmap_as_table
static void push_recmap_as_table(lua_State *L, const GtRecMap *rm)
{
  gt_assert(rm);
  lua_newtable(L);
  lua_pushstring(L, "nw_x");
  lua_pushnumber(L, gt_rec_map_get_northwest_x(rm));
  lua_rawset(L, -3);
  lua_pushstring(L, "nw_y");
  lua_pushnumber(L, gt_rec_map_get_northwest_y(rm));
  lua_rawset(L, -3);
  lua_pushstring(L, "se_x");
  lua_pushnumber(L, gt_rec_map_get_southeast_x(rm));
  lua_rawset(L, -3);
  lua_pushstring(L, "se_y");
  lua_pushnumber(L, gt_rec_map_get_southeast_y(rm));
  lua_rawset(L, -3);
  lua_pushstring(L, "feature_ref");
  gt_lua_genome_node_push(L, gt_genome_node_ref((GtGenomeNode*)
                                            gt_rec_map_get_genome_feature(rm)));
  lua_rawset(L, -3);
}

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq %rsi, 0x28(%rsp)
cmpq $0x0, 0x28(%rsp)
jne 0xfb85e
movq 0xb87ab(%rip), %rax     # 0x1b3fd8
movq (%rax), %rdi
leaq 0x6282f(%rip), %rsi     # 0x15e066
leaq 0x78326(%rip), %rdx     # 0x173b64
leaq 0x81214(%rip), %rcx     # 0x17ca59
leaq 0x8115a(%rip), %r8      # 0x17c9a6
movl $0x53, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0xfb860
movq 0x30(%rsp), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x519c0
movq 0x30(%rsp), %rdi
leaq 0x811f4(%rip), %rsi     # 0x17ca6e
callq 0x50970
movq 0x30(%rsp), %rax
movq %rax, (%rsp)
movq 0x28(%rsp), %rdi
callq 0x474d0
movq (%rsp), %rdi
callq 0x506d0
movq 0x30(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
movq 0x30(%rsp), %rdi
leaq 0x811bd(%rip), %rsi     # 0x17ca73
callq 0x50970
movq 0x30(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x28(%rsp), %rdi
callq 0x47520
movq 0x8(%rsp), %rdi
callq 0x506d0
movq 0x30(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
movq 0x30(%rsp), %rdi
leaq 0x81184(%rip), %rsi     # 0x17ca78
callq 0x50970
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x28(%rsp), %rdi
callq 0x47580
movq 0x10(%rsp), %rdi
callq 0x506d0
movq 0x30(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
movq 0x30(%rsp), %rdi
leaq 0x8114b(%rip), %rsi     # 0x17ca7d
callq 0x50970
movq 0x30(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x28(%rsp), %rdi
callq 0x475e0
movq 0x18(%rsp), %rdi
callq 0x506d0
movq 0x30(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
movq 0x30(%rsp), %rdi
leaq 0x81112(%rip), %rsi     # 0x17ca82
callq 0x50970
movq 0x30(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x28(%rsp), %rdi
callq 0x47640
movq %rax, %rdi
callq 0x25140
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0xaade0
movq 0x30(%rsp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x52070
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)