// File: /workspace/github_c_makefile_star2_O1/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_tooltip
NK_API void
nk_tooltip(struct nk_context *ctx, const char *text)
{
    const struct nk_style *style;
    struct nk_vec2 padding;

    int text_len;
    float text_width;
    float text_height;

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

    /* fetch configuration data */
    style = &ctx->style;
    padding = style->window.padding;

    /* calculate size of the text and tooltip */
    text_len = nk_strlen(text);
    text_width = style->font->width(style->font->userdata,
                    style->font->height, text, text_len);
    text_width += (4 * padding.x);
    text_height = (style->font->height + 2 * padding.y);

    /* execute tooltip and fill with text */
    if (nk_tooltip_begin(ctx, (float)text_width)) {
        nk_layout_row_dynamic(ctx, (float)text_height, 1);
        nk_text(ctx, text, text_len, NK_TEXT_LEFT);
        nk_tooltip_end(ctx);
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r14
movq %rdi, %rbx
testq %rdi, %rdi
jne 0x547b0
movq 0x33865(%rip), %r15     # 0x87ff0
movq (%r15), %rdi
leaq 0x1d5f7(%rip), %rsi     # 0x71d8c
leaq 0x1d60e(%rip), %rdx     # 0x71daa
movl $0x7553, %ecx           # imm = 0x7553
xorl %eax, %eax
callq 0x12d80
movq (%r15), %rdi
callq 0x13780
cmpq $0x0, 0x4780(%rbx)
jne 0x547e6
movq 0x3382f(%rip), %r15     # 0x87ff0
movq (%r15), %rdi
leaq 0x1d5c1(%rip), %rsi     # 0x71d8c
leaq 0x1d5d8(%rip), %rdx     # 0x71daa
movl $0x7554, %ecx           # imm = 0x7554
xorl %eax, %eax
callq 0x12d80
movq (%r15), %rdi
callq 0x13780
movq 0x4780(%rbx), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x54823
movq 0x337f2(%rip), %r15     # 0x87ff0
movq (%r15), %rdi
leaq 0x1d584(%rip), %rsi     # 0x71d8c
leaq 0x1d59b(%rip), %rdx     # 0x71daa
movl $0x7555, %ecx           # imm = 0x7555
xorl %eax, %eax
callq 0x12d80
movq (%r15), %rdi
callq 0x13780
testq %r14, %r14
jne 0x54854
movq 0x337c1(%rip), %r15     # 0x87ff0
movq (%r15), %rdi
leaq 0x1d553(%rip), %rsi     # 0x71d8c
leaq 0x1d56a(%rip), %rdx     # 0x71daa
movl $0x7556, %ecx           # imm = 0x7556
xorl %eax, %eax
callq 0x12d80
movq (%r15), %rdi
callq 0x13780
testq %rbx, %rbx
je 0x5494e
movq 0x4780(%rbx), %rax
testq %rax, %rax
je 0x5494e
testq %r14, %r14
je 0x5494e
cmpq $0x0, 0xa8(%rax)
je 0x5494e
movss 0x24cc(%rbx), %xmm0
movss %xmm0, 0x8(%rsp)
cmpb $0x0, (%r14)
je 0x548a9
xorl %r15d, %r15d
cmpb $0x0, 0x1(%r14,%r15)
leaq 0x1(%r15), %r15
jne 0x5489b
jmp 0x548ac
xorl %r15d, %r15d
movss 0x24d0(%rbx), %xmm0
movss %xmm0, 0xc(%rsp)
movq 0x168(%rbx), %rax
movss 0x8(%rax), %xmm0
movq (%rax), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq *0x10(%rax)
movss 0x8(%rsp), %xmm1
mulss 0x1a050(%rip), %xmm1    # 0x6e930
addss %xmm1, %xmm0
movq 0x168(%rbx), %rax
movss 0x8(%rax), %xmm1
movss %xmm1, 0x8(%rsp)
movq %rbx, %rdi
callq 0x13d50
testl %eax, %eax
je 0x5494e
movss 0xc(%rsp), %xmm0
addss %xmm0, %xmm0
addss 0x8(%rsp), %xmm0
movq %rbx, %rdi
xorl %esi, %esi
movl $0x1, %edx
xorl %ecx, %ecx
callq 0x41057
movl 0x1bc(%rbx), %r8d
movq %rbx, %rdi
movq %r14, %rsi
movl %r15d, %edx
movl $0x11, %ecx
callq 0x128f0
movq %rbx, %rdi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
jmp 0x13560
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq