// File: donfreiday[P]gb/./imgui/imgui.cpp
// Function: ImGui::DragFloatRange2(char const*, float*, float*, float, float, float, char const*, char const*, float)
bool ImGui::DragFloatRange2(const char* label, float* v_current_min, float* v_current_max, float v_speed, float v_min, float v_max, const char* display_format, const char* display_format_max, float power)
{
    ImGuiWindow* window = GetCurrentWindow();
    if (window->SkipItems)
        return false;

    ImGuiState& g = *GImGui;
    ImGui::PushID(label);
    ImGui::BeginGroup();
    PushMultiItemsWidths(2);

    bool value_changed = ImGui::DragFloat("##min", v_current_min, v_speed, (v_min >= v_max) ? -FLT_MAX : v_min, (v_min >= v_max) ? *v_current_max : ImMin(v_max, *v_current_max), display_format, power);
    ImGui::PopItemWidth();
    ImGui::SameLine(0, g.Style.ItemInnerSpacing.x);
    value_changed |= ImGui::DragFloat("##max", v_current_max, v_speed, (v_min >= v_max) ? *v_current_min : ImMax(v_min, *v_current_min), (v_min >= v_max) ? FLT_MAX : v_max, display_format_max ? display_format_max : display_format, power);
    ImGui::PopItemWidth();
    ImGui::SameLine(0, g.Style.ItemInnerSpacing.x);

    ImGui::TextUnformatted(label, FindTextDisplayEnd(label));
    ImGui::EndGroup();
    ImGui::PopID();

    return value_changed;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movss %xmm0, -0x24(%rbp)
movss %xmm1, -0x28(%rbp)
movss %xmm2, -0x2c(%rbp)
movq %rcx, -0x38(%rbp)
movq %r8, -0x40(%rbp)
movss %xmm3, -0x44(%rbp)
callq 0x2e220
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
testb $0x1, 0x74(%rax)
je 0x225bf
movb $0x0, -0x1(%rbp)
jmp 0x227eb
movq 0x56efa(%rip), %rax     # 0x794c0
movq %rax, -0x58(%rbp)
movq -0x10(%rbp), %rdi
callq 0x1b8c0
callq 0x211c0
movl $0x2, %edi
xorps %xmm0, %xmm0
callq 0x21310
movq -0x18(%rbp), %rax
movq %rax, -0x68(%rbp)
movss -0x24(%rbp), %xmm0
movss %xmm0, -0x60(%rbp)
movss -0x28(%rbp), %xmm0
ucomiss -0x2c(%rbp), %xmm0
jb 0x22611
movss 0x38a96(%rip), %xmm0    # 0x5b0a0
movss %xmm0, -0x6c(%rbp)
jmp 0x2261b
movss -0x28(%rbp), %xmm0
movss %xmm0, -0x6c(%rbp)
movss -0x6c(%rbp), %xmm0
movss %xmm0, -0x70(%rbp)
movss -0x28(%rbp), %xmm0
ucomiss -0x2c(%rbp), %xmm0
jb 0x2263f
movq -0x20(%rbp), %rax
movss (%rax), %xmm0
movss %xmm0, -0x74(%rbp)
jmp 0x22656
movss -0x2c(%rbp), %xmm0
movq -0x20(%rbp), %rax
movss (%rax), %xmm1
callq 0xe370
movss %xmm0, -0x74(%rbp)
movss -0x70(%rbp), %xmm1
movss -0x60(%rbp), %xmm0
movq -0x68(%rbp), %rsi
movss -0x74(%rbp), %xmm2
movq -0x38(%rbp), %rdx
movss -0x44(%rbp), %xmm3
leaq 0x398c9(%rip), %rdi     # 0x5bf42
callq 0x21e10
andb $0x1, %al
movb %al, -0x59(%rbp)
callq 0xb0f0
movq -0x58(%rbp), %rax
movss 0x141c(%rax), %xmm1
xorps %xmm0, %xmm0
callq 0x1a5e0
movq -0x20(%rbp), %rax
movq %rax, -0x80(%rbp)
movss -0x24(%rbp), %xmm0
movss %xmm0, -0x78(%rbp)
movss -0x28(%rbp), %xmm0
ucomiss -0x2c(%rbp), %xmm0
jb 0x226cb
movq -0x18(%rbp), %rax
movss (%rax), %xmm0
movss %xmm0, -0x84(%rbp)
jmp 0x226e5
movss -0x28(%rbp), %xmm0
movq -0x18(%rbp), %rax
movss (%rax), %xmm1
callq 0xb7c0
movss %xmm0, -0x84(%rbp)
movss -0x84(%rbp), %xmm0
movss %xmm0, -0x88(%rbp)
movss -0x28(%rbp), %xmm0
ucomiss -0x2c(%rbp), %xmm0
jb 0x22712
movss 0x38994(%rip), %xmm0    # 0x5b09c
movss %xmm0, -0x8c(%rbp)
jmp 0x2271f
movss -0x2c(%rbp), %xmm0
movss %xmm0, -0x8c(%rbp)
movss -0x8c(%rbp), %xmm0
movss %xmm0, -0x90(%rbp)
cmpq $0x0, -0x40(%rbp)
je 0x22743
movq -0x40(%rbp), %rax
movq %rax, -0x98(%rbp)
jmp 0x2274e
movq -0x38(%rbp), %rax
movq %rax, -0x98(%rbp)
movss -0x90(%rbp), %xmm2
movss -0x88(%rbp), %xmm1
movss -0x78(%rbp), %xmm0
movq -0x80(%rbp), %rsi
movq -0x98(%rbp), %rdx
movss -0x44(%rbp), %xmm3
leaq 0x397ce(%rip), %rdi     # 0x5bf48
callq 0x21e10
andb $0x1, %al
movzbl %al, %ecx
movb -0x59(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
orl %ecx, %eax
cmpl $0x0, %eax
setne %al
andb $0x1, %al
movb %al, -0x59(%rbp)
callq 0xb0f0
movq -0x58(%rbp), %rax
movss 0x141c(%rax), %xmm1
xorps %xmm0, %xmm0
callq 0x1a5e0
movq -0x10(%rbp), %rax
movq %rax, -0xa0(%rbp)
movq -0x10(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x10230
movq -0xa0(%rbp), %rdi
movq %rax, %rsi
callq 0xf8c0
callq 0x21490
callq 0x1b550
movb -0x59(%rbp), %al
andb $0x1, %al
movb %al, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0xa0, %rsp
popq %rbp
retq
nopl (%rax)