// File: /workspace/github_cpp_makefile_star2_O3/Ciaxur[P]yagb-emu/include/imgui/imgui_draw.cpp
// Function: ImDrawList::AddQuad(ImVec2 const&, ImVec2 const&, ImVec2 const&, ImVec2 const&, unsigned int, float)
void ImDrawList::AddQuad(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, ImU32 col, float thickness)
{
    if ((col & IM_COL32_A_MASK) == 0)
        return;

    PathLineTo(p1);
    PathLineTo(p2);
    PathLineTo(p3);
    PathLineTo(p4);
    PathStroke(col, true, thickness);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movss %xmm0, -0x30(%rbp)
cmpl $0x1000000, %r9d        # imm = 0x1000000
jb 0x78a23
movl %r9d, %r14d
movq %rdx, %r13
movq %rsi, %r15
movq %rdi, %rbx
movq %r8, -0x40(%rbp)
movl 0x78(%rdi), %eax
cmpl 0x7c(%rdi), %eax
movq %rcx, -0x38(%rbp)
jne 0x787ec
movl %r14d, -0x2c(%rbp)
leal 0x1(%rax), %r14d
testl %eax, %eax
je 0x787f5
movl %eax, %ecx
shrl $0x1f, %ecx
addl %eax, %ecx
sarl %ecx
addl %eax, %ecx
jmp 0x787fa
movq 0x80(%rbx), %r12
jmp 0x7884a
movl $0x8, %ecx
cmpl %r14d, %ecx
cmovgl %ecx, %r14d
movslq %r14d, %rdi
shlq $0x3, %rdi
callq 0x41c63
movq %rax, %r12
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x78838
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r12, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x41d3c
movq %r12, 0x80(%rbx)
movl %r14d, 0x7c(%rbx)
movl 0x78(%rbx), %eax
movl -0x2c(%rbp), %r14d
cltq
movq (%r15), %rcx
movq %rcx, (%r12,%rax,8)
movl 0x78(%rbx), %r12d
leal 0x1(%r12), %eax
movl %eax, 0x78(%rbx)
cmpl 0x7c(%rbx), %eax
jne 0x78879
addl $0x2, %r12d
testl %eax, %eax
je 0x78882
movl %eax, %ecx
shrl $0x1f, %ecx
addl %eax, %ecx
sarl %ecx
addl %eax, %ecx
jmp 0x78887
movq 0x80(%rbx), %r15
jmp 0x788d3
movl $0x8, %ecx
cmpl %r12d, %ecx
cmovgl %ecx, %r12d
movslq %r12d, %rdi
shlq $0x3, %rdi
callq 0x41c63
movq %rax, %r15
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x788c5
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r15, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x41d3c
movq %r15, 0x80(%rbx)
movl %r12d, 0x7c(%rbx)
movl 0x78(%rbx), %eax
cltq
movq (%r13), %rcx
movq %rcx, (%r15,%rax,8)
movl 0x78(%rbx), %r12d
leal 0x1(%r12), %eax
movl %eax, 0x78(%rbx)
cmpl 0x7c(%rbx), %eax
jne 0x78903
addl $0x2, %r12d
testl %eax, %eax
je 0x7890c
movl %eax, %ecx
shrl $0x1f, %ecx
addl %eax, %ecx
sarl %ecx
addl %eax, %ecx
jmp 0x78911
movq 0x80(%rbx), %r15
jmp 0x7895d
movl $0x8, %ecx
cmpl %r12d, %ecx
cmovgl %ecx, %r12d
movslq %r12d, %rdi
shlq $0x3, %rdi
callq 0x41c63
movq %rax, %r15
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x7894f
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r15, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x41d3c
movq %r15, 0x80(%rbx)
movl %r12d, 0x7c(%rbx)
movl 0x78(%rbx), %eax
movq -0x38(%rbp), %rcx
cltq
movq (%rcx), %rcx
movq %rcx, (%r15,%rax,8)
movl 0x78(%rbx), %r12d
leal 0x1(%r12), %eax
movl %eax, 0x78(%rbx)
cmpl 0x7c(%rbx), %eax
jne 0x78990
addl $0x2, %r12d
testl %eax, %eax
je 0x78999
movl %eax, %ecx
shrl $0x1f, %ecx
addl %eax, %ecx
sarl %ecx
addl %eax, %ecx
jmp 0x7899e
movq 0x80(%rbx), %r15
jmp 0x789ea
movl $0x8, %ecx
cmpl %r12d, %ecx
cmovgl %ecx, %r12d
movslq %r12d, %rdi
shlq $0x3, %rdi
callq 0x41c63
movq %rax, %r15
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x789dc
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r15, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x41d3c
movq %r15, 0x80(%rbx)
movl %r12d, 0x7c(%rbx)
movl 0x78(%rbx), %eax
cltq
movq -0x40(%rbp), %rcx
movq (%rcx), %rcx
movq %rcx, (%r15,%rax,8)
movl 0x78(%rbx), %edx
incl %edx
movl %edx, 0x78(%rbx)
movq 0x80(%rbx), %rsi
movq %rbx, %rdi
movl %r14d, %ecx
movl $0x1, %r8d
movss -0x30(%rbp), %xmm0
callq 0x76296
movl $0x0, 0x78(%rbx)
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq