// File: /workspace/github_c_makefile_star2_O2/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_group_set_scroll
NK_API void
nk_group_set_scroll(struct nk_context *ctx, const char *id, nk_uint x_offset, nk_uint y_offset)
{
    int id_len;
    nk_hash id_hash;
    struct nk_window *win;
    nk_uint *x_offset_ptr;
    nk_uint *y_offset_ptr;

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

    /* find persistent group scrollbar value */
    win = ctx->current;
    id_len = (int)nk_strlen(id);
    id_hash = nk_murmur_hash(id, (int)id_len, NK_PANEL_GROUP);
    x_offset_ptr = nk_find_value(win, id_hash);
    if (!x_offset_ptr) {
        x_offset_ptr = nk_add_value(ctx, win, id_hash, 0);
        y_offset_ptr = nk_add_value(ctx, win, id_hash+1, 0);

        NK_ASSERT(x_offset_ptr);
        NK_ASSERT(y_offset_ptr);
        if (!x_offset_ptr || !y_offset_ptr) return;
        *x_offset_ptr = *y_offset_ptr = 0;
    } else y_offset_ptr = nk_find_value(win, id_hash+1);
    *x_offset_ptr = x_offset;
    *y_offset_ptr = y_offset;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %ecx, %ebx
movl %edx, %ebp
movq %rsi, %r15
movq %rdi, %r14
testq %rdi, %rdi
jne 0x40340
movq 0x44cd7(%rip), %r12     # 0x84ff0
movq (%r12), %rdi
leaq 0x299e8(%rip), %rsi     # 0x69d0c
leaq 0x299ff(%rip), %rdx     # 0x69d2a
movl $0x59ed, %ecx           # imm = 0x59ED
xorl %eax, %eax
callq 0x12ea0
movq (%r12), %rdi
callq 0x13960
testq %r15, %r15
jne 0x40373
movq 0x44ca4(%rip), %r12     # 0x84ff0
movq (%r12), %rdi
leaq 0x299b5(%rip), %rsi     # 0x69d0c
leaq 0x299cc(%rip), %rdx     # 0x69d2a
movl $0x59ee, %ecx           # imm = 0x59EE
xorl %eax, %eax
callq 0x12ea0
movq (%r12), %rdi
callq 0x13960
movq 0x4780(%r14), %r12
testq %r12, %r12
jne 0x403b4
movq 0x44c6a(%rip), %r12     # 0x84ff0
movq (%r12), %rdi
leaq 0x2997b(%rip), %rsi     # 0x69d0c
leaq 0x29992(%rip), %rdx     # 0x69d2a
movl $0x59ef, %ecx           # imm = 0x59EF
xorl %eax, %eax
callq 0x12ea0
movq (%r12), %rdi
callq 0x13960
movq 0x4780(%r14), %r12
cmpq $0x0, 0xa8(%r12)
jne 0x403f9
movq 0x44c2a(%rip), %r12     # 0x84ff0
movq (%r12), %rdi
leaq 0x2993b(%rip), %rsi     # 0x69d0c
leaq 0x29952(%rip), %rdx     # 0x69d2a
movl $0x59f0, %ecx           # imm = 0x59F0
xorl %eax, %eax
callq 0x12ea0
movq (%r12), %rdi
callq 0x13960
movq 0x4780(%r14), %r12
testq %r12, %r12
je 0x4044a
testq %r15, %r15
je 0x4044a
cmpq $0x0, 0xa8(%r12)
je 0x4044a
movq %r15, %rdi
callq 0x13040
pushq $0x2
popq %rdx
movq %r15, %rdi
movl %eax, %esi
callq 0x125c0
movl %eax, %r13d
movq %r12, %rdi
movl %eax, %esi
callq 0x3ff1b
testq %rax, %rax
je 0x40459
movq %rax, %r15
incl %r13d
movq %r12, %rdi
movl %r13d, %esi
callq 0x3ff1b
movq %rax, %r14
movl %ebp, (%r15)
movl %ebx, (%r14)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r14, %rdi
movq %r12, %rsi
movl %r13d, %edx
callq 0x3ff5d
movq %rax, %r15
incl %r13d
movq %r14, %rdi
movq %r12, %rsi
movl %r13d, %edx
callq 0x3ff5d
movq %rax, %r14
testq %r15, %r15
je 0x40492
testq %r14, %r14
je 0x404c3
andl $0x0, (%r14)
andl $0x0, (%r15)
jmp 0x40444
movq 0x44b57(%rip), %rbx     # 0x84ff0
movq (%rbx), %rdi
leaq 0x29869(%rip), %rsi     # 0x69d0c
leaq 0x29880(%rip), %rdx     # 0x69d2a
movl $0x59fd, %ecx           # imm = 0x59FD
xorl %eax, %eax
callq 0x12ea0
movq (%rbx), %rdi
callq 0x13960
testq %r14, %r14
jne 0x4044a
movq 0x44b26(%rip), %rbx     # 0x84ff0
movq (%rbx), %rdi
leaq 0x29838(%rip), %rsi     # 0x69d0c
leaq 0x2984f(%rip), %rdx     # 0x69d2a
movl $0x59fe, %ecx           # imm = 0x59FE
xorl %eax, %eax
callq 0x12ea0
movq (%rbx), %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x13960