// File: donfreiday[P]gb/./imgui/imgui_demo.cpp
// Function: ShowExampleMenuFile()
static void ShowExampleMenuFile()
{
    ImGui::MenuItem("(dummy menu)", NULL, false, false);
    if (ImGui::MenuItem("New")) {}
    if (ImGui::MenuItem("Open", "Ctrl+O")) {}
    if (ImGui::BeginMenu("Open Recent"))
    {
        ImGui::MenuItem("fish_hat.c");
        ImGui::MenuItem("fish_hat.inl");
        ImGui::MenuItem("fish_hat.h");
        if (ImGui::BeginMenu("More.."))
        {
            ImGui::MenuItem("Hello");
            ImGui::MenuItem("Sailor");
            if (ImGui::BeginMenu("Recurse.."))
            {
                ShowExampleMenuFile();
                ImGui::EndMenu();
            }
            ImGui::EndMenu();
        }
        ImGui::EndMenu();
    }
    if (ImGui::MenuItem("Save", "Ctrl+S")) {}
    if (ImGui::MenuItem("Save As..")) {}
    ImGui::Separator();
    if (ImGui::BeginMenu("Options"))
    {
        static bool enabled = true;
        ImGui::MenuItem("Enabled", "", &enabled);
        ImGui::BeginChild("child", ImVec2(0, 60), true);
        for (int i = 0; i < 10; i++)
            ImGui::Text("Scrolling Text %d", i);
        ImGui::EndChild();
        static float f = 0.5f;
        static int n = 0;
        ImGui::SliderFloat("Value", &f, 0.0f, 1.0f);
        ImGui::InputFloat("Input", &f, 0.1f);
        ImGui::Combo("Combo", &n, "Yes\0No\0Maybe\0\0");
        ImGui::EndMenu();
    }
    if (ImGui::BeginMenu("Colors"))
    {
        for (int i = 0; i < ImGuiCol_COUNT; i++)
            ImGui::MenuItem(ImGui::GetStyleColName((ImGuiCol)i));
        ImGui::EndMenu();
    }
    if (ImGui::BeginMenu("Disabled", false)) // Disabled
    {
        IM_ASSERT(0);
    }
    if (ImGui::MenuItem("Checked", NULL, true)) {}
    if (ImGui::MenuItem("Quit", "Alt+F4")) {}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x26016(%rip), %rdi     # 0x5fb75
xorl %eax, %eax
movl %eax, %esi
xorl %ecx, %ecx
movl %ecx, %edx
callq 0x27ed0
leaq 0x2600f(%rip), %rdi     # 0x5fb82
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
testb $0x1, %al
jne 0x39b89
jmp 0x39b8b
jmp 0x39b8b
leaq 0x25ff4(%rip), %rdi     # 0x5fb86
leaq 0x25ff2(%rip), %rsi     # 0x5fb8b
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
testb $0x1, %al
jne 0x39bab
jmp 0x39bad
jmp 0x39bad
leaq 0x25fde(%rip), %rdi     # 0x5fb92
movl $0x1, %esi
callq 0x28570
testb $0x1, %al
jne 0x39bc7
jmp 0x39c7c
leaq 0x25fd0(%rip), %rdi     # 0x5fb9e
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
leaq 0x25fc4(%rip), %rdi     # 0x5fba9
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
leaq 0x25fba(%rip), %rdi     # 0x5fbb6
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
leaq 0x25fae(%rip), %rdi     # 0x5fbc1
movl $0x1, %esi
callq 0x28570
testb $0x1, %al
jne 0x39c23
jmp 0x39c77
leaq 0x24d42(%rip), %rdi     # 0x5e96c
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
leaq 0x24d16(%rip), %rdi     # 0x5e957
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
leaq 0x25f70(%rip), %rdi     # 0x5fbc8
movl $0x1, %esi
callq 0x28570
testb $0x1, %al
jne 0x39c68
jmp 0x39c72
callq 0x39b50
callq 0x28f70
callq 0x28f70
callq 0x28f70
leaq 0x25ea2(%rip), %rdi     # 0x5fb25
leaq 0x25f48(%rip), %rsi     # 0x5fbd2
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
testb $0x1, %al
jne 0x39c9c
jmp 0x39c9e
jmp 0x39c9e
leaq 0x25f34(%rip), %rdi     # 0x5fbd9
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
testb $0x1, %al
jne 0x39cbb
jmp 0x39cbd
jmp 0x39cbd
callq 0x29c00
leaq 0x25f1a(%rip), %rdi     # 0x5fbe3
movl $0x1, %esi
callq 0x28570
testb $0x1, %al
jne 0x39cdc
jmp 0x39dc5
leaq 0x25f08(%rip), %rdi     # 0x5fbeb
leaq 0x25564(%rip), %rsi     # 0x5f24e
leaq 0x43acf(%rip), %rdx     # 0x7d7c0
movl $0x1, %ecx
callq 0x28140
leaq -0x8(%rbp), %rdi
xorps %xmm0, %xmm0
movss 0x213e2(%rip), %xmm1    # 0x5b0ec
callq 0x2d280
leaq 0x25edd(%rip), %rdi     # 0x5fbf3
leaq -0x8(%rbp), %rsi
movl $0x1, %edx
xorl %ecx, %ecx
callq 0x15bc0
movl $0x0, -0xc(%rbp)
cmpl $0xa, -0xc(%rbp)
jge 0x39d4f
movl -0xc(%rbp), %esi
leaq 0x25ebc(%rip), %rdi     # 0x5fbf9
movb $0x0, %al
callq 0x1a220
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x39d2d
callq 0x15e60
leaq 0x24548(%rip), %rdi     # 0x5e2a3
leaq 0x43a62(%rip), %rsi     # 0x7d7c4
xorps %xmm0, %xmm0
movss 0x212ab(%rip), %xmm2    # 0x5b018
leaq 0x22766(%rip), %rdx     # 0x5c4da
movaps %xmm2, %xmm1
callq 0x20790
leaq 0x24434(%rip), %rdi     # 0x5e1b7
leaq 0x43a3a(%rip), %rsi     # 0x7d7c4
movss 0x2127e(%rip), %xmm0    # 0x5b010
xorps %xmm1, %xmm1
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
xorl %ecx, %ecx
callq 0x26210
leaq 0x24c44(%rip), %rdi     # 0x5e9ec
leaq 0x49b89(%rip), %rsi     # 0x83938
leaq 0x26782(%rip), %rdx     # 0x60538
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
callq 0x27000
callq 0x28f70
leaq 0x25ca7(%rip), %rdi     # 0x5fa73
movl $0x1, %esi
callq 0x28570
testb $0x1, %al
jne 0x39ddc
jmp 0x39e14
movl $0x0, -0x10(%rbp)
cmpl $0x2b, -0x10(%rbp)
jge 0x39e0f
movl -0x10(%rbp), %edi
callq 0x18c20
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x39de3
callq 0x28f70
leaq 0x21cdf(%rip), %rdi     # 0x5bafa
xorl %esi, %esi
callq 0x28570
testb $0x1, %al
jne 0x39e28
jmp 0x39e47
leaq 0x22a5c(%rip), %rdi     # 0x5c88b
leaq 0x25dd5(%rip), %rsi     # 0x5fc0b
movl $0x644, %edx            # imm = 0x644
leaq 0x25de0(%rip), %rcx     # 0x5fc22
callq 0x7160
leaq 0x25def(%rip), %rdi     # 0x5fc3d
xorl %eax, %eax
movl %eax, %esi
movl $0x1, %ecx
movl %ecx, %edx
callq 0x27ed0
testb $0x1, %al
jne 0x39e64
jmp 0x39e66
jmp 0x39e66
leaq 0x25dd8(%rip), %rdi     # 0x5fc45
leaq 0x25dd6(%rip), %rsi     # 0x5fc4a
xorl %edx, %edx
movl $0x1, %ecx
callq 0x27ed0
testb $0x1, %al
jne 0x39e86
jmp 0x39e88
jmp 0x39e88
addq $0x10, %rsp
popq %rbp
retq
nop