// File: /workspace/github_c_makefile_star2_O0/arkanis[P]process-map/./deps/raygui.h
// Function: GuiButton
bool GuiButton(Rectangle bounds, const char *text)
{
    GuiControlState state = guiState;
    bool pressed = false;

    // Update control
    //--------------------------------------------------------------------
    if ((state != GUI_STATE_DISABLED) && !guiLocked)
    {
        Vector2 mousePoint = GetMousePosition();

        // Check button state
        if (CheckCollisionPointRec(mousePoint, bounds))
        {
            if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = GUI_STATE_PRESSED;
            else state = GUI_STATE_FOCUSED;

            if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true;
        }
    }
    //--------------------------------------------------------------------

    // Draw control
    //--------------------------------------------------------------------
    GuiDrawRectangle(bounds, GuiGetStyle(BUTTON, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(BUTTON, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(BUTTON, BASE + (state*3))), guiAlpha));
    GuiDrawText(text, GetTextBounds(BUTTON, bounds), GuiGetStyle(BUTTON, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(BUTTON, TEXT + (state*3))), guiAlpha));
    //------------------------------------------------------------------

    return pressed;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movlpd %xmm0, -0x10(%rbp)
movlpd %xmm1, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movl 0xc2ce4(%rip), %eax     # 0xca0e0
movl %eax, -0x1c(%rbp)
movb $0x0, -0x1d(%rbp)
cmpl $0x3, -0x1c(%rbp)
je 0x7468
testb $0x1, 0xc2cd4(%rip)     # 0xca0e4
jne 0x7468
callq 0x2dd60
movlpd %xmm0, -0x28(%rbp)
movsd -0x28(%rbp), %xmm0
movsd -0x10(%rbp), %xmm1
movsd -0x8(%rbp), %xmm2
callq 0x3e640
testb $0x1, %al
jne 0x7436
jmp 0x7466
xorl %edi, %edi
callq 0x2ddd0
testb $0x1, %al
jne 0x7443
jmp 0x744c
movl $0x2, -0x1c(%rbp)
jmp 0x7453
movl $0x1, -0x1c(%rbp)
xorl %edi, %edi
callq 0x34c30
testb $0x1, %al
jne 0x7460
jmp 0x7464
movb $0x1, -0x1d(%rbp)
jmp 0x7466
jmp 0x7468
movl $0x2, %edi
movl %edi, -0x64(%rbp)
movl $0xc, %esi
callq 0x6f90
movl -0x64(%rbp), %edi
movl %eax, -0x68(%rbp)
movl -0x1c(%rbp), %ecx
movl %ecx, %eax
leal (%rax,%rax,2), %esi
callq 0x6f90
movl %eax, %edi
callq 0x526e0
movl %eax, -0x30(%rbp)
movss 0xc0f71(%rip), %xmm0    # 0xc8410
movl -0x30(%rbp), %edi
callq 0x51fa0
movl -0x64(%rbp), %edi
movl %eax, -0x2c(%rbp)
movl -0x1c(%rbp), %ecx
movl %ecx, %eax
leal 0x1(%rax,%rax,2), %esi
callq 0x6f90
movl %eax, %edi
callq 0x526e0
movl %eax, -0x38(%rbp)
movss 0xc0f43(%rip), %xmm0    # 0xc8410
movl -0x38(%rbp), %edi
callq 0x51fa0
movl -0x68(%rbp), %edi
movl %eax, -0x34(%rbp)
movsd -0x10(%rbp), %xmm0
movsd -0x8(%rbp), %xmm1
movl -0x2c(%rbp), %esi
movl -0x34(%rbp), %edx
callq 0x77c0
movl -0x64(%rbp), %edi
movq -0x18(%rbp), %rax
movq %rax, -0x60(%rbp)
movsd -0x10(%rbp), %xmm0
movsd -0x8(%rbp), %xmm1
callq 0x9f70
movl -0x64(%rbp), %edi
movlpd %xmm0, -0x48(%rbp)
movlpd %xmm1, -0x40(%rbp)
movl $0xe, %esi
callq 0x6f90
movl -0x64(%rbp), %edi
movl %eax, -0x54(%rbp)
movl -0x1c(%rbp), %ecx
movl %ecx, %eax
leal 0x2(%rax,%rax,2), %esi
callq 0x6f90
movl %eax, %edi
callq 0x526e0
movl %eax, -0x50(%rbp)
movss 0xc0ec9(%rip), %xmm0    # 0xc8410
movl -0x50(%rbp), %edi
callq 0x51fa0
movq -0x60(%rbp), %rdi
movl -0x54(%rbp), %esi
movl %eax, -0x4c(%rbp)
movsd -0x48(%rbp), %xmm0
movsd -0x40(%rbp), %xmm1
movl -0x4c(%rbp), %edx
callq 0x9cf0
movb -0x1d(%rbp), %al
andb $0x1, %al
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)