// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_draw_button_text_symbol
NK_LIB void
nk_draw_button_text_symbol(struct nk_command_buffer *out,
    const struct nk_rect *bounds, const struct nk_rect *label,
    const struct nk_rect *symbol, nk_flags state, const struct nk_style_button *style,
    const char *str, int len, enum nk_symbol_type type,
    const struct nk_user_font *font)
{
    struct nk_color sym;
    struct nk_text text;
    const struct nk_style_item *background;

    /* select correct background colors/images */
    background = nk_draw_button(out, bounds, state, style);
    if (background->type == NK_STYLE_ITEM_COLOR)
        text.background = background->data.color;
    else text.background = style->text_background;

    /* select correct text colors */
    if (state & NK_WIDGET_STATE_HOVER) {
        sym = style->text_hover;
        text.text = style->text_hover;
    } else if (state & NK_WIDGET_STATE_ACTIVED) {
        sym = style->text_active;
        text.text = style->text_active;
    } else {
        sym = style->text_normal;
        text.text = style->text_normal;
    }

    sym = nk_rgb_factor(sym, style->color_factor_text);
    text.text = nk_rgb_factor(text.text, style->color_factor_text);
    text.padding = nk_vec2(0,0);
    nk_draw_symbol(out, type, *symbol, style->text_background, sym, 0, font);
    nk_widget_text(out, *label, str, len, &text, NK_TEXT_CENTERED, font);
}

// Assembly:
subq $0x68, %rsp
movq 0x88(%rsp), %rax
movl 0x80(%rsp), %eax
movl 0x78(%rsp), %eax
movq 0x70(%rsp), %rax
movq %rdi, 0x60(%rsp)
movq %rsi, 0x58(%rsp)
movq %rdx, 0x50(%rsp)
movq %rcx, 0x48(%rsp)
movl %r8d, 0x44(%rsp)
movq %r9, 0x38(%rsp)
movq 0x60(%rsp), %rdi
movq 0x58(%rsp), %rsi
movl 0x44(%rsp), %edx
movq 0x38(%rsp), %rcx
callq 0x69a10
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
cmpl $0x0, (%rax)
jne 0x895df
movq 0x18(%rsp), %rax
movl 0x8(%rax), %eax
movl %eax, 0x28(%rsp)
jmp 0x895ee
movq 0x38(%rsp), %rax
movl 0x80(%rax), %eax
movl %eax, 0x28(%rsp)
movl 0x44(%rsp), %eax
andl $0x10, %eax
cmpl $0x0, %eax
je 0x8961a
movq 0x38(%rsp), %rax
movl 0x88(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x38(%rsp), %rax
movl 0x88(%rax), %eax
movl %eax, 0x2c(%rsp)
jmp 0x89666
movl 0x44(%rsp), %eax
andl $0x20, %eax
cmpl $0x0, %eax
je 0x89646
movq 0x38(%rsp), %rax
movl 0x8c(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x38(%rsp), %rax
movl 0x8c(%rax), %eax
movl %eax, 0x2c(%rsp)
jmp 0x89664
movq 0x38(%rsp), %rax
movl 0x84(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x38(%rsp), %rax
movl 0x84(%rax), %eax
movl %eax, 0x2c(%rsp)
jmp 0x89666
movq 0x38(%rsp), %rax
movss 0x94(%rax), %xmm0
movl 0x34(%rsp), %edi
callq 0x15100
movl %eax, 0x14(%rsp)
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movq 0x38(%rsp), %rax
movss 0x94(%rax), %xmm0
movl 0x2c(%rsp), %edi
callq 0x15100
movl %eax, 0x10(%rsp)
movl 0x10(%rsp), %eax
movl %eax, 0x2c(%rsp)
xorps %xmm1, %xmm1
movss %xmm1, 0x4(%rsp)
movaps %xmm1, %xmm0
callq 0x13460
movss 0x4(%rsp), %xmm2
movlpd %xmm0, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x60(%rsp), %rdi
movl 0x80(%rsp), %esi
movq 0x48(%rsp), %rcx
movq 0x38(%rsp), %rax
movq 0x88(%rsp), %r8
movsd (%rcx), %xmm0
movsd 0x8(%rcx), %xmm1
movl 0x80(%rax), %edx
movl 0x34(%rsp), %ecx
callq 0x79710
movq 0x60(%rsp), %rdi
movq 0x50(%rsp), %rax
movq 0x70(%rsp), %rsi
movl 0x78(%rsp), %edx
movq 0x88(%rsp), %r9
movsd (%rax), %xmm0
movsd 0x8(%rax), %xmm1
leaq 0x20(%rsp), %rcx
movl $0x12, %r8d
callq 0x66ac0
addq $0x68, %rsp
retq