// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_panel_layout
NK_LIB void
nk_panel_layout(const struct nk_context *ctx, struct nk_window *win,
    float height, int cols)
{
    struct nk_panel *layout;
    const struct nk_style *style;
    struct nk_command_buffer *out;

    struct nk_vec2 item_spacing;
    struct nk_color color;

    NK_ASSERT(ctx);
    NK_ASSERT(ctx->current);
    NK_ASSERT(ctx->current->layout);
    if (!ctx || !ctx->current || !ctx->current->layout)
        return;

    /* prefetch some configuration data */
    layout = win->layout;
    style = &ctx->style;
    out = &win->buffer;
    color = style->window.background;
    item_spacing = style->window.spacing;

    /*  if one of these triggers you forgot to add an `if` condition around either
        a window, group, popup, combobox or contextual menu `begin` and `end` block.
        Example:
            if (nk_begin(...) {...} nk_end(...); or
            if (nk_group_begin(...) { nk_group_end(...);} */
    NK_ASSERT(!(layout->flags & NK_WINDOW_MINIMIZED));
    NK_ASSERT(!(layout->flags & NK_WINDOW_HIDDEN));
    NK_ASSERT(!(layout->flags & NK_WINDOW_CLOSED));

    /* update the current row and set the current row layout */
    layout->row.index = 0;
    layout->at_y += layout->row.height;
    layout->row.columns = cols;
    if (height == 0.0f)
        layout->row.height = NK_MAX(height, layout->row.min_height) + item_spacing.y;
    else layout->row.height = height + item_spacing.y;

    layout->row.item_offset = 0;
    if (layout->flags & NK_WINDOW_DYNAMIC) {
        /* draw background for dynamic panels */
        struct nk_rect background;
        background.x = win->bounds.x;
        background.w = win->bounds.w;
        background.y = layout->at_y - 1.0f;
        background.h = layout->row.height + 1.0f;
        nk_fill_rect(out, background, 0, color);
    }
}

// Assembly:
subq $0x58, %rsp
movq %rdi, 0x50(%rsp)
movq %rsi, 0x48(%rsp)
movss %xmm0, 0x44(%rsp)
movl %edx, 0x40(%rsp)
cmpq $0x0, 0x50(%rsp)
jne 0x5fa53
movq 0x655c9(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x5196f(%rip), %rsi     # 0xb13a0
leaq 0x51986(%rip), %rdx     # 0xb13be
movl $0x54ff, %ecx           # imm = 0x54FF
movb $0x0, %al
callq 0x13ec0
movq 0x655a5(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fa55
jmp 0x5fa57
movq 0x50(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
jne 0x5fa99
movq 0x65583(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x51929(%rip), %rsi     # 0xb13a0
leaq 0x51940(%rip), %rdx     # 0xb13be
movl $0x5500, %ecx           # imm = 0x5500
movb $0x0, %al
callq 0x13ec0
movq 0x6555f(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fa9b
jmp 0x5fa9d
movq 0x50(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x5fae6
movq 0x65536(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x518dc(%rip), %rsi     # 0xb13a0
leaq 0x518f3(%rip), %rdx     # 0xb13be
movl $0x5501, %ecx           # imm = 0x5501
movb $0x0, %al
callq 0x13ec0
movq 0x65512(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fae8
cmpq $0x0, 0x50(%rsp)
je 0x5fb15
movq 0x50(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
je 0x5fb15
movq 0x50(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x5fb1a
jmp 0x5fd76
movq 0x48(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0x38(%rsp)
movq 0x50(%rsp), %rax
addq $0x168, %rax            # imm = 0x168
movq %rax, 0x30(%rsp)
movq 0x48(%rsp), %rax
addq $0x68, %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rax
movl 0x22e0(%rax), %eax
movl %eax, 0x1c(%rsp)
movq 0x30(%rsp), %rax
movq 0x234c(%rax), %rax
movq %rax, 0x20(%rsp)
movq 0x38(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
je 0x5fbae
movq 0x6546e(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x51814(%rip), %rsi     # 0xb13a0
leaq 0x5182b(%rip), %rdx     # 0xb13be
movl $0x5511, %ecx           # imm = 0x5511
movb $0x0, %al
callq 0x13ec0
movq 0x6544a(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fbb0
jmp 0x5fbb2
movq 0x38(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x0, %eax
je 0x5fbf7
movq 0x65425(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x517cb(%rip), %rsi     # 0xb13a0
leaq 0x517e2(%rip), %rdx     # 0xb13be
movl $0x5512, %ecx           # imm = 0x5512
movb $0x0, %al
callq 0x13ec0
movq 0x65401(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fbf9
jmp 0x5fbfb
movq 0x38(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x4000, %eax           # imm = 0x4000
cmpl $0x0, %eax
je 0x5fc40
movq 0x653dc(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x51782(%rip), %rsi     # 0xb13a0
leaq 0x51799(%rip), %rdx     # 0xb13be
movl $0x5513, %ecx           # imm = 0x5513
movb $0x0, %al
callq 0x13ec0
movq 0x653b8(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x5fc42
movq 0x38(%rsp), %rax
movl $0x0, 0x74(%rax)
movq 0x38(%rsp), %rax
movss 0x78(%rax), %xmm0
movq 0x38(%rsp), %rax
addss 0x2c(%rax), %xmm0
movss %xmm0, 0x2c(%rax)
movl 0x40(%rsp), %ecx
movq 0x38(%rsp), %rax
movl %ecx, 0x80(%rax)
movss 0x44(%rsp), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x5fcd1
jp 0x5fcd1
movss 0x44(%rsp), %xmm1
movq 0x38(%rsp), %rax
movss 0x7c(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x5fcad
movq 0x38(%rsp), %rax
movss 0x7c(%rax), %xmm0
movss %xmm0, 0x8(%rsp)
jmp 0x5fcb9
movss 0x44(%rsp), %xmm0
movss %xmm0, 0x8(%rsp)
movss 0x8(%rsp), %xmm0
addss 0x24(%rsp), %xmm0
movq 0x38(%rsp), %rax
movss %xmm0, 0x78(%rax)
jmp 0x5fce7
movss 0x44(%rsp), %xmm0
addss 0x24(%rsp), %xmm0
movq 0x38(%rsp), %rax
movss %xmm0, 0x78(%rax)
movq 0x38(%rsp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0x98(%rax)
movq 0x38(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
je 0x5fd76
movq 0x48(%rsp), %rax
movss 0x4c(%rax), %xmm0
movss %xmm0, 0xc(%rsp)
movq 0x48(%rsp), %rax
movss 0x54(%rax), %xmm0
movss %xmm0, 0x14(%rsp)
movq 0x38(%rsp), %rax
movss 0x2c(%rax), %xmm0
movss 0x4d7ad(%rip), %xmm1    # 0xad4e8
subss %xmm1, %xmm0
movss %xmm0, 0x10(%rsp)
movq 0x38(%rsp), %rax
movss 0x78(%rax), %xmm0
addss %xmm1, %xmm0
movss %xmm0, 0x18(%rsp)
movq 0x28(%rsp), %rdi
movsd 0xc(%rsp), %xmm0
movsd 0x14(%rsp), %xmm1
movl 0x1c(%rsp), %esi
xorps %xmm2, %xmm2
callq 0x13f10
addq $0x58, %rsp
retq
nopl (%rax,%rax)