// File: /workspace/github_c_makefile_star2_O2/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_group_get_scroll
NK_API void
nk_group_get_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);
    if (x_offset)
      *x_offset = *x_offset_ptr;
    if (y_offset)
      *y_offset = *y_offset_ptr;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rcx, %rbx
movq %rdx, %r14
movq %rsi, %r12
movq %rdi, %r15
testq %rdi, %rdi
jne 0x40132
movq 0x44ee5(%rip), %r13     # 0x84ff0
movq (%r13), %rdi
leaq 0x29bf6(%rip), %rsi     # 0x69d0c
leaq 0x29c0d(%rip), %rdx     # 0x69d2a
movl $0x59ca, %ecx           # imm = 0x59CA
xorl %eax, %eax
callq 0x12ea0
movq (%r13), %rdi
callq 0x13960
testq %r12, %r12
jne 0x40165
movq 0x44eb2(%rip), %r13     # 0x84ff0
movq (%r13), %rdi
leaq 0x29bc3(%rip), %rsi     # 0x69d0c
leaq 0x29bda(%rip), %rdx     # 0x69d2a
movl $0x59cb, %ecx           # imm = 0x59CB
xorl %eax, %eax
callq 0x12ea0
movq (%r13), %rdi
callq 0x13960
movq 0x4780(%r15), %r13
testq %r13, %r13
jne 0x401a6
movq 0x44e78(%rip), %r13     # 0x84ff0
movq (%r13), %rdi
leaq 0x29b89(%rip), %rsi     # 0x69d0c
leaq 0x29ba0(%rip), %rdx     # 0x69d2a
movl $0x59cc, %ecx           # imm = 0x59CC
xorl %eax, %eax
callq 0x12ea0
movq (%r13), %rdi
callq 0x13960
movq 0x4780(%r15), %r13
cmpq $0x0, 0xa8(%r13)
jne 0x401ea
movq 0x44e39(%rip), %r13     # 0x84ff0
movq (%r13), %rdi
leaq 0x29b4a(%rip), %rsi     # 0x69d0c
leaq 0x29b61(%rip), %rdx     # 0x69d2a
movl $0x59cd, %ecx           # imm = 0x59CD
xorl %eax, %eax
callq 0x12ea0
movq (%r13), %rdi
callq 0x13960
movq 0x4780(%r15), %r13
testq %r13, %r13
je 0x40247
testq %r12, %r12
je 0x40247
cmpq $0x0, 0xa8(%r13)
je 0x40247
movq %r12, %rdi
callq 0x13040
pushq $0x2
popq %rdx
movq %r12, %rdi
movl %eax, %esi
callq 0x125c0
movl %eax, %ebp
movq %r13, %rdi
movl %eax, %esi
callq 0x3ff1b
testq %rax, %rax
je 0x40256
movq %rax, %r12
incl %ebp
movq %r13, %rdi
movl %ebp, %esi
callq 0x3ff1b
movq %rax, %r15
testq %r14, %r14
je 0x4023d
movl (%r12), %eax
movl %eax, (%r14)
testq %rbx, %rbx
je 0x40247
movl (%r15), %eax
movl %eax, (%rbx)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r15, %rdi
movq %r13, %rsi
movl %ebp, %edx
callq 0x3ff5d
movq %rax, %r12
incl %ebp
movq %r15, %rdi
movq %r13, %rsi
movl %ebp, %edx
callq 0x3ff5d
movq %rax, %r15
testq %r12, %r12
je 0x4028d
testq %r15, %r15
je 0x402be
andl $0x0, (%r15)
andl $0x0, (%r12)
jmp 0x40231
movq 0x44d5c(%rip), %rbx     # 0x84ff0
movq (%rbx), %rdi
leaq 0x29a6e(%rip), %rsi     # 0x69d0c
leaq 0x29a85(%rip), %rdx     # 0x69d2a
movl $0x59da, %ecx           # imm = 0x59DA
xorl %eax, %eax
callq 0x12ea0
movq (%rbx), %rdi
callq 0x13960
testq %r15, %r15
jne 0x40247
movq 0x44d2b(%rip), %rbx     # 0x84ff0
movq (%rbx), %rdi
leaq 0x29a3d(%rip), %rsi     # 0x69d0c
leaq 0x29a54(%rip), %rdx     # 0x69d2a
movl $0x59db, %ecx           # imm = 0x59DB
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