// File: /workspace/github_cpp_makefile_star2_O1/stetre[P]moonvulkan/src/flags.c
// Function: ImageUsageFlags
static int ImageUsageFlags(lua_State *L)
    {
    if(lua_type(L, 1) == LUA_TNUMBER)
        return pushimageusageflags(L, luaL_checkinteger(L, 1));
    lua_pushinteger(L, checkimageusageflags(L, 1));
    return 1;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movl $0x1, %esi
callq 0x1a130
cmpl $0x3, %eax
jne 0x3d9da
movq %rbx, %rdi
movl $0x1, %esi
callq 0x190f0
movq %rax, %r14
xorl %ebp, %ebp
testb $0x1, %r14b
je 0x3d919
leaq 0x60846(%rip), %rsi     # 0x9e152
movq %rbx, %rdi
callq 0x1a300
movl $0x1, %ebp
testb $0x2, %r14b
je 0x3d930
leaq 0x60839(%rip), %rsi     # 0x9e15f
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb $0x4, %r14b
je 0x3d947
leaq 0x60ddc(%rip), %rsi     # 0x9e719
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb $0x8, %r14b
je 0x3d95e
leaq 0x608e1(%rip), %rsi     # 0x9e235
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb $0x10, %r14b
je 0x3d975
leaq 0x60db6(%rip), %rsi     # 0x9e721
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb $0x20, %r14b
je 0x3d98c
leaq 0x60db0(%rip), %rsi     # 0x9e732
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb $0x40, %r14b
je 0x3d9a3
leaq 0x60db2(%rip), %rsi     # 0x9e74b
movq %rbx, %rdi
callq 0x1a300
incl %ebp
testb %r14b, %r14b
jns 0x3d9b9
leaq 0x59527(%rip), %rsi     # 0x96ed6
movq %rbx, %rdi
callq 0x1a300
incl %ebp
btl $0x9, %r14d
jae 0x3db27
leaq 0x60d95(%rip), %rsi     # 0x9e760
movq %rbx, %rdi
callq 0x1a300
incl %ebp
jmp 0x3db27
movl $0x1, %ebp
movq %rbx, %rdi
movl $0x1, %esi
callq 0x1a680
xorl %r14d, %r14d
testl %eax, %eax
je 0x3db17
leaq 0x60754(%rip), %r15     # 0x9e152
leaq 0x6075a(%rip), %r12     # 0x9e15f
movq %rbx, %rdi
movl %ebp, %esi
xorl %edx, %edx
callq 0x18690
movq %rax, %r13
movq %rax, %rdi
movq %r15, %rsi
callq 0x19000
testl %eax, %eax
je 0x3daca
movq %r13, %rdi
movq %r12, %rsi
callq 0x19000
testl %eax, %eax
je 0x3dad1
movq %r13, %rdi
leaq 0x60cd5(%rip), %rsi     # 0x9e719
callq 0x19000
testl %eax, %eax
je 0x3dad8
movq %r13, %rdi
leaq 0x607da(%rip), %rsi     # 0x9e235
callq 0x19000
testl %eax, %eax
je 0x3dadf
movq %r13, %rdi
leaq 0x60cb3(%rip), %rsi     # 0x9e721
callq 0x19000
testl %eax, %eax
je 0x3dae6
movq %r13, %rdi
leaq 0x60cb1(%rip), %rsi     # 0x9e732
callq 0x19000
testl %eax, %eax
je 0x3daed
movq %r13, %rdi
leaq 0x60cb7(%rip), %rsi     # 0x9e74b
callq 0x19000
testl %eax, %eax
je 0x3daf4
movq %r13, %rdi
leaq 0x5942f(%rip), %rsi     # 0x96ed6
callq 0x19000
testl %eax, %eax
je 0x3dafb
movq %r13, %rdi
leaq 0x60ca6(%rip), %rsi     # 0x9e760
callq 0x19000
movl $0x200, %ecx            # imm = 0x200
testl %eax, %eax
je 0x3db00
jmp 0x3db38
movl $0x1, %ecx
jmp 0x3db00
movl $0x2, %ecx
jmp 0x3db00
movl $0x4, %ecx
jmp 0x3db00
movl $0x8, %ecx
jmp 0x3db00
movl $0x10, %ecx
jmp 0x3db00
movl $0x20, %ecx
jmp 0x3db00
movl $0x40, %ecx
jmp 0x3db00
movl $0x80, %ecx
orl %ecx, %r14d
incl %ebp
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1a680
testl %eax, %eax
jne 0x3da05
movl %r14d, %esi
movq %rbx, %rdi
callq 0x18b60
movl $0x1, %ebp
movl %ebp, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x53ea7(%rip), %rsi     # 0x919e6
movq %rbx, %rdi
movq %r13, %rdx
xorl %eax, %eax
callq 0x18eb0
movq %rbx, %rdi
movl %ebp, %esi
movq %rax, %rdx
callq 0x18420
movl %eax, %r14d
jmp 0x3db17