// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_progress
NK_API nk_bool
nk_progress(struct nk_context *ctx, nk_size *cur, nk_size max, nk_bool is_modifyable)
{
    struct nk_window *win;
    struct nk_panel *layout;
    const struct nk_style *style;
    struct nk_input *in;

    struct nk_rect bounds;
    enum nk_widget_layout_states state;
    nk_size old_value;

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

    win = ctx->current;
    style = &ctx->style;
    layout = win->layout;
    state = nk_widget(&bounds, ctx);
    if (!state) return 0;

    in = (state == NK_WIDGET_ROM || state == NK_WIDGET_DISABLED || layout->flags & NK_WINDOW_ROM) ? 0 : &ctx->input;
    old_value = *cur;
    *cur = nk_do_progress(&ctx->last_widget_state, &win->buffer, bounds,
            *cur, max, is_modifyable, &style->progress, in);
    return (*cur != old_value);
}

// Assembly:
subq $0x78, %rsp
movq %rdi, 0x68(%rsp)
movq %rsi, 0x60(%rsp)
movq %rdx, 0x58(%rsp)
movl %ecx, 0x54(%rsp)
cmpq $0x0, 0x68(%rsp)
jne 0x6ee22
movq 0x561fa(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x425a0(%rip), %rsi     # 0xb13a0
leaq 0x425b7(%rip), %rdx     # 0xb13be
movl $0x6513, %ecx           # imm = 0x6513
movb $0x0, %al
callq 0x13ec0
movq 0x561d6(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x6ee24
jmp 0x6ee26
cmpq $0x0, 0x60(%rsp)
jne 0x6ee61
movq 0x561bb(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x42561(%rip), %rsi     # 0xb13a0
leaq 0x42578(%rip), %rdx     # 0xb13be
movl $0x6514, %ecx           # imm = 0x6514
movb $0x0, %al
callq 0x13ec0
movq 0x56197(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x6ee63
jmp 0x6ee65
movq 0x68(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
jne 0x6eea7
movq 0x56175(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x4251b(%rip), %rsi     # 0xb13a0
leaq 0x42532(%rip), %rdx     # 0xb13be
movl $0x6515, %ecx           # imm = 0x6515
movb $0x0, %al
callq 0x13ec0
movq 0x56151(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x6eea9
jmp 0x6eeab
movq 0x68(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x6eef4
movq 0x56128(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x424ce(%rip), %rsi     # 0xb13a0
leaq 0x424e5(%rip), %rdx     # 0xb13be
movl $0x6516, %ecx           # imm = 0x6516
movb $0x0, %al
callq 0x13ec0
movq 0x56104(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x6eef6
cmpq $0x0, 0x68(%rsp)
je 0x6ef2b
movq 0x68(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
je 0x6ef2b
movq 0x68(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
je 0x6ef2b
cmpq $0x0, 0x60(%rsp)
jne 0x6ef38
movl $0x0, 0x74(%rsp)
jmp 0x6f04e
movq 0x68(%rsp), %rax
movq 0x4780(%rax), %rax
movq %rax, 0x48(%rsp)
movq 0x68(%rsp), %rax
addq $0x168, %rax            # imm = 0x168
movq %rax, 0x38(%rsp)
movq 0x48(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0x40(%rsp)
movq 0x68(%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x139c0
movl %eax, 0x1c(%rsp)
cmpl $0x0, 0x1c(%rsp)
jne 0x6ef91
movl $0x0, 0x74(%rsp)
jmp 0x6f04e
cmpl $0x2, 0x1c(%rsp)
je 0x6efb1
cmpl $0x3, 0x1c(%rsp)
je 0x6efb1
movq 0x40(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
je 0x6efba
xorl %eax, %eax
movq %rax, 0x8(%rsp)
jmp 0x6efc4
movq 0x68(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x60(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x68(%rsp), %rdi
addq $0x2598, %rdi           # imm = 0x2598
movq 0x48(%rsp), %rsi
addq $0x68, %rsi
movq 0x60(%rsp), %rax
movq (%rax), %rdx
movq 0x58(%rsp), %rcx
movl 0x54(%rsp), %r8d
movq 0x38(%rsp), %r9
addq $0x988, %r9             # imm = 0x988
movq 0x30(%rsp), %r10
movsd 0x20(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movq %rsp, %rax
movq %r10, (%rax)
callq 0x6f060
movq %rax, %rcx
movq 0x60(%rsp), %rax
movq %rcx, (%rax)
movq 0x60(%rsp), %rax
movq (%rax), %rax
cmpq 0x10(%rsp), %rax
setne %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0x74(%rsp)
movl 0x74(%rsp), %eax
addq $0x78, %rsp
retq
nopw (%rax,%rax)