LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: checkwidgetstates
static nk_flags checkwidgetstates(lua_State *L, int arg) 
    {
    const char *s;
    nk_flags flags = 0;
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
    CASE(NK_WIDGET_STATE_MODIFIED, "modified");
    CASE(NK_WIDGET_STATE_INACTIVE, "inactive");
    CASE(NK_WIDGET_STATE_ENTERED, "entered");
    CASE(NK_WIDGET_STATE_HOVER, "hover");
    CASE(NK_WIDGET_STATE_ACTIVED, "actived");
    CASE(NK_WIDGET_STATE_LEFT, "left");
    CASE(NK_WIDGET_STATE_HOVERED, "hovered");
    CASE(NK_WIDGET_STATE_ACTIVE, "active");
#undef CASE
        return (nk_flags)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x154b0
cmpl $0x0, %eax
je 0x25c53
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x87396(%rip), %rsi     # 0xace6e
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25af4
jmp 0x25ae4
movl 0x14(%rsp), %eax
orl $0x2, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x87377(%rip), %rsi     # 0xace77
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25b1c
jmp 0x25b0c
movl 0x14(%rsp), %eax
orl $0x4, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x87372(%rip), %rsi     # 0xace9a
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25b44
jmp 0x25b34
movl 0x14(%rsp), %eax
orl $0x8, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x82aed(%rip), %rsi     # 0xa863d
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25b6c
jmp 0x25b5c
movl 0x14(%rsp), %eax
orl $0x10, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x87308(%rip), %rsi     # 0xace80
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25b94
jmp 0x25b84
movl 0x14(%rsp), %eax
orl $0x20, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x81af0(%rip), %rsi     # 0xa7690
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25bbc
jmp 0x25bac
movl 0x14(%rsp), %eax
orl $0x40, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x8f96b(%rip), %rsi     # 0xb5533
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25be1
jmp 0x25bd4
movl 0x14(%rsp), %eax
orl $0x12, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x18(%rsp), %rdi
leaq 0x8322e(%rip), %rsi     # 0xa8e1b
callq 0x13fc0
cmpl $0x0, %eax
jne 0x25c06
jmp 0x25bf9
movl 0x14(%rsp), %eax
orl $0x22, %eax
movl %eax, 0x14(%rsp)
jmp 0x25c4e
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x81861(%rip), %rsi     # 0xa7491
movb $0x0, %al
callq 0x13ec0
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x25c5b
jmp 0x25a95
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushwidgetalign
static int pushwidgetalign(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_WIDGET_ALIGN_LEFT, "align left");
    CASE(NK_WIDGET_ALIGN_CENTERED, "align centered");
    CASE(NK_WIDGET_ALIGN_RIGHT, "align right");
    CASE(NK_WIDGET_ALIGN_TOP, "align top");
    CASE(NK_WIDGET_ALIGN_MIDDLE, "align middle");
    CASE(NK_WIDGET_ALIGN_BOTTOM, "align bottom");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x25cad
movq 0x10(%rsp), %rdi
leaq 0x871eb(%rip), %rsi     # 0xace88
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25caf
jmp 0x25cb1
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x25cd9
movq 0x10(%rsp), %rdi
leaq 0x871ca(%rip), %rsi     # 0xace93
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25cdb
jmp 0x25cdd
movl 0xc(%rsp), %eax
andl $0x4, %eax
cmpl $0x4, %eax
jne 0x25d05
movq 0x10(%rsp), %rdi
leaq 0x871ad(%rip), %rsi     # 0xacea2
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25d07
jmp 0x25d09
movl 0xc(%rsp), %eax
andl $0x8, %eax
cmpl $0x8, %eax
jne 0x25d31
movq 0x10(%rsp), %rdi
leaq 0x8718d(%rip), %rsi     # 0xaceae
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25d33
jmp 0x25d35
movl 0xc(%rsp), %eax
andl $0x10, %eax
cmpl $0x10, %eax
jne 0x25d5d
movq 0x10(%rsp), %rdi
leaq 0x8716b(%rip), %rsi     # 0xaceb8
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25d5f
jmp 0x25d61
movl 0xc(%rsp), %eax
andl $0x20, %eax
cmpl $0x20, %eax
jne 0x25d89
movq 0x10(%rsp), %rdi
leaq 0x8714c(%rip), %rsi     # 0xacec5
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25d8b
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushtextalign
static int pushtextalign(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_TEXT_ALIGN_LEFT, "align left");
    CASE(NK_TEXT_ALIGN_CENTERED, "align centered");
    CASE(NK_TEXT_ALIGN_RIGHT, "align right");
    CASE(NK_TEXT_ALIGN_TOP, "align top");
    CASE(NK_TEXT_ALIGN_MIDDLE, "align middle");
    CASE(NK_TEXT_ALIGN_BOTTOM, "align bottom");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x25fed
movq 0x10(%rsp), %rdi
leaq 0x86eab(%rip), %rsi     # 0xace88
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x25fef
jmp 0x25ff1
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x26019
movq 0x10(%rsp), %rdi
leaq 0x86e8a(%rip), %rsi     # 0xace93
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2601b
jmp 0x2601d
movl 0xc(%rsp), %eax
andl $0x4, %eax
cmpl $0x4, %eax
jne 0x26045
movq 0x10(%rsp), %rdi
leaq 0x86e6d(%rip), %rsi     # 0xacea2
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26047
jmp 0x26049
movl 0xc(%rsp), %eax
andl $0x8, %eax
cmpl $0x8, %eax
jne 0x26071
movq 0x10(%rsp), %rdi
leaq 0x86e4d(%rip), %rsi     # 0xaceae
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26073
jmp 0x26075
movl 0xc(%rsp), %eax
andl $0x10, %eax
cmpl $0x10, %eax
jne 0x2609d
movq 0x10(%rsp), %rdi
leaq 0x86e2b(%rip), %rsi     # 0xaceb8
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2609f
jmp 0x260a1
movl 0xc(%rsp), %eax
andl $0x20, %eax
cmpl $0x20, %eax
jne 0x260c9
movq 0x10(%rsp), %rdi
leaq 0x86e0c(%rip), %rsi     # 0xacec5
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x260cb
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pusheditevents
static int pusheditevents(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_EDIT_ACTIVE, "active");
    CASE(NK_EDIT_INACTIVE, "inactive");
    CASE(NK_EDIT_ACTIVATED, "activated");
    CASE(NK_EDIT_DEACTIVATED, "deactivated");
    CASE(NK_EDIT_COMMITED, "commited");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x268fd
movq 0x10(%rsp), %rdi
leaq 0x8252e(%rip), %rsi     # 0xa8e1b
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x268ff
jmp 0x26901
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x26929
movq 0x10(%rsp), %rdi
leaq 0x8655e(%rip), %rsi     # 0xace77
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2692b
jmp 0x2692d
movl 0xc(%rsp), %eax
andl $0x4, %eax
cmpl $0x4, %eax
jne 0x26955
movq 0x10(%rsp), %rdi
leaq 0x86640(%rip), %rsi     # 0xacf85
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26957
jmp 0x26959
movl 0xc(%rsp), %eax
andl $0x8, %eax
cmpl $0x8, %eax
jne 0x26981
movq 0x10(%rsp), %rdi
leaq 0x86612(%rip), %rsi     # 0xacf83
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26983
jmp 0x26985
movl 0xc(%rsp), %eax
andl $0x10, %eax
cmpl $0x10, %eax
jne 0x269ad
movq 0x10(%rsp), %rdi
leaq 0x865f2(%rip), %rsi     # 0xacf8f
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x269af
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: checkeditevents
static nk_flags checkeditevents(lua_State *L, int arg) 
    {
    const char *s;
    nk_flags flags = 0;
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
    CASE(NK_EDIT_ACTIVE, "active");
    CASE(NK_EDIT_INACTIVE, "inactive");
    CASE(NK_EDIT_ACTIVATED, "activated");
    CASE(NK_EDIT_DEACTIVATED, "deactivated");
    CASE(NK_EDIT_COMMITED, "commited");
#undef CASE
        return (nk_flags)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x154b0
cmpl $0x0, %eax
je 0x26b1b
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x82403(%rip), %rsi     # 0xa8e1b
callq 0x13fc0
cmpl $0x0, %eax
jne 0x26a34
jmp 0x26a24
movl 0x14(%rsp), %eax
orl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0x26b16
movq 0x18(%rsp), %rdi
leaq 0x86437(%rip), %rsi     # 0xace77
callq 0x13fc0
cmpl $0x0, %eax
jne 0x26a5c
jmp 0x26a4c
movl 0x14(%rsp), %eax
orl $0x2, %eax
movl %eax, 0x14(%rsp)
jmp 0x26b16
movq 0x18(%rsp), %rdi
leaq 0x8651d(%rip), %rsi     # 0xacf85
callq 0x13fc0
cmpl $0x0, %eax
jne 0x26a84
jmp 0x26a74
movl 0x14(%rsp), %eax
orl $0x4, %eax
movl %eax, 0x14(%rsp)
jmp 0x26b16
movq 0x18(%rsp), %rdi
leaq 0x864f3(%rip), %rsi     # 0xacf83
callq 0x13fc0
cmpl $0x0, %eax
jne 0x26aa9
jmp 0x26a9c
movl 0x14(%rsp), %eax
orl $0x8, %eax
movl %eax, 0x14(%rsp)
jmp 0x26b16
movq 0x18(%rsp), %rdi
leaq 0x864da(%rip), %rsi     # 0xacf8f
callq 0x13fc0
cmpl $0x0, %eax
jne 0x26ace
jmp 0x26ac1
movl 0x14(%rsp), %eax
orl $0x10, %eax
movl %eax, 0x14(%rsp)
jmp 0x26b16
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x80999(%rip), %rsi     # 0xa7491
movb $0x0, %al
callq 0x13ec0
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x26b23
jmp 0x269d5
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushpaneltype
static int pushpaneltype(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_PANEL_WINDOW, "window");
    CASE(NK_PANEL_GROUP, "group");
    CASE(NK_PANEL_POPUP, "popup");
    CASE(NK_PANEL_CONTEXTUAL, "contextual");
    CASE(NK_PANEL_COMBO, "combo");
    CASE(NK_PANEL_MENU, "menu");
    CASE(NK_PANEL_TOOLTIP, "tooltip");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x26b6d
movq 0x10(%rsp), %rdi
leaq 0x8aaeb(%rip), %rsi     # 0xb1648
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26b6f
jmp 0x26b71
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x26b99
movq 0x10(%rsp), %rdi
leaq 0x8640f(%rip), %rsi     # 0xacf98
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26b9b
jmp 0x26b9d
movl 0xc(%rsp), %eax
andl $0x4, %eax
cmpl $0x4, %eax
jne 0x26bc5
movq 0x10(%rsp), %rdi
leaq 0x86418(%rip), %rsi     # 0xacfcd
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26bc7
jmp 0x26bc9
movl 0xc(%rsp), %eax
andl $0x10, %eax
cmpl $0x10, %eax
jne 0x26bf1
movq 0x10(%rsp), %rdi
leaq 0x863bd(%rip), %rsi     # 0xacf9e
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26bf3
jmp 0x26bf5
movl 0xc(%rsp), %eax
andl $0x20, %eax
cmpl $0x20, %eax
jne 0x26c1d
movq 0x10(%rsp), %rdi
leaq 0x8639c(%rip), %rsi     # 0xacfa9
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26c1f
jmp 0x26c21
movl 0xc(%rsp), %eax
andl $0x40, %eax
cmpl $0x40, %eax
jne 0x26c49
movq 0x10(%rsp), %rdi
leaq 0x86376(%rip), %rsi     # 0xacfaf
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26c4b
jmp 0x26c4d
movl 0xc(%rsp), %eax
andl $0x80, %eax
cmpl $0x80, %eax
jne 0x26c79
movq 0x10(%rsp), %rdi
leaq 0x8634b(%rip), %rsi     # 0xacfb4
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26c7b
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushwindowflags
static int pushwindowflags(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_WINDOW_PRIVATE, "private");
    CASE(NK_WINDOW_DYNAMIC, "dynamic");
    CASE(NK_WINDOW_ROM, "rom");
    CASE(NK_WINDOW_NOT_INTERACTIVE, "not interactive");
    CASE(NK_WINDOW_HIDDEN, "hidden");
    CASE(NK_WINDOW_CLOSED, "closed");
    CASE(NK_WINDOW_MINIMIZED, "minimized");
    CASE(NK_WINDOW_REMOVE_ROM, "remove rom");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x800, %eax            # imm = 0x800
jne 0x26f11
movq 0x10(%rsp), %rdi
leaq 0x860da(%rip), %rsi     # 0xacfdb
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26f13
jmp 0x26f15
movl 0xc(%rsp), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x800, %eax            # imm = 0x800
jne 0x26f41
movq 0x10(%rsp), %rdi
leaq 0x86481(%rip), %rsi     # 0xad3b2
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26f43
jmp 0x26f45
movl 0xc(%rsp), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x1000, %eax           # imm = 0x1000
jne 0x26f71
movq 0x10(%rsp), %rdi
leaq 0x86099(%rip), %rsi     # 0xacffa
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26f73
jmp 0x26f75
movl 0xc(%rsp), %eax
andl $0x1400, %eax           # imm = 0x1400
cmpl $0x1400, %eax           # imm = 0x1400
jne 0x26fa1
movq 0x10(%rsp), %rdi
leaq 0x86052(%rip), %rsi     # 0xacfe3
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26fa3
jmp 0x26fa5
movl 0xc(%rsp), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x2000, %eax           # imm = 0x2000
jne 0x26fd1
movq 0x10(%rsp), %rdi
leaq 0x8ea2d(%rip), %rsi     # 0xb59ee
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x26fd3
jmp 0x26fd5
movl 0xc(%rsp), %eax
andl $0x4000, %eax           # imm = 0x4000
cmpl $0x4000, %eax           # imm = 0x4000
jne 0x27001
movq 0x10(%rsp), %rdi
leaq 0x8e9ec(%rip), %rsi     # 0xb59dd
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x27003
jmp 0x27005
movl 0xc(%rsp), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x8000, %eax           # imm = 0x8000
jne 0x27031
movq 0x10(%rsp), %rdi
leaq 0x8074c(%rip), %rsi     # 0xa776d
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x27033
jmp 0x27035
movl 0xc(%rsp), %eax
andl $0x10000, %eax          # imm = 0x10000
cmpl $0x10000, %eax          # imm = 0x10000
jne 0x27061
movq 0x10(%rsp), %rdi
leaq 0x85fa2(%rip), %rsi     # 0xacff3
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x27063
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushchartevent
static int pushchartevent(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_CHART_HOVERING, "hovering");
    CASE(NK_CHART_CLICKED, "clicked");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x272ad
movq 0x10(%rsp), %rdi
leaq 0x85d61(%rip), %rsi     # 0xacffe
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x272af
jmp 0x272b1
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x272d9
movq 0x10(%rsp), %rdi
leaq 0x8e282(%rip), %rsi     # 0xb554b
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x272db
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: checkchartevent
static nk_flags checkchartevent(lua_State *L, int arg) 
    {
    const char *s;
    nk_flags flags = 0;
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
    CASE(NK_CHART_HOVERING, "hovering");
    CASE(NK_CHART_CLICKED, "clicked");
#undef CASE
        return (nk_flags)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x154b0
cmpl $0x0, %eax
je 0x273d3
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x85cb6(%rip), %rsi     # 0xacffe
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27361
jmp 0x27354
movl 0x14(%rsp), %eax
orl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0x273ce
movq 0x18(%rsp), %rdi
leaq 0x8e1de(%rip), %rsi     # 0xb554b
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27386
jmp 0x27379
movl 0x14(%rsp), %eax
orl $0x2, %eax
movl %eax, 0x14(%rsp)
jmp 0x273ce
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x800e1(%rip), %rsi     # 0xa7491
movb $0x0, %al
callq 0x13ec0
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x273db
jmp 0x27305
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushwidgetlayoutstates
static int pushwidgetlayoutstates(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
    CASE(NK_WIDGET_INVALID, "invalid");
    CASE(NK_WIDGET_VALID, "valid");
    CASE(NK_WIDGET_ROM, "rom");
    CASE(NK_WIDGET_DISABLED, "disabled");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x0, %eax
cmpl $0x0, %eax
jne 0x2742d
movq 0x10(%rsp), %rdi
leaq 0x85bea(%rip), %rsi     # 0xad007
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2742f
jmp 0x27431
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x27459
movq 0x10(%rsp), %rdi
leaq 0x85bc0(%rip), %rsi     # 0xad009
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2745b
jmp 0x2745d
movl 0xc(%rsp), %eax
andl $0x2, %eax
cmpl $0x2, %eax
jne 0x27485
movq 0x10(%rsp), %rdi
leaq 0x85b85(%rip), %rsi     # 0xacffa
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x27487
jmp 0x27489
movl 0xc(%rsp), %eax
andl $0x3, %eax
cmpl $0x3, %eax
jne 0x274b1
movq 0x10(%rsp), %rdi
leaq 0x85b6e(%rip), %rsi     # 0xad00f
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x274b3
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: checkwidgetlayoutstates
static nk_flags checkwidgetlayoutstates(lua_State *L, int arg) 
    {
    const char *s;
    nk_flags flags = 0;
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
    CASE(NK_WIDGET_INVALID, "invalid");
    CASE(NK_WIDGET_VALID, "valid");
    CASE(NK_WIDGET_ROM, "rom");
    CASE(NK_WIDGET_DISABLED, "disabled");
#undef CASE
        return (nk_flags)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x154b0
cmpl $0x0, %eax
je 0x275f3
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x85aef(%rip), %rsi     # 0xad007
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27534
jmp 0x27524
movl 0x14(%rsp), %eax
orl $0x0, %eax
movl %eax, 0x14(%rsp)
jmp 0x275ee
movq 0x18(%rsp), %rdi
leaq 0x85ac9(%rip), %rsi     # 0xad009
callq 0x13fc0
cmpl $0x0, %eax
jne 0x2755c
jmp 0x2754c
movl 0x14(%rsp), %eax
orl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0x275ee
movq 0x18(%rsp), %rdi
leaq 0x85a92(%rip), %rsi     # 0xacffa
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27581
jmp 0x27574
movl 0x14(%rsp), %eax
orl $0x2, %eax
movl %eax, 0x14(%rsp)
jmp 0x275ee
movq 0x18(%rsp), %rdi
leaq 0x85a82(%rip), %rsi     # 0xad00f
callq 0x13fc0
cmpl $0x0, %eax
jne 0x275a6
jmp 0x27599
movl 0x14(%rsp), %eax
orl $0x3, %eax
movl %eax, 0x14(%rsp)
jmp 0x275ee
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x7fec1(%rip), %rsi     # 0xa7491
movb $0x0, %al
callq 0x13ec0
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x275fb
jmp 0x274d5
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: pushstyleheaderalign
static int pushstyleheaderalign(lua_State *L, nk_flags flags)
    {
    int n = 0;

#define CASE(CODE,str) do { if((flags & CODE)==CODE) { lua_pushstring(L, str); n++; } } while(0)
        CASE(NK_HEADER_LEFT, "left");
        CASE(NK_HEADER_RIGHT, "right");
#undef CASE

    return n;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
movl $0x0, 0x8(%rsp)
movl 0xc(%rsp), %eax
andl $0x0, %eax
cmpl $0x0, %eax
jne 0x2764d
movq 0x10(%rsp), %rdi
leaq 0x80053(%rip), %rsi     # 0xa7690
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2764f
jmp 0x27651
movl 0xc(%rsp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x27679
movq 0x10(%rsp), %rdi
leaq 0x80049(%rip), %rsi     # 0xa76b2
callq 0x15240
movl 0x8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8(%rsp)
jmp 0x2767b
movl 0x8(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/flags.c
// Function: checkstyleheaderalign
static nk_flags checkstyleheaderalign(lua_State *L, int arg) 
    {
    const char *s;
    nk_flags flags = 0;
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
        CASE(NK_HEADER_LEFT, "left");
        CASE(NK_HEADER_RIGHT, "right");
#undef CASE
        return (nk_flags)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x154b0
cmpl $0x0, %eax
je 0x27773
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x7ffa8(%rip), %rsi     # 0xa7690
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27701
jmp 0x276f4
movl 0x14(%rsp), %eax
orl $0x0, %eax
movl %eax, 0x14(%rsp)
jmp 0x2776e
movq 0x18(%rsp), %rdi
leaq 0x7ffa5(%rip), %rsi     # 0xa76b2
callq 0x13fc0
cmpl $0x0, %eax
jne 0x27726
jmp 0x27719
movl 0x14(%rsp), %eax
orl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0x2776e
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x7fd41(%rip), %rsi     # 0xa7491
movb $0x0, %al
callq 0x13ec0
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x2777b
jmp 0x276a5
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
nop
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: moonnuklear_pushatlasfont
int pushatlasfont(lua_State *L, ud_t *atlas_ud, nk_font_t *atlas_font, nk_font_config_t *cfg)
/* Pushes the user font embedded in an atlas font, possibly creating the
 * associated ud if it is not yet known by MoonNuklear */
    {
    nk_user_font_t *font = &atlas_font->handle;
    ud_t *ud = moonnuklear_userdata(font);
    if(ud) /* already known */
        { 
        if(cfg) { return unexpected(L); }
        pushfont(L, font); return 1; 
        }
    /* not yet known, create ud */
    ud = newuserdata(L, font, FONT_MT, "font");
    ud->parent_ud = atlas_ud;
    ud->font = atlas_font;
    ud->font_config = cfg;
    ud->destructor = freefont;
    return 1;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movq %rdx, 0x18(%rsp)
movq %rcx, 0x10(%rsp)
movq 0x18(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rdi
callq 0x14450
movq %rax, (%rsp)
cmpq $0x0, (%rsp)
je 0x27811
cmpq $0x0, 0x10(%rsp)
je 0x277f8
movq 0x28(%rsp), %rdi
leaq 0x7f940(%rip), %rsi     # 0xa711f
leaq 0x85832(%rip), %rdx     # 0xad018
movl $0x3b, %ecx
movb $0x0, %al
callq 0x14bf0
movl %eax, 0x34(%rsp)
jmp 0x27870
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x14e50
movl $0x1, 0x34(%rsp)
jmp 0x27870
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rsi
leaq 0x7f88f(%rip), %rdx     # 0xa70b1
leaq 0x89d9b(%rip), %rcx     # 0xb15c4
callq 0x15130
movq %rax, (%rsp)
movq 0x20(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x18(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x20(%rax)
movq 0x10(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x68(%rax)
movq (%rsp), %rax
leaq 0x1c(%rip), %rcx        # 0x27880
movq %rcx, 0x8(%rax)
movl $0x1, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: freefont
static int freefont(lua_State *L, ud_t *ud)
    {
    nk_user_font_t *font = (nk_user_font_t*)ud->handle;
    nk_font_config_t *cfg = ud->font_config;
    int allocated = IsAllocated(ud);
    if(!freeuserdata(L, ud, "font")) return 0;
    if(cfg) freefontconfig(L, cfg);
    if(allocated) Free(L, font);
    return 0;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rax
movl 0x70(%rax), %eax
andl $0x20, %eax
cmpl $0x20, %eax
sete %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0xc(%rsp)
movq 0x28(%rsp), %rdi
movq 0x20(%rsp), %rsi
leaq 0x89cf0(%rip), %rdx     # 0xb15c4
callq 0x14f50
cmpl $0x0, %eax
jne 0x278e8
movl $0x0, 0x34(%rsp)
jmp 0x2791d
cmpq $0x0, 0x10(%rsp)
je 0x278ff
movq 0x28(%rsp), %rdi
movq 0x10(%rsp), %rsi
callq 0x14e70
cmpl $0x0, 0xc(%rsp)
je 0x27915
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rsi
callq 0x14230
movl $0x0, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: Width
static int Width(lua_State *L)
    {
    size_t len;
    nk_user_font_t *font = checkfont(L, 1, NULL);
    float height = luaL_checknumber(L, 2);
    const char *text = luaL_checklstring(L, 3, &len);
    lua_pushnumber(L, font->width(font->userdata, height, text, (int)len));
    return 1;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq 0x30(%rsp), %rdi
movl $0x1, %esi
xorl %eax, %eax
movl %eax, %edx
leaq 0x7f633(%rip), %rcx     # 0xa70b1
callq 0x130f0
movq %rax, 0x20(%rsp)
movq 0x30(%rsp), %rdi
movl $0x2, %esi
callq 0x13950
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x1c(%rsp)
movq 0x30(%rsp), %rdi
movl $0x3, %esi
leaq 0x28(%rsp), %rdx
callq 0x13df0
movq %rax, 0x10(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x20(%rsp), %rcx
movss 0x1c(%rsp), %xmm0
movq 0x10(%rsp), %rsi
movq 0x28(%rsp), %rdx
movq (%rcx), %rdi
callq *%rax
movq 0x8(%rsp), %rdi
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movl $0x1, %eax
addq $0x38, %rsp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: Ranges
static int Ranges(lua_State *L)
    {
    ud_t *ud;
    nk_font_t *font;
    (void*)checkfont(L, 1, &ud);
    if((font = ud->font) == NULL)
        return luaL_argerror(L, 1, "function not available for user created fonts"); //@@
    pushrunelist(L, font->config->range);
    return 1;
    }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq 0x18(%rsp), %rdi
movl $0x1, %esi
leaq 0x10(%rsp), %rdx
leaq 0x7f592(%rip), %rcx     # 0xa70b1
callq 0x130f0
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x8(%rsp)
cmpq $0x0, %rax
jne 0x27b54
movq 0x18(%rsp), %rdi
movl $0x1, %esi
leaq 0x854e1(%rip), %rdx     # 0xad02a
callq 0x134c0
movl %eax, 0x24(%rsp)
jmp 0x27b73
movq 0x18(%rsp), %rdi
movq 0x8(%rsp), %rax
movq 0x78(%rax), %rax
movq 0x30(%rax), %rsi
callq 0x14240
movl $0x1, 0x24(%rsp)
movl 0x24(%rsp), %eax
addq $0x28, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: FindGlyph
static int FindGlyph(lua_State *L)
    {
    ud_t *ud;
    nk_font_t *font;
    const nk_font_glyph_t *glyph;
    nk_rune unicode;
    (void*)checkfont(L, 1, &ud);
    if((font = ud->font) == NULL)
        return luaL_argerror(L, 1, "function not available for user created fonts"); //@@
    unicode = luaL_checkinteger(L, 2);
    glyph = nk_font_find_glyph(font, unicode);
    if(!glyph) return 0; /* not found */
    return pushfontglyph(L, glyph);
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq 0x28(%rsp), %rdi
movl $0x1, %esi
leaq 0x20(%rsp), %rdx
leaq 0x7f512(%rip), %rcx     # 0xa70b1
callq 0x130f0
movq 0x20(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x18(%rsp)
cmpq $0x0, %rax
jne 0x27bd4
movq 0x28(%rsp), %rdi
movl $0x1, %esi
leaq 0x85461(%rip), %rdx     # 0xad02a
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x27c1f
movq 0x28(%rsp), %rdi
movl $0x2, %esi
callq 0x14070
movl %eax, 0xc(%rsp)
movq 0x18(%rsp), %rdi
movl 0xc(%rsp), %esi
callq 0x15260
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
jne 0x27c0c
movl $0x0, 0x34(%rsp)
jmp 0x27c1f
movq 0x28(%rsp), %rdi
movq 0x10(%rsp), %rsi
callq 0x13390
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: FontFromPtr
static int FontFromPtr(lua_State *L)
    {
    nk_font_t *ptr = (nk_font_t*)checklightuserdata(L, 1);
    nk_user_font_t *font = &ptr->handle;
    ud_t *ud = newuserdata(L, font, FONT_MT, "font (ptr)");
    ud->parent_ud = NULL;
    ud->font = ptr;
    ud->font_config = NULL;
    ud->destructor = freefont;
    return 1;
    }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rdi
movl $0x1, %esi
callq 0x14a30
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rdi
movq 0x10(%rsp), %rsi
leaq 0x7f255(%rip), %rdx     # 0xa70b1
leaq 0x8521d(%rip), %rcx     # 0xad080
callq 0x15130
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq $0x0, 0x10(%rax)
movq 0x18(%rsp), %rcx
movq 0x8(%rsp), %rax
movq %rcx, 0x20(%rax)
movq 0x8(%rsp), %rax
movq $0x0, 0x68(%rax)
movq 0x8(%rsp), %rax
leaq -0x621(%rip), %rcx      # 0x27880
movq %rcx, 0x8(%rax)
movl $0x1, %eax
addq $0x28, %rsp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/font.c
// Function: WidthCallback
static float WidthCallback(nk_handle handle, float height, const char* text, int len) // nk_text_width_f
    {
#define L moonnuklear_L
    float width;
    ud_t *ud = (ud_t*)(handle.ptr);
    pushvalue(L, ud->ref1);    // function
    lua_pushnumber(L, height); // arg1
    lua_pushlstring(L, text, len); // arg2
    if(lua_pcall(L, 2, 1, 0) != LUA_OK)
        { lua_error(L); return 0; }
    width = luaL_checknumber(L, -1); // retval1
    lua_pop(L, 1);
    return width;
#undef L
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movss %xmm0, 0x24(%rsp)
movq %rsi, 0x18(%rsp)
movl %edx, 0x14(%rsp)
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x9d117(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movq 0x8(%rsp), %rax
movslq 0x74(%rax), %rdx
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0x13a30
movq 0x9d0fa(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movss 0x24(%rsp), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movq 0x9d0e1(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movq 0x18(%rsp), %rsi
movslq 0x14(%rsp), %rdx
callq 0x14860
movq 0x9d0c8(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movl $0x2, %esi
movl $0x1, %edx
xorl %ecx, %ecx
xorl %eax, %eax
movl %eax, %r9d
movq %r9, %r8
callq 0x153a0
cmpl $0x0, %eax
je 0x27f63
movq 0x9d0a0(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
xorps %xmm0, %xmm0
movss %xmm0, 0x34(%rsp)
jmp 0x27fa1
movq 0x9d086(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x13950
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x10(%rsp)
movq 0x9d068(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x131a0
movss 0x10(%rsp), %xmm0
movss %xmm0, 0x34(%rsp)
movss 0x34(%rsp), %xmm0
addq $0x38, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/image.c
// Function: Image_info
static int Image_info(lua_State *L)
    {
    ud_t *ud;
    nk_rect_t r;
    nk_image_t *image = checkimage(L, 1, &ud);
    if(IsImageId(ud))
        lua_pushlightuserdata(L, image->handle.ptr);
    else
        lua_pushinteger(L, image->handle.id);
    if(!IsSubImage(ud))
        return 1;
    lua_pushinteger(L, image->w);
    lua_pushinteger(L, image->h);
    r.x = image->region[0];
    r.y = image->region[1];
    r.w = image->region[2];
    r.h = image->region[3];
    pushrect(L, &r);
    return 4;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq 0x28(%rsp), %rdi
movl $0x1, %esi
leaq 0x20(%rsp), %rdx
leaq 0x7ef45(%rip), %rcx     # 0xa7244
callq 0x130f0
movq %rax, 0x8(%rsp)
movq 0x20(%rsp), %rax
movl 0x70(%rax), %eax
andl $0x80, %eax
cmpl $0x80, %eax
jne 0x28331
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rsi
callq 0x14600
jmp 0x28343
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rax
movslq (%rax), %rsi
callq 0x13c50
movq 0x20(%rsp), %rax
movl 0x70(%rax), %eax
andl $0x100, %eax            # imm = 0x100
cmpl $0x100, %eax            # imm = 0x100
je 0x28364
movl $0x1, 0x34(%rsp)
jmp 0x283f1
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rax
movzwl 0x8(%rax), %eax
movl %eax, %esi
callq 0x13c50
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rax
movzwl 0xa(%rax), %eax
movl %eax, %esi
callq 0x13c50
movq 0x8(%rsp), %rax
movzwl 0xc(%rax), %eax
cvtsi2ss %eax, %xmm0
movss %xmm0, 0x10(%rsp)
movq 0x8(%rsp), %rax
movzwl 0xe(%rax), %eax
cvtsi2ss %eax, %xmm0
movss %xmm0, 0x14(%rsp)
movq 0x8(%rsp), %rax
movzwl 0x10(%rax), %eax
cvtsi2ss %eax, %xmm0
movss %xmm0, 0x18(%rsp)
movq 0x8(%rsp), %rax
movzwl 0x12(%rax), %eax
cvtsi2ss %eax, %xmm0
movss %xmm0, 0x1c(%rsp)
movq 0x28(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x137c0
movl $0x4, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/image.c
// Function: NewSubImage
static int NewSubImage(lua_State *L)
/* image = new_subimage(ptr|id, w, h, rect) */
    {
    ud_t *ud;
    nk_rect_t subregion;
    unsigned short w = luaL_checkinteger(L, 2);
    unsigned short h = luaL_checkinteger(L, 3);
    if(echeckrect(L, 4, &subregion)) return argerror(L, 4);
    ud = New(L, w, h, subregion);
    MarkSubImage(ud);
    return 1;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq 0x28(%rsp), %rdi
movl $0x2, %esi
callq 0x14070
movw %ax, 0xe(%rsp)
movq 0x28(%rsp), %rdi
movl $0x3, %esi
callq 0x14070
movw %ax, 0xc(%rsp)
movq 0x28(%rsp), %rdi
movl $0x4, %esi
leaq 0x10(%rsp), %rdx
callq 0x14c30
cmpl $0x0, %eax
je 0x284bd
movq 0x28(%rsp), %rax
movq %rax, (%rsp)
movq 0x28(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq (%rsp), %rdi
movq %rax, %rdx
movl $0x4, %esi
callq 0x134c0
movl %eax, 0x34(%rsp)
jmp 0x28506
movq 0x28(%rsp), %rdi
movw 0xe(%rsp), %cx
movw 0xc(%rsp), %ax
movsd 0x10(%rsp), %xmm0
movsd 0x18(%rsp), %xmm1
movzwl %cx, %esi
movzwl %ax, %edx
callq 0x28510
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movl 0x70(%rax), %ecx
orl $0x100, %ecx            # imm = 0x100
movq 0x20(%rsp), %rax
movl %ecx, 0x70(%rax)
movl $0x1, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/image.c
// Function: New
static ud_t* New(lua_State *L, unsigned short w, unsigned short h, nk_rect_t subregion)
    {
    ud_t *ud;
    nk_image_t *image;
    int id = 0;
    void *ptr = NULL;

    if(lua_type(L, 1) == LUA_TLIGHTUSERDATA)
        ptr = checklightuserdata(L, 1);
    else
        id = luaL_checkinteger(L, 1);

    image = (nk_image_t*)Malloc(L, sizeof(nk_image_t));
    if(ptr) { image->handle.ptr = ptr; } else { image->handle.id = id; }
    image->w = w;
    image->h = h;
    image->region[0] = (unsigned short)subregion.x;
    image->region[1] = (unsigned short)subregion.y;
    image->region[2] = (unsigned short)subregion.w;
    image->region[3] = (unsigned short)subregion.h;
    ud = newuserdata(L, image, IMAGE_MT, "image");
    ud->parent_ud = NULL;
    ud->destructor = freeimage;
    if(!ptr) MarkImageId(ud);
    return ud;
    }

// Assembly:
subq $0x48, %rsp
movw %dx, %ax
movw %si, %cx
movlpd %xmm0, 0x38(%rsp)
movlpd %xmm1, 0x40(%rsp)
movq %rdi, 0x30(%rsp)
movw %cx, 0x2e(%rsp)
movw %ax, 0x2c(%rsp)
movl $0x0, 0x14(%rsp)
movq $0x0, 0x8(%rsp)
movq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0x15090
cmpl $0x2, %eax
jne 0x28570
movq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0x14a30
movq %rax, 0x8(%rsp)
jmp 0x28583
movq 0x30(%rsp), %rdi
movl $0x1, %esi
callq 0x14070
movl %eax, 0x14(%rsp)
movq 0x30(%rsp), %rdi
movl $0x18, %esi
callq 0x14c40
movq %rax, 0x18(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0x285ae
movq 0x8(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, (%rax)
jmp 0x285b9
movl 0x14(%rsp), %ecx
movq 0x18(%rsp), %rax
movl %ecx, (%rax)
movw 0x2e(%rsp), %cx
movq 0x18(%rsp), %rax
movw %cx, 0x8(%rax)
movw 0x2c(%rsp), %cx
movq 0x18(%rsp), %rax
movw %cx, 0xa(%rax)
cvttss2si 0x38(%rsp), %eax
movw %ax, %cx
movq 0x18(%rsp), %rax
movw %cx, 0xc(%rax)
cvttss2si 0x3c(%rsp), %eax
movw %ax, %cx
movq 0x18(%rsp), %rax
movw %cx, 0xe(%rax)
cvttss2si 0x40(%rsp), %eax
movw %ax, %cx
movq 0x18(%rsp), %rax
movw %cx, 0x10(%rax)
cvttss2si 0x44(%rsp), %eax
movw %ax, %cx
movq 0x18(%rsp), %rax
movw %cx, 0x12(%rax)
movq 0x30(%rsp), %rdi
movq 0x18(%rsp), %rsi
leaq 0x7ec16(%rip), %rdx     # 0xa7244
leaq 0x7ec1b(%rip), %rcx     # 0xa7250
callq 0x15130
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq $0x0, 0x10(%rax)
movq 0x20(%rsp), %rax
leaq 0x38(%rip), %rcx        # 0x28690
movq %rcx, 0x8(%rax)
cmpq $0x0, 0x8(%rsp)
jne 0x2867e
jmp 0x28666
movq 0x20(%rsp), %rax
movl 0x70(%rax), %ecx
orl $0x80, %ecx
movq 0x20(%rsp), %rax
movl %ecx, 0x70(%rax)
jmp 0x2867e
movq 0x20(%rsp), %rax
addq $0x48, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/image.c
// Function: freeimage
static int freeimage(lua_State *L, ud_t *ud)
    {
    nk_image_t *image = (nk_image_t*)ud->handle;
    freechildren(L, CURSOR_MT, ud);
    if(!freeuserdata(L, ud, "image")) return 0;
    Free(L, image);
    return 0;
    }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq %rsi, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rdx
leaq 0x7ea06(%rip), %rsi     # 0xa70c2
callq 0x131f0
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
leaq 0x7eb7e(%rip), %rdx     # 0xa7250
callq 0x14f50
cmpl $0x0, %eax
jne 0x286e6
movl $0x0, 0x24(%rsp)
jmp 0x286fd
movq 0x18(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x14230
movl $0x0, 0x24(%rsp)
movl 0x24(%rsp), %eax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: Mouse_delta
static int Mouse_delta(lua_State *L)
    {
    const nk_input_t *input = checkinput(L, 1);
    lua_pushnumber(L, input->mouse.delta.x);
    lua_pushnumber(L, input->mouse.delta.y);
    return 2;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
callq 0x29370
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x154(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x158(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movl $0x2, %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: Mouse_scroll_delta
static int Mouse_scroll_delta(lua_State *L)
    {
    const nk_input_t *input = checkinput(L, 1);
    lua_pushnumber(L, input->mouse.scroll_delta.x);
    lua_pushnumber(L, input->mouse.scroll_delta.y);
    return 2;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
callq 0x29370
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x15c(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x160(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movl $0x2, %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: Mouse_pos
static int Mouse_pos(lua_State *L)
    {
    const nk_input_t *input = checkinput(L, 1);
    lua_pushnumber(L, input->mouse.pos.x);
    lua_pushnumber(L, input->mouse.pos.y);
    return 2;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
callq 0x29370
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x144(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rax
movss 0x148(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x142e0
movl $0x2, %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: InputMotion
static int InputMotion(lua_State *L)
    {
    nk_context_t *context = checkcontext(L, 1, NULL);
    int x = luaL_checkinteger(L, 2);
    int y = luaL_checkinteger(L, 3);
    nk_input_motion(context, x, y);
    return 0;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
xorl %eax, %eax
movl %eax, %edx
leaq 0x7de12(%rip), %rcx     # 0xa7280
callq 0x130f0
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movl $0x2, %esi
callq 0x14070
movl %eax, 0x4(%rsp)
movq 0x10(%rsp), %rdi
movl $0x3, %esi
callq 0x14070
movl %eax, (%rsp)
movq 0x8(%rsp), %rdi
movl 0x4(%rsp), %esi
movl (%rsp), %edx
callq 0x145b0
xorl %eax, %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: Input_mouse_pos
static int Input_mouse_pos(lua_State *L)
    {
    nk_input_t *input = checkinput(L, 1);
    float x = luaL_checknumber(L, 2);
    float y = luaL_checknumber(L, 3);
    input->mouse.pos.x = x;
    input->mouse.pos.y = y;
    return 0;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
callq 0x29370
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movl $0x2, %esi
callq 0x13950
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x4(%rsp)
movq 0x10(%rsp), %rdi
movl $0x3, %esi
callq 0x13950
cvtsd2ss %xmm0, %xmm0
movss %xmm0, (%rsp)
movss 0x4(%rsp), %xmm0
movq 0x8(%rsp), %rax
movss %xmm0, 0x144(%rax)
movss (%rsp), %xmm0
movq 0x8(%rsp), %rax
movss %xmm0, 0x148(%rax)
xorl %eax, %eax
addq $0x18, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: InputKey
static int InputKey(lua_State *L)
    {
    nk_context_t *context = checkcontext(L, 1, NULL);
    enum nk_keys key = checkkeys(L, 2);
    int down = optboolean(L, 3, nk_false);
    nk_input_key(context, key, down);
    return 0;
    }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rdi
movl $0x1, %esi
xorl %eax, %eax
movl %eax, %edx
leaq 0x7dd22(%rip), %rcx     # 0xa7280
callq 0x130f0
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
movl $0x2, %edx
movl %edx, %esi
callq 0x14470
movl %eax, 0x4(%rsp)
movq 0x10(%rsp), %rdi
movl $0x3, %esi
xorl %edx, %edx
callq 0x14ba0
movl %eax, (%rsp)
movq 0x8(%rsp), %rdi
movl 0x4(%rsp), %esi
movl (%rsp), %edx
callq 0x14c00
xorl %eax, %eax
addq $0x18, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/input.c
// Function: InputKeys
static int InputKeys(lua_State *L)
    {
    int key;
    int down[NK_KEY_MAX];
    nk_context_t *context = checkcontext(L, 1, NULL);
    if(echeckkeytable(L, 2, down)) return argerror(L, 2);
    for(key = 0; key < NK_KEY_MAX; key++)
        nk_input_key(context, (enum nk_keys)key, down[key]);
    return 0;
    }

// Assembly:
subq $0xa8, %rsp
movq %rdi, 0x98(%rsp)
movq 0x98(%rsp), %rdi
movl $0x1, %esi
xorl %eax, %eax
movl %eax, %edx
leaq 0x7dca9(%rip), %rcx     # 0xa7280
callq 0x130f0
movq %rax, 0x8(%rsp)
movq 0x98(%rsp), %rdi
leaq 0x10(%rsp), %rdx
movl $0x2, %esi
callq 0x13ab0
cmpl $0x0, %eax
je 0x29639
movq 0x98(%rsp), %rax
movq %rax, (%rsp)
movq 0x98(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %eax, %eax
movl %eax, %edx
callq 0x136c0
movq (%rsp), %rdi
movq %rax, %rdx
movl $0x2, %esi
callq 0x134c0
movl %eax, 0xa4(%rsp)
jmp 0x29689
movl $0x0, 0x94(%rsp)
cmpl $0x1e, 0x94(%rsp)
jge 0x2967e
movq 0x8(%rsp), %rdi
movl 0x94(%rsp), %esi
movslq 0x94(%rsp), %rax
movl 0x10(%rsp,%rax,4), %edx
callq 0x14c00
movl 0x94(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x94(%rsp)
jmp 0x29644
movl $0x0, 0xa4(%rsp)
movl 0xa4(%rsp), %eax
addq $0xa8, %rsp
retq
nopl (%rax,%rax)