// File: /workspace/github_c_makefile_star2_O1/stetre[P]moonnuklear/src/structs.c
// Function: moonnuklear_echeckkeytable
int echeckkeytable(lua_State *L, int arg, int p[NK_KEY_MAX])
    {
    ECHECK_PREAMBLE;
#define GetKey(i, sname) do {                       \
    lua_pushstring(L, sname); lua_rawget(L, arg);   \
    p[i] = optboolean(L, -1, 0);                    \
    lua_pop(L, 1);                                  \
} while(0)
    GetKey(NK_KEY_NONE, "none");
    GetKey(NK_KEY_SHIFT, "shift");
    GetKey(NK_KEY_CTRL, "ctrl");
    GetKey(NK_KEY_DEL, "del");
    GetKey(NK_KEY_ENTER, "enter");
    GetKey(NK_KEY_TAB, "tab");
    GetKey(NK_KEY_BACKSPACE, "backspace");
    GetKey(NK_KEY_COPY, "copy");
    GetKey(NK_KEY_CUT, "cut");
    GetKey(NK_KEY_PASTE, "paste");
    GetKey(NK_KEY_UP, "up");
    GetKey(NK_KEY_DOWN, "down");
    GetKey(NK_KEY_LEFT, "left");
    GetKey(NK_KEY_RIGHT, "right");
    GetKey(NK_KEY_TEXT_INSERT_MODE, "text_insert_mode");
    GetKey(NK_KEY_TEXT_REPLACE_MODE, "text_replace_mode");
    GetKey(NK_KEY_TEXT_RESET_MODE, "text_reset_mode");
    GetKey(NK_KEY_TEXT_LINE_START, "text_line_start");
    GetKey(NK_KEY_TEXT_LINE_END, "text_line_end");
    GetKey(NK_KEY_TEXT_START, "text_start");
    GetKey(NK_KEY_TEXT_END, "text_end");
    GetKey(NK_KEY_TEXT_UNDO, "text_undo");
    GetKey(NK_KEY_TEXT_REDO, "text_redo");
    GetKey(NK_KEY_TEXT_SELECT_ALL, "text_select_all");
    GetKey(NK_KEY_TEXT_WORD_LEFT, "text_word_left");
    GetKey(NK_KEY_TEXT_WORD_RIGHT, "text_word_right");
    GetKey(NK_KEY_SCROLL_START, "scroll_start");
    GetKey(NK_KEY_SCROLL_END, "scroll_end");
    GetKey(NK_KEY_SCROLL_DOWN, "scroll_down");
    GetKey(NK_KEY_SCROLL_UP, "scroll_up");
#undef GetKey
    return ERR_SUCCESS;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdx, %r14
movl %esi, %r15d
movq %rdi, %rbx
movl $0x0, (%rdx)
callq 0x13df0
testl %eax, %eax
jle 0x5d115
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13df0
cmpl $0x5, %eax
jne 0x5d121
leaq 0xba5f(%rip), %rsi      # 0x684ac
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
xorl %ebp, %ebp
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, (%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xba32(%rip), %rsi      # 0x684ba
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x4(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xba08(%rip), %rsi      # 0x684ca
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x8(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb9dc(%rip), %rsi      # 0x684d8
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0xc(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x113b6(%rip), %rsi     # 0x6deec
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x10(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x11388(%rip), %rsi     # 0x6def8
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x14(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb94c(%rip), %rsi      # 0x684f6
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x18(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb6ec(%rip), %rsi      # 0x682d0
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x1c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb813(%rip), %rsi      # 0x68431
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x20(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb664(%rip), %rsi      # 0x682bc
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x24(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xbc68(%rip), %rsi      # 0x688fa
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x28(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xbc4d(%rip), %rsi      # 0x68919
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x2c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb98a(%rip), %rsi      # 0x68690
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x30(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0xb972(%rip), %rsi      # 0x686b2
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x34(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x167e5(%rip), %rsi     # 0x7355f
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x38(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x167bc(%rip), %rsi     # 0x73570
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x3c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16794(%rip), %rsi     # 0x73582
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x40(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x1676a(%rip), %rsi     # 0x73592
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x44(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16740(%rip), %rsi     # 0x735a2
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x48(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16714(%rip), %rsi     # 0x735b0
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x4c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x166e5(%rip), %rsi     # 0x735bb
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x50(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x166b4(%rip), %rsi     # 0x735c4
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x54(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16684(%rip), %rsi     # 0x735ce
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x58(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16654(%rip), %rsi     # 0x735d8
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x5c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x1662a(%rip), %rsi     # 0x735e8
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x60(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x165ff(%rip), %rsi     # 0x735f7
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x64(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x165d5(%rip), %rsi     # 0x73607
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x68(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x165a8(%rip), %rsi     # 0x73614
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x6c(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x16579(%rip), %rsi     # 0x7361f
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x70(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
leaq 0x1654b(%rip), %rsi     # 0x7362b
movq %rbx, %rdi
callq 0x13f90
movq %rbx, %rdi
movl %r15d, %esi
callq 0x13570
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x13960
movl %eax, 0x74(%r14)
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x12180
jmp 0x5d13b
movl $0x1, %ebp
movl $0x1, %edi
jmp 0x5d12b
movl $0xfffffffc, %ebp       # imm = 0xFFFFFFFC
movl $0xfffffffc, %edi       # imm = 0xFFFFFFFC
callq 0x13ac0
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13f90
movl %ebp, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq