// File: /workspace/github_c_makefile_star2_O2/bhk[P]tooltree/lua/../opensource/lua-5.2.3/src/lua.c
// Function: pmain
static int pmain (lua_State *L) {
  int argc = (int)lua_tointeger(L, 1);
  char **argv = (char **)lua_touserdata(L, 2);
  int script;
  int args[num_has];
  args[has_i] = args[has_v] = args[has_e] = args[has_E] = 0;
  if (argv[0] && argv[0][0]) progname = argv[0];
  script = collectargs(argv, args);
  if (script < 0) {  /* invalid arg? */
    print_usage(argv[-script]);
    return 0;
  }
  if (args[has_v]) print_version();
  if (args[has_E]) {  /* option '-E'? */
    lua_pushboolean(L, 1);  /* signal for libraries to ignore env. vars. */
    lua_setfield(L, LUA_REGISTRYINDEX, "LUA_NOENV");
  }
  /* open standard libraries */
  luaL_checkversion(L);
  lua_gc(L, LUA_GCSTOP, 0);  /* stop collector during initialization */
  luaL_openlibs(L);  /* open libraries */
  lua_gc(L, LUA_GCRESTART, 0);
  if (!args[has_E] && handle_luainit(L) != LUA_OK)
    return 0;  /* error running LUA_INIT */
  /* execute arguments -e and -l */
  if (!runargs(L, argv, (script > 0) ? script : argc)) return 0;
  /* execute main script (if there is one) */
  if (script && handle_script(L, argv, script) != LUA_OK) return 0;
  if (args[has_i])  /* -i option? */
    dotty(L);
  else if (script == 0 && !args[has_e] && !args[has_v]) {  /* no arguments? */
    if (lua_stdin_is_tty()) {
      print_version();
      dotty(L);
    }
    else dofile(L, NULL);  /* executes stdin as a file */
  }
  lua_pushboolean(L, 1);  /* signal no errors */
  return 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdi, %r13
xorl %ebx, %ebx
pushq $0x1
popq %rbp
movl %ebp, %esi
xorl %edx, %edx
callq 0x78a4
movq %rax, 0x10(%rsp)
pushq $0x2
popq %rsi
movq %r13, %rdi
callq 0x7a37
andl $0x0, 0x28(%rsp)
andl $0x0, 0x2c(%rsp)
movq %rax, 0x8(%rsp)
movq (%rax), %rax
testq %rax, %rax
je 0x6875
cmpb $0x0, (%rax)
je 0x6875
movq %rax, 0x26a93(%rip)     # 0x2d308
leaq 0x28(%rsp), %rdx
pushq $-0x1
popq %rcx
leaq 0x2c(%rsp), %rsi
xorl %r14d, %r14d
movl %ebp, %eax
movslq %eax, %rdi
movq 0x8(%rsp), %r8
movq (%r8,%rdi,8), %r8
xorl %r15d, %r15d
testq %r8, %r8
je 0x694c
cmpb $0x2d, (%r8)
jne 0x693f
movzbl 0x1(%r8), %r9d
cmpl $0x45, %r9d
je 0x6906
cmpl $0x65, %r9d
je 0x68d3
cmpl $0x69, %r9d
je 0x68f4
cmpl $0x6c, %r9d
je 0x68d5
cmpl $0x76, %r9d
jne 0x6916
cmpb $0x0, 0x2(%r8)
jmp 0x68fc
movl %ebp, %ebx
cmpb $0x0, 0x2(%r8)
jne 0x690f
movq 0x8(%rsp), %r8
movq 0x8(%r8,%rdi,8), %rdi
testq %rdi, %rdi
je 0x693d
cmpb $0x2d, (%rdi)
je 0x693d
incl %eax
jmp 0x690f
cmpb $0x0, 0x2(%r8)
movl %ebp, %r14d
movq %rsi, %rdi
je 0x6909
jmp 0x6c78
movq %rdx, %rdi
movl $0x1, (%rdi)
incl %eax
jmp 0x6887
testl %r9d, %r9d
je 0x693f
cmpl $0x2d, %r9d
jne 0x693d
cmpb $0x0, 0x2(%r8)
jne 0x6c78
movq 0x8(%rsp), %rcx
cmpq $0x0, 0x8(%rcx,%rdi,8)
je 0x694c
incl %eax
jmp 0x693f
negl %eax
movl %eax, %ecx
movl %eax, %r15d
testl %eax, %eax
js 0x6c78
movl 0x2c(%rsp), %eax
movl %eax, 0x34(%rsp)
testl %eax, %eax
je 0x695d
callq 0x6db2
cmpl $0x0, 0x28(%rsp)
je 0x6b10
pushq $0x1
popq %rbp
movq %r13, %rdi
movl %ebp, %esi
callq 0x7d3d
leaq 0x176c4(%rip), %rdx     # 0x1e040
movq %r13, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0x809d
movsd 0x17677(%rip), %xmm0    # 0x1e008
movq %r13, %rdi
callq 0x9d43
movq %r13, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x858f
movq %r13, %rdi
callq 0xd6f8
movq %r13, %rdi
movl %ebp, %esi
xorl %edx, %edx
callq 0x858f
testl %r15d, %r15d
movq %r15, 0x18(%rsp)
movq 0x10(%rsp), %rax
cmovnel %r15d, %eax
movq %rax, 0x10(%rsp)
pushq $0x1
popq %r15
movl %r15d, %ebp
cmpl 0x10(%rsp), %ebp
jge 0x6a91
movslq %ebp, %rax
movq 0x8(%rsp), %rcx
movq (%rcx,%rax,8), %r12
movzbl 0x1(%r12), %ecx
cmpl $0x6c, %ecx
je 0x6a0e
cmpl $0x65, %ecx
jne 0x6a8a
cmpb $0x0, 0x2(%r12)
je 0x6a1c
addq $0x2, %r12
jmp 0x6a28
cmpb $0x0, 0x2(%r12)
je 0x6a43
addq $0x2, %r12
jmp 0x6a4f
incl %ebp
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %r12
movq %r13, %rdi
movq %r12, %rsi
leaq 0x17834(%rip), %rdx     # 0x1e269
callq 0x702d
testl %eax, %eax
je 0x6a8a
jmp 0x6d5c
incl %ebp
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %r12
movq %r13, %rdi
leaq 0x17820(%rip), %rsi     # 0x1e279
callq 0x7d8f
movq %r13, %rdi
movq %r12, %rsi
callq 0x7b76
movq %r13, %rdi
movl %r15d, %esi
movl %r15d, %edx
callq 0x7076
testl %eax, %eax
jne 0x6c12
movq %r13, %rdi
movq %r12, %rsi
callq 0x8005
incl %ebp
jmp 0x69d6
movq 0x18(%rsp), %r15
testl %r15d, %r15d
je 0x6d60
movq %rbx, 0x38(%rsp)
xorl %r15d, %r15d
movq 0x8(%rsp), %rax
decl %r15d
cmpq $0x0, (%rax)
leaq 0x8(%rax), %rax
jne 0x6aac
movl %r15d, %ebp
notl %ebp
movq 0x18(%rsp), %rbx
leal 0x1(%rbx), %eax
movl %eax, 0x10(%rsp)
leal (%rbx,%r15), %eax
pushq $-0x2
popq %rcx
subl %eax, %ecx
movl %ecx, 0x24(%rsp)
pushq $0x1
popq %rsi
subl %eax, %esi
leaq 0x1779e(%rip), %rdx     # 0x1e281
movq %r13, %rdi
callq 0x9291
movl %ebx, %ebx
movq %rbx, 0x40(%rsp)
leal 0x1(%rbx), %eax
cmpl %ebp, %eax
jge 0x6b62
movq 0x8(%rsp), %rax
movq 0x8(%rax,%rbx,8), %rsi
movq %r13, %rdi
callq 0x7b76
incq %rbx
jmp 0x6af2
movsd 0x174f0(%rip), %xmm0    # 0x1e008
movq %r13, %rdi
callq 0x9d43
movq %r13, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x858f
movq %r13, %rdi
callq 0xd6f8
pushq $0x1
popq %rsi
movq %r13, %rdi
xorl %edx, %edx
callq 0x858f
leaq 0x176c0(%rip), %rdi     # 0x1e208
callq 0x6040
testq %rax, %rax
je 0x6c2f
leaq 0x176aa(%rip), %rdx     # 0x1e207
jmp 0x6c4b
movl %r14d, 0x30(%rsp)
movq %r13, %r14
movq %r13, %rdi
movl 0x24(%rsp), %esi
movl 0x10(%rsp), %edx
callq 0x7f1a
movq 0x18(%rsp), %r13
negl %r13d
xorl %ebx, %ebx
cmpq %rbx, %rbp
je 0x6bae
movq 0x8(%rsp), %rax
movq (%rax,%rbx,8), %rsi
movq %r14, %rdi
callq 0x7b76
leal (%rbx,%r13), %edx
movq %r14, %rdi
pushq $-0x2
popq %rsi
callq 0x8172
incq %rbx
jmp 0x6b84
leaq 0x19a8f(%rip), %rsi     # 0x20644
movq %r14, %r13
movq %r14, %rdi
callq 0x8005
movq 0x8(%rsp), %rax
movq 0x40(%rsp), %rcx
movq (%rax,%rcx,8), %rsi
cmpb $0x2d, (%rsi)
jne 0x6c21
cmpb $0x0, 0x1(%rsi)
movq 0x38(%rsp), %rbx
movl 0x10(%rsp), %ebp
jne 0x6d05
movq 0x8(%rsp), %rax
movq -0x8(%rax,%rcx,8), %rax
cmpb $0x2d, (%rax)
jne 0x6d03
cmpb $0x2d, 0x1(%rax)
jne 0x6d03
xorl %ecx, %ecx
cmpb $0x0, 0x2(%rax)
cmovneq %rcx, %rsi
jmp 0x6d05
movq %r13, %rdi
movl %eax, %esi
callq 0x70ff
jmp 0x6d5c
movq 0x38(%rsp), %rbx
movl 0x10(%rsp), %ebp
jmp 0x6d05
leaq 0x175e0(%rip), %rdi     # 0x1e216
callq 0x6040
testq %rax, %rax
je 0x69b9
leaq 0x175ca(%rip), %rdx     # 0x1e215
cmpb $0x40, (%rax)
jne 0x6c60
incq %rax
movq %r13, %rdi
movq %rax, %rsi
callq 0x7007
jmp 0x6c6b
movq %r13, %rdi
movq %rax, %rsi
callq 0x702d
testl %eax, %eax
jne 0x6d5c
jmp 0x69b9
negl %ecx
movq 0x8(%rsp), %rax
movq (%rax,%rcx,8), %rbx
movq 0x26366(%rip), %r14     # 0x2cff0
movq (%r14), %rdi
movq 0x26674(%rip), %rdx     # 0x2d308
leaq 0x1739c(%rip), %rsi     # 0x1e037
xorl %ebp, %ebp
xorl %eax, %eax
callq 0x6310
movq (%r14), %rdi
callq 0x63b0
movb 0x1(%rbx), %al
cmpb $0x6c, %al
leaq 0x17392(%rip), %rcx     # 0x1e04a
leaq 0x173a0(%rip), %rsi     # 0x1e05f
cmoveq %rcx, %rsi
cmpb $0x65, %al
cmoveq %rcx, %rsi
movq (%r14), %rdi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x6310
movq (%r14), %rdi
callq 0x63b0
movq (%r14), %rdi
movq 0x26620(%rip), %rdx     # 0x2d308
leaq 0x1738a(%rip), %rsi     # 0x1e079
xorl %eax, %eax
callq 0x6310
movq (%r14), %rdi
callq 0x63b0
jmp 0x6da1
xorl %esi, %esi
movq %r13, %rdi
xorl %edx, %edx
callq 0x9776
movl %eax, %r14d
addl %r15d, %ebp
movq %r13, %rdi
movl %ebp, %esi
callq 0x7537
testl %r14d, %r14d
je 0x6d30
movq %r13, %rdi
movl %ebp, %esi
callq 0x7437
jmp 0x6d42
pushq $-0x1
popq %rdx
movq %r13, %rdi
movl 0x24(%rsp), %esi
callq 0x7076
movl %eax, %r14d
movq 0x18(%rsp), %r15
movq %r13, %rdi
movl %r14d, %esi
callq 0x70ff
testl %r14d, %r14d
movl 0x30(%rsp), %r14d
je 0x6d60
xorl %ebp, %ebp
jmp 0x6da1
testl %r14d, %r14d
je 0x6d6f
movq %r13, %rdi
callq 0x6de3
jmp 0x6d94
orl 0x34(%rsp), %ebx
orl %ebx, %r15d
jne 0x6d94
xorl %edi, %edi
callq 0x60f0
testl %eax, %eax
je 0x6d8a
callq 0x6db2
jmp 0x6d65
movq %r13, %rdi
xorl %esi, %esi
callq 0x7007
pushq $0x1
popq %rbp
movq %r13, %rdi
movl %ebp, %esi
callq 0x7d3d
movl %ebp, %eax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq