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

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

// Assembly:
cmpl $0x1000000, %r8d        # imm = 0x1000000
jb 0x7a704
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %r8d, %r14d
movq %rdx, %r12
movq %rsi, %r13
movq %rdi, %rbx
movl 0x78(%rdi), %r15d
movl 0x7c(%rdi), %eax
cmpl %eax, %r15d
jne 0x7a580
incl %r15d
testl %eax, %eax
je 0x7a516
movl %eax, %edx
shrl $0x1f, %edx
addl %eax, %edx
sarl %edx
addl %eax, %edx
jmp 0x7a51b
movl $0x8, %edx
cmpl %r15d, %edx
cmovgl %edx, %r15d
cmpl %r15d, %eax
jge 0x7a580
movq %rcx, -0x38(%rbp)
movss %xmm0, -0x2c(%rbp)
movslq %r15d, %rdi
shlq $0x3, %rdi
callq 0x424fb
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x7a56c
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %rax, %rdi
movq %rax, -0x40(%rbp)
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x425d4
movq -0x40(%rbp), %rax
movq %rax, 0x80(%rbx)
movl %r15d, 0x7c(%rbx)
movss -0x2c(%rbp), %xmm0
movq -0x38(%rbp), %rcx
movq 0x80(%rbx), %rax
movslq 0x78(%rbx), %rsi
movq (%r13), %rdx
movq %rdx, (%rax,%rsi,8)
movl 0x78(%rbx), %r13d
movl 0x7c(%rbx), %eax
leal 0x1(%r13), %edx
movl %edx, 0x78(%rbx)
cmpl %eax, %edx
jne 0x7a61f
addl $0x2, %r13d
testl %eax, %eax
je 0x7a5ba
movl %eax, %edx
shrl $0x1f, %edx
addl %eax, %edx
sarl %edx
addl %eax, %edx
jmp 0x7a5bf
movl $0x8, %edx
cmpl %r13d, %edx
cmovgl %edx, %r13d
cmpl %r13d, %eax
jge 0x7a61f
movq %rcx, -0x38(%rbp)
movss %xmm0, -0x2c(%rbp)
movslq %r13d, %rdi
shlq $0x3, %rdi
callq 0x424fb
movq %rax, %r15
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x7a60b
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r15, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x425d4
movq %r15, 0x80(%rbx)
movl %r13d, 0x7c(%rbx)
movss -0x2c(%rbp), %xmm0
movq -0x38(%rbp), %rcx
movq 0x80(%rbx), %rax
movslq 0x78(%rbx), %rsi
movq (%r12), %rdx
movq %rdx, (%rax,%rsi,8)
movl 0x78(%rbx), %r12d
movl 0x7c(%rbx), %eax
leal 0x1(%r12), %edx
movl %edx, 0x78(%rbx)
cmpl %eax, %edx
jne 0x7a6bd
addl $0x2, %r12d
testl %eax, %eax
je 0x7a65a
movl %eax, %edx
shrl $0x1f, %edx
addl %eax, %edx
sarl %edx
addl %eax, %edx
jmp 0x7a65f
movl $0x8, %edx
cmpl %r12d, %edx
cmovgl %edx, %r12d
cmpl %r12d, %eax
jge 0x7a6bd
movq %rcx, %r13
movss %xmm0, -0x2c(%rbp)
movslq %r12d, %rdi
shlq $0x3, %rdi
callq 0x424fb
movq %rax, %r15
movq 0x80(%rbx), %rsi
testq %rsi, %rsi
je 0x7a6aa
movslq 0x78(%rbx), %rdx
shlq $0x3, %rdx
movq %r15, %rdi
callq 0xc080
movq 0x80(%rbx), %rdi
callq 0x425d4
movq %r15, 0x80(%rbx)
movl %r12d, 0x7c(%rbx)
movss -0x2c(%rbp), %xmm0
movq %r13, %rcx
movq 0x80(%rbx), %rax
movslq 0x78(%rbx), %rsi
movq (%rcx), %rdx
movq %rdx, (%rax,%rsi,8)
movl 0x78(%rbx), %edx
incl %edx
movl %edx, 0x78(%rbx)
movq 0x80(%rbx), %rsi
movq %rbx, %rdi
movl %r14d, %ecx
movl $0x1, %r8d
callq 0x77886
movl $0x0, 0x78(%rbx)
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop