// File: /workspace/github_c_makefile_star2_O1/bhk[P]tooltree/lua/../opensource/lua-5.2.3/src/loadlib.c
// Function: luaopen_package
LUAMOD_API int luaopen_package (lua_State *L) {
  /* create table CLIBS to keep track of loaded C libraries */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, CLIBS);
  lua_createtable(L, 0, 1);  /* metatable for CLIBS */
  lua_pushcfunction(L, gctm);
  lua_setfield(L, -2, "__gc");  /* set finalizer for CLIBS table */
  lua_setmetatable(L, -2);
  /* create `package' table */
  luaL_newlib(L, pk_funcs);
  createsearcherstable(L);
#if defined(LUA_COMPAT_LOADERS)
  lua_pushvalue(L, -1);  /* make a copy of 'searchers' table */
  lua_setfield(L, -3, "loaders");  /* put it in field `loaders' */
#endif
  lua_setfield(L, -2, "searchers");  /* put it in field 'searchers' */
  /* set field 'path' */
  setpath(L, "path", LUA_PATHVERSION, LUA_PATH, LUA_PATH_DEFAULT);
  /* set field 'cpath' */
  setpath(L, "cpath", LUA_CPATHVERSION, LUA_CPATH, LUA_CPATH_DEFAULT);
  /* store config information */
  lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATH_SEP "\n" LUA_PATH_MARK "\n"
                     LUA_EXEC_DIR "\n" LUA_IGMARK "\n");
  lua_setfield(L, -2, "config");
  /* set field `loaded' */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, "_LOADED");
  lua_setfield(L, -2, "loaded");
  /* set field `preload' */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, "_PRELOAD");
  lua_setfield(L, -2, "preload");
  lua_pushglobaltable(L);
  lua_pushvalue(L, -2);  /* set 'package' as upvalue for next lib */
  luaL_setfuncs(L, ll_funcs, 1);  /* open lib into global table */
  lua_pop(L, 1);  /* pop global table */
  return 1;  /* return 'package' table */
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0x11288(%rip), %rdx     # 0x20d59
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa162
xorl %r14d, %r14d
movl $0x1, %ebp
movq %rbx, %rdi
xorl %esi, %esi
movl $0x1, %edx
callq 0x81c0
leaq 0x1be(%rip), %rsi       # 0xfcb7
movq %rbx, %rdi
xorl %edx, %edx
callq 0x7f5d
leaq 0x110a5(%rip), %rdx     # 0x20baf
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x833f
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x84d7
movq %rbx, %rdi
xorl %esi, %esi
movl $0x2, %edx
callq 0x81c0
leaq 0x1c8a6(%rip), %rsi     # 0x2c3e0
movq %rbx, %rdi
xorl %edx, %edx
callq 0xa00f
movq %rbx, %rdi
movl $0x4, %esi
xorl %edx, %edx
callq 0x81c0
leaq 0x1c8d6(%rip), %r15     # 0x2c430
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7869
movq (%r14,%r15), %rsi
movq %rbx, %rdi
movl $0x1, %edx
callq 0x7f5d
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
movl %ebp, %edx
callq 0x840d
addq $0x8, %r14
incl %ebp
cmpq $0x20, %r14
jne 0xfb5a
leaq 0x111c6(%rip), %rdx     # 0x20d60
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x833f
leaq 0x1125d(%rip), %rsi     # 0x20e0b
leaq 0x111b5(%rip), %rdx     # 0x20d6a
leaq 0x111bb(%rip), %rcx     # 0x20d77
leaq 0x111bd(%rip), %r8      # 0x20d80
movq %rbx, %rdi
callq 0xfd18
leaq 0x11238(%rip), %rsi     # 0x20e0a
leaq 0x11237(%rip), %rdx     # 0x20e10
leaq 0x1123e(%rip), %rcx     # 0x20e1e
leaq 0x11241(%rip), %r8      # 0x20e28
movq %rbx, %rdi
callq 0xfd18
leaq 0x11277(%rip), %rsi     # 0x20e6d
movl $0xa, %edx
movq %rbx, %rdi
callq 0x7dc7
leaq 0x1126e(%rip), %rdx     # 0x20e78
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x833f
leaq 0x1091b(%rip), %rdx     # 0x20539
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa162
leaq 0x1124d(%rip), %rdx     # 0x20e7f
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x833f
leaq 0x10e1f(%rip), %rdx     # 0x20a65
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa162
leaq 0x1122c(%rip), %rdx     # 0x20e86
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x833f
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
movl $0x2, %edx
callq 0x8145
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7869
leaq 0x1c783(%rip), %rsi     # 0x2c410
movq %rbx, %rdi
movl $0x1, %edx
callq 0xa00f
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7697
movl $0x1, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq