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

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
pushq $0x1
popq %rbp
movl %ebp, %esi
callq 0x1a110
cmpl $0x3, %eax
jne 0x3d191
pushq $0x1
popq %r15
movq %rbx, %rdi
movl %r15d, %esi
callq 0x190d0
movq %rax, %r14
xorl %ebp, %ebp
testb $0x1, %r14b
je 0x3d0d0
leaq 0x48e85(%rip), %rsi     # 0x85f4a
movq %rbx, %rdi
callq 0x1a2e0
movl %r15d, %ebp
testb $0x2, %r14b
je 0x3d0e7
leaq 0x4fbe2(%rip), %rsi     # 0x8ccbf
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb $0x4, %r14b
je 0x3d0fe
leaq 0x4fbe7(%rip), %rsi     # 0x8ccdb
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb $0x8, %r14b
je 0x3d115
leaq 0x4fbed(%rip), %rsi     # 0x8ccf8
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb $0x10, %r14b
je 0x3d12c
leaq 0x4fb79(%rip), %rsi     # 0x8cc9b
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb $0x20, %r14b
je 0x3d143
leaq 0x4fb74(%rip), %rsi     # 0x8ccad
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb $0x40, %r14b
je 0x3d15a
leaq 0x4fb79(%rip), %rsi     # 0x8ccc9
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
testb %r14b, %r14b
jns 0x3d170
leaq 0x4fb80(%rip), %rsi     # 0x8cce6
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
btl $0x8, %r14d
jae 0x3d2d2
leaq 0x4fb81(%rip), %rsi     # 0x8cd03
movq %rbx, %rdi
callq 0x1a2e0
incl %ebp
jmp 0x3d2d2
xorl %r14d, %r14d
leaq 0x48daf(%rip), %r15     # 0x85f4a
movl %ebp, %r12d
movq %rbx, %rdi
movl %r12d, %esi
callq 0x1a660
testl %eax, %eax
je 0x3d2c4
movq %rbx, %rdi
movl %r12d, %esi
xorl %edx, %edx
callq 0x18680
movq %rax, %r13
movq %rax, %rdi
movq %r15, %rsi
callq 0x18fe0
movl %ebp, %ecx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fadf(%rip), %rsi     # 0x8ccbf
callq 0x18fe0
pushq $0x2
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fae1(%rip), %rsi     # 0x8ccdb
callq 0x18fe0
pushq $0x4
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fae4(%rip), %rsi     # 0x8ccf8
callq 0x18fe0
pushq $0x8
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fa71(%rip), %rsi     # 0x8cc9b
callq 0x18fe0
pushq $0x10
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fa6d(%rip), %rsi     # 0x8ccad
callq 0x18fe0
pushq $0x20
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fa73(%rip), %rsi     # 0x8ccc9
callq 0x18fe0
pushq $0x40
popq %rcx
testl %eax, %eax
je 0x3d294
movq %r13, %rdi
leaq 0x4fa7a(%rip), %rsi     # 0x8cce6
callq 0x18fe0
testl %eax, %eax
je 0x3d28f
movq %r13, %rdi
leaq 0x4fa84(%rip), %rsi     # 0x8cd03
callq 0x18fe0
movl $0x100, %ecx            # imm = 0x100
testl %eax, %eax
je 0x3d294
jmp 0x3d29f
movl $0x80, %ecx
orl %ecx, %r14d
incl %r12d
jmp 0x3d19e
leaq 0x42740(%rip), %rsi     # 0x7f9e6
movq %rbx, %rdi
movq %r13, %rdx
xorl %eax, %eax
callq 0x18e90
movq %rbx, %rdi
movl %r12d, %esi
movq %rax, %rdx
callq 0x18420
movl %eax, %r14d
movl %r14d, %esi
movq %rbx, %rdi
callq 0x18b50
pushq $0x1
popq %rbp
movl %ebp, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq