// File: /workspace/github_cpp_makefile_star2_O2/donfreiday[P]gb/./imgui/imgui.cpp
// Function: CheckStacksSize(ImGuiWindow*, bool)
static void CheckStacksSize(ImGuiWindow* window, bool write)
{
    // NOT checking: DC.ItemWidth, DC.AllowKeyboardFocus, DC.ButtonRepeat, DC.TextWrapPos (per window) to allow user to conveniently push once and not pop (they are cleared on Begin)
    ImGuiState& g = *GImGui;
    int* p_backup = &window->DC.StackSizesBackup[0];
    { int current = window->IDStack.Size;       if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot PopID()
    { int current = window->DC.GroupStack.Size; if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot EndGroup()
    { int current = g.CurrentPopupStack.Size;   if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot EndPopup()/EndMenu()
    { int current = g.ColorModifiers.Size;      if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot PopStyleColor()
    { int current = g.StyleModifiers.Size;      if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot PopStyleVar()
    { int current = g.FontStack.Size;           if (write) *p_backup = current; else IM_ASSERT(*p_backup == current); p_backup++; }    // User forgot PopFont()
    IM_ASSERT(p_backup == window->DC.StackSizesBackup + IM_ARRAYSIZE(window->DC.StackSizesBackup));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq 0x402a7(%rip), %rax     # 0x50480
movl 0x1d0(%rdi), %ecx
testl %esi, %esi
je 0x10227
movl %ecx, 0x17c(%rdi)
movl 0x168(%rdi), %ecx
movl %ecx, 0x180(%rdi)
movl 0x1808(%rax), %ecx
movl %ecx, 0x184(%rdi)
movl 0x17c8(%rax), %ecx
movl %ecx, 0x188(%rdi)
movl 0x17d8(%rax), %ecx
movl %ecx, 0x18c(%rdi)
movl 0x17e8(%rax), %eax
movl %eax, 0x190(%rdi)
jmp 0x10281
cmpl %ecx, 0x17c(%rdi)
jne 0x10283
movl 0x180(%rdi), %ecx
cmpl 0x168(%rdi), %ecx
jne 0x102a2
movl 0x184(%rdi), %ecx
cmpl 0x1808(%rax), %ecx
jne 0x102c1
movl 0x188(%rdi), %ecx
cmpl 0x17c8(%rax), %ecx
jne 0x102e0
movl 0x18c(%rdi), %ecx
cmpl 0x17d8(%rax), %ecx
jne 0x102ff
movl 0x190(%rdi), %ecx
cmpl 0x17e8(%rax), %ecx
jne 0x1031e
popq %rbp
retq
leaq 0x27a19(%rip), %rdi     # 0x37ca3
leaq 0x263dc(%rip), %rsi     # 0x3666d
leaq 0x27a20(%rip), %rcx     # 0x37cb8
movl $0xcee, %edx            # imm = 0xCEE
callq 0x7140
leaq 0x279fa(%rip), %rdi     # 0x37ca3
leaq 0x263bd(%rip), %rsi     # 0x3666d
leaq 0x27a01(%rip), %rcx     # 0x37cb8
movl $0xcef, %edx            # imm = 0xCEF
callq 0x7140
leaq 0x279db(%rip), %rdi     # 0x37ca3
leaq 0x2639e(%rip), %rsi     # 0x3666d
leaq 0x279e2(%rip), %rcx     # 0x37cb8
movl $0xcf0, %edx            # imm = 0xCF0
callq 0x7140
leaq 0x279bc(%rip), %rdi     # 0x37ca3
leaq 0x2637f(%rip), %rsi     # 0x3666d
leaq 0x279c3(%rip), %rcx     # 0x37cb8
movl $0xcf1, %edx            # imm = 0xCF1
callq 0x7140
leaq 0x2799d(%rip), %rdi     # 0x37ca3
leaq 0x26360(%rip), %rsi     # 0x3666d
leaq 0x279a4(%rip), %rcx     # 0x37cb8
movl $0xcf2, %edx            # imm = 0xCF2
callq 0x7140
leaq 0x2797e(%rip), %rdi     # 0x37ca3
leaq 0x26341(%rip), %rsi     # 0x3666d
leaq 0x27985(%rip), %rcx     # 0x37cb8
movl $0xcf3, %edx            # imm = 0xCF3
callq 0x7140