// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_font_bake_pack
NK_INTERN int
nk_font_bake_pack(struct nk_font_baker *baker,
    nk_size *image_memory, int *width, int *height, struct nk_recti *custom,
    const struct nk_font_config *config_list, int count,
    struct nk_allocator *alloc)
{
    NK_STORAGE const nk_size max_height = 1024 * 32;
    const struct nk_font_config *config_iter, *it;
    int total_glyph_count = 0;
    int total_range_count = 0;
    int range_count = 0;
    int i = 0;

    NK_ASSERT(image_memory);
    NK_ASSERT(width);
    NK_ASSERT(height);
    NK_ASSERT(config_list);
    NK_ASSERT(count);
    NK_ASSERT(alloc);

    if (!image_memory || !width || !height || !config_list || !count) return nk_false;
    for (config_iter = config_list; config_iter; config_iter = config_iter->next) {
        it = config_iter;
        do {range_count = nk_range_count(it->range);
            total_range_count += range_count;
            total_glyph_count += nk_range_glyph_count(it->range, range_count);
        } while ((it = it->n) != config_iter);
    }
    /* setup font baker from temporary memory */
    for (config_iter = config_list; config_iter; config_iter = config_iter->next) {
        it = config_iter;
        do {
            struct stbtt_fontinfo *font_info = &baker->build[i++].info;
            font_info->userdata = alloc;

            if (!stbtt_InitFont(font_info, (const unsigned char*)it->ttf_blob, stbtt_GetFontOffsetForIndex((const unsigned char*)it->ttf_blob, 0)))
                return nk_false;
        } while ((it = it->n) != config_iter);
    }
    *height = 0;
    *width = (total_glyph_count > 1000) ? 1024 : 512;
    stbtt_PackBegin(&baker->spc, 0, (int)*width, (int)max_height, 0, 1, alloc);
    {
        int input_i = 0;
        int range_n = 0;
        int rect_n = 0;
        int char_n = 0;

        if (custom) {
            /* pack custom user data first so it will be in the upper left corner*/
            struct stbrp_rect custom_space;
            nk_zero(&custom_space, sizeof(custom_space));
            custom_space.w = (stbrp_coord)(custom->w);
            custom_space.h = (stbrp_coord)(custom->h);

            stbtt_PackSetOversampling(&baker->spc, 1, 1);
            stbrp_pack_rects((struct stbrp_context*)baker->spc.pack_info, &custom_space, 1);
            *height = NK_MAX(*height, (int)(custom_space.y + custom_space.h));

            custom->x = (short)custom_space.x;
            custom->y = (short)custom_space.y;
            custom->w = (short)custom_space.w;
            custom->h = (short)custom_space.h;
        }

        /* first font pass: pack all glyphs */
        for (input_i = 0, config_iter = config_list; input_i < count && config_iter;
            config_iter = config_iter->next) {
            it = config_iter;
            do {int n = 0;
                int glyph_count;
                const nk_rune *in_range;
                const struct nk_font_config *cfg = it;
                struct nk_font_bake_data *tmp = &baker->build[input_i++];

                /* count glyphs + ranges in current font */
                glyph_count = 0; range_count = 0;
                for (in_range = cfg->range; in_range[0] && in_range[1]; in_range += 2) {
                    glyph_count += (int)(in_range[1] - in_range[0]) + 1;
                    range_count++;
                }

                /* setup ranges  */
                tmp->ranges = baker->ranges + range_n;
                tmp->range_count = (nk_rune)range_count;
                range_n += range_count;
                for (i = 0; i < range_count; ++i) {
                    in_range = &cfg->range[i * 2];
                    tmp->ranges[i].font_size = cfg->size;
                    tmp->ranges[i].first_unicode_codepoint_in_range = (int)in_range[0];
                    tmp->ranges[i].num_chars = (int)(in_range[1]- in_range[0]) + 1;
                    tmp->ranges[i].chardata_for_range = baker->packed_chars + char_n;
                    char_n += tmp->ranges[i].num_chars;
                }

                /* pack */
                tmp->rects = baker->rects + rect_n;
                rect_n += glyph_count;
                stbtt_PackSetOversampling(&baker->spc, cfg->oversample_h, cfg->oversample_v);
                n = stbtt_PackFontRangesGatherRects(&baker->spc, &tmp->info,
                    tmp->ranges, (int)tmp->range_count, tmp->rects);
                stbrp_pack_rects((struct stbrp_context*)baker->spc.pack_info, tmp->rects, (int)n);

                /* texture height */
                for (i = 0; i < n; ++i) {
                    if (tmp->rects[i].was_packed)
                        *height = NK_MAX(*height, tmp->rects[i].y + tmp->rects[i].h);
                }
            } while ((it = it->n) != config_iter);
        }
        NK_ASSERT(rect_n == total_glyph_count);
        NK_ASSERT(char_n == total_glyph_count);
        NK_ASSERT(range_n == total_range_count);
    }
    *height = (int)nk_round_up_pow2((nk_uint)*height);
    *image_memory = (nk_size)(*width) * (nk_size)(*height);
    return nk_true;
}

// Assembly:
subq $0xd8, %rsp
movq 0xe8(%rsp), %rax
movl 0xe0(%rsp), %eax
movq %rdi, 0xc8(%rsp)
movq %rsi, 0xc0(%rsp)
movq %rdx, 0xb8(%rsp)
movq %rcx, 0xb0(%rsp)
movq %r8, 0xa8(%rsp)
movq %r9, 0xa0(%rsp)
movl $0x0, 0x8c(%rsp)
movl $0x0, 0x88(%rsp)
movl $0x0, 0x84(%rsp)
movl $0x0, 0x80(%rsp)
cmpq $0x0, 0xc0(%rsp)
jne 0x4a090
movq 0x7af8c(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x67332(%rip), %rsi     # 0xb13a0
leaq 0x67349(%rip), %rdx     # 0xb13be
movl $0x4146, %ecx           # imm = 0x4146
movb $0x0, %al
callq 0x13ec0
movq 0x7af68(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a092
jmp 0x4a094
cmpq $0x0, 0xb8(%rsp)
jne 0x4a0d2
movq 0x7af4a(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x672f0(%rip), %rsi     # 0xb13a0
leaq 0x67307(%rip), %rdx     # 0xb13be
movl $0x4147, %ecx           # imm = 0x4147
movb $0x0, %al
callq 0x13ec0
movq 0x7af26(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a0d4
jmp 0x4a0d6
cmpq $0x0, 0xb0(%rsp)
jne 0x4a114
movq 0x7af08(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x672ae(%rip), %rsi     # 0xb13a0
leaq 0x672c5(%rip), %rdx     # 0xb13be
movl $0x4148, %ecx           # imm = 0x4148
movb $0x0, %al
callq 0x13ec0
movq 0x7aee4(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a116
jmp 0x4a118
cmpq $0x0, 0xa0(%rsp)
jne 0x4a156
movq 0x7aec6(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x6726c(%rip), %rsi     # 0xb13a0
leaq 0x67283(%rip), %rdx     # 0xb13be
movl $0x4149, %ecx           # imm = 0x4149
movb $0x0, %al
callq 0x13ec0
movq 0x7aea2(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a158
jmp 0x4a15a
cmpl $0x0, 0xe0(%rsp)
jne 0x4a197
movq 0x7ae85(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x6722b(%rip), %rsi     # 0xb13a0
leaq 0x67242(%rip), %rdx     # 0xb13be
movl $0x414a, %ecx           # imm = 0x414A
movb $0x0, %al
callq 0x13ec0
movq 0x7ae61(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a199
jmp 0x4a19b
cmpq $0x0, 0xe8(%rsp)
jne 0x4a1d9
movq 0x7ae43(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x671e9(%rip), %rsi     # 0xb13a0
leaq 0x67200(%rip), %rdx     # 0xb13be
movl $0x414b, %ecx           # imm = 0x414B
movb $0x0, %al
callq 0x13ec0
movq 0x7ae1f(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4a1db
cmpq $0x0, 0xc0(%rsp)
je 0x4a211
cmpq $0x0, 0xb8(%rsp)
je 0x4a211
cmpq $0x0, 0xb0(%rsp)
je 0x4a211
cmpq $0x0, 0xa0(%rsp)
je 0x4a211
cmpl $0x0, 0xe0(%rsp)
jne 0x4a221
movl $0x0, 0xd4(%rsp)
jmp 0x4aaff
movq 0xa0(%rsp), %rax
movq %rax, 0x98(%rsp)
cmpq $0x0, 0x98(%rsp)
je 0x4a2db
movq 0x98(%rsp), %rax
movq %rax, 0x90(%rsp)
movq 0x90(%rsp), %rax
movq 0x30(%rax), %rdi
callq 0x46f70
movl %eax, 0x84(%rsp)
movl 0x84(%rsp), %eax
addl 0x88(%rsp), %eax
movl %eax, 0x88(%rsp)
movq 0x90(%rsp), %rax
movq 0x30(%rax), %rdi
movl 0x84(%rsp), %esi
callq 0x850a0
addl 0x8c(%rsp), %eax
movl %eax, 0x8c(%rsp)
movq 0x90(%rsp), %rax
movq 0x48(%rax), %rax
movq %rax, 0x90(%rsp)
cmpq 0x98(%rsp), %rax
jne 0x4a250
jmp 0x4a2c3
movq 0x98(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x98(%rsp)
jmp 0x4a231
movq 0xa0(%rsp), %rax
movq %rax, 0x98(%rsp)
cmpq $0x0, 0x98(%rsp)
je 0x4a3dd
movq 0x98(%rsp), %rax
movq %rax, 0x90(%rsp)
movq 0xc8(%rsp), %rax
movq 0x58(%rax), %rax
movl 0x80(%rsp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, 0x80(%rsp)
movslq %ecx, %rcx
imulq $0xb8, %rcx, %rcx
addq %rcx, %rax
movq %rax, 0x78(%rsp)
movq 0xe8(%rsp), %rcx
movq 0x78(%rsp), %rax
movq %rcx, (%rax)
movq 0x78(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x90(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x28(%rsp)
movq 0x90(%rsp), %rax
movq 0x8(%rax), %rdi
xorl %esi, %esi
callq 0x14a10
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
movl %eax, %edx
callq 0x14fa0
cmpl $0x0, %eax
jne 0x4a39f
movl $0x0, 0xd4(%rsp)
jmp 0x4aaff
jmp 0x4a3a1
movq 0x90(%rsp), %rax
movq 0x48(%rax), %rax
movq %rax, 0x90(%rsp)
cmpq 0x98(%rsp), %rax
jne 0x4a30a
jmp 0x4a3c5
movq 0x98(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x98(%rsp)
jmp 0x4a2eb
movq 0xb0(%rsp), %rax
movl $0x0, (%rax)
movl 0x8c(%rsp), %edx
movl $0x200, %ecx            # imm = 0x200
movl $0x400, %eax            # imm = 0x400
cmpl $0x3e8, %edx            # imm = 0x3E8
cmovgl %eax, %ecx
movq 0xb8(%rsp), %rax
movl %ecx, (%rax)
movq 0xc8(%rsp), %rdi
addq $0x18, %rdi
movq 0xb8(%rsp), %rax
movl (%rax), %edx
movq 0xe8(%rsp), %rax
xorl %ecx, %ecx
movl %ecx, %esi
movl $0x8000, %ecx           # imm = 0x8000
xorl %r8d, %r8d
movl $0x1, %r9d
movq %rax, (%rsp)
callq 0x13e20
movl $0x0, 0x74(%rsp)
movl $0x0, 0x70(%rsp)
movl $0x0, 0x6c(%rsp)
movl $0x0, 0x68(%rsp)
cmpq $0x0, 0xa8(%rsp)
je 0x4a564
leaq 0x50(%rsp), %rdi
movl $0x18, %esi
callq 0x2f0e0
movq 0xa8(%rsp), %rax
movswl 0x4(%rax), %eax
movl %eax, 0x54(%rsp)
movq 0xa8(%rsp), %rax
movswl 0x6(%rax), %eax
movl %eax, 0x58(%rsp)
movq 0xc8(%rsp), %rdi
addq $0x18, %rdi
movl $0x1, %edx
movl %edx, %esi
callq 0x15170
movq 0xc8(%rsp), %rax
movq 0x20(%rax), %rdi
leaq 0x50(%rsp), %rsi
movl $0x1, %edx
callq 0x13e50
movq 0xb0(%rsp), %rax
movl (%rax), %eax
movl 0x60(%rsp), %ecx
addl 0x58(%rsp), %ecx
cmpl %ecx, %eax
jge 0x4a4fd
movl 0x60(%rsp), %eax
addl 0x58(%rsp), %eax
movl %eax, 0x1c(%rsp)
jmp 0x4a50b
movq 0xb0(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x1c(%rsp)
movl 0x1c(%rsp), %ecx
movq 0xb0(%rsp), %rax
movl %ecx, (%rax)
movl 0x5c(%rsp), %eax
movw %ax, %cx
movq 0xa8(%rsp), %rax
movw %cx, (%rax)
movl 0x60(%rsp), %eax
movw %ax, %cx
movq 0xa8(%rsp), %rax
movw %cx, 0x2(%rax)
movl 0x54(%rsp), %eax
movw %ax, %cx
movq 0xa8(%rsp), %rax
movw %cx, 0x4(%rax)
movl 0x58(%rsp), %eax
movw %ax, %cx
movq 0xa8(%rsp), %rax
movw %cx, 0x6(%rax)
movl $0x0, 0x74(%rsp)
movq 0xa0(%rsp), %rax
movq %rax, 0x98(%rsp)
movl 0x74(%rsp), %ecx
xorl %eax, %eax
cmpl 0xe0(%rsp), %ecx
movb %al, 0x1b(%rsp)
jge 0x4a59f
cmpq $0x0, 0x98(%rsp)
setne %al
movb %al, 0x1b(%rsp)
movb 0x1b(%rsp), %al
testb $0x1, %al
jne 0x4a5ac
jmp 0x4a9e8
movq 0x98(%rsp), %rax
movq %rax, 0x90(%rsp)
movl $0x0, 0x4c(%rsp)
movq 0x90(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0xc8(%rsp), %rax
movq 0x58(%rax), %rax
movl 0x74(%rsp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, 0x74(%rsp)
movslq %ecx, %rcx
imulq $0xb8, %rcx, %rcx
addq %rcx, %rax
movq %rax, 0x30(%rsp)
movl $0x0, 0x48(%rsp)
movl $0x0, 0x84(%rsp)
movq 0x38(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x40(%rsp)
movq 0x40(%rsp), %rcx
xorl %eax, %eax
cmpl $0x0, (%rcx)
movb %al, 0x1a(%rsp)
je 0x4a63d
movq 0x40(%rsp), %rax
cmpl $0x0, 0x4(%rax)
setne %al
movb %al, 0x1a(%rsp)
movb 0x1a(%rsp), %al
testb $0x1, %al
jne 0x4a647
jmp 0x4a682
movq 0x40(%rsp), %rax
movl 0x4(%rax), %eax
movq 0x40(%rsp), %rcx
subl (%rcx), %eax
addl $0x1, %eax
addl 0x48(%rsp), %eax
movl %eax, 0x48(%rsp)
movl 0x84(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x84(%rsp)
movq 0x40(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x40(%rsp)
jmp 0x4a61d
movq 0xc8(%rsp), %rax
movq 0x70(%rax), %rcx
movslq 0x70(%rsp), %rax
imulq $0x28, %rax, %rax
addq %rax, %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0xa8(%rax)
movl 0x84(%rsp), %ecx
movq 0x30(%rsp), %rax
movl %ecx, 0xb0(%rax)
movl 0x84(%rsp), %eax
addl 0x70(%rsp), %eax
movl %eax, 0x70(%rsp)
movl $0x0, 0x80(%rsp)
movl 0x80(%rsp), %eax
cmpl 0x84(%rsp), %eax
jge 0x4a7f8
movq 0x38(%rsp), %rax
movq 0x30(%rax), %rax
movl 0x80(%rsp), %ecx
shll %ecx
movslq %ecx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movq %rax, 0x40(%rsp)
movq 0x38(%rsp), %rax
movss 0x20(%rax), %xmm0
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rax
movslq 0x80(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movss %xmm0, (%rax)
movq 0x40(%rsp), %rax
movl (%rax), %ecx
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rax
movslq 0x80(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movq 0x40(%rsp), %rax
movl 0x4(%rax), %ecx
movq 0x40(%rsp), %rax
subl (%rax), %ecx
addl $0x1, %ecx
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rax
movslq 0x80(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x10(%rax)
movq 0xc8(%rsp), %rax
movq 0x60(%rax), %rcx
movslq 0x68(%rsp), %rax
imulq $0x1c, %rax, %rax
addq %rax, %rcx
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rax
movslq 0x80(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rax
movq %rcx, 0x18(%rax)
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rax
movslq 0x80(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %eax
addl 0x68(%rsp), %eax
movl %eax, 0x68(%rsp)
movl 0x80(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x80(%rsp)
jmp 0x4a6d2
movq 0xc8(%rsp), %rax
movq 0x68(%rax), %rcx
movslq 0x6c(%rsp), %rax
imulq $0x18, %rax, %rax
addq %rax, %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0xa0(%rax)
movl 0x48(%rsp), %eax
addl 0x6c(%rsp), %eax
movl %eax, 0x6c(%rsp)
movq 0xc8(%rsp), %rdi
addq $0x18, %rdi
movq 0x38(%rsp), %rax
movzbl 0x1c(%rax), %esi
movq 0x38(%rsp), %rax
movzbl 0x1b(%rax), %edx
callq 0x15170
movq 0xc8(%rsp), %rdi
addq $0x18, %rdi
movq 0x30(%rsp), %rsi
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rdx
movq 0x30(%rsp), %rax
movl 0xb0(%rax), %ecx
movq 0x30(%rsp), %rax
movq 0xa0(%rax), %r8
callq 0x13dd0
movl %eax, 0x4c(%rsp)
movq 0xc8(%rsp), %rax
movq 0x20(%rax), %rdi
movq 0x30(%rsp), %rax
movq 0xa0(%rax), %rsi
movl 0x4c(%rsp), %edx
callq 0x13e50
movl $0x0, 0x80(%rsp)
movl 0x80(%rsp), %eax
cmpl 0x4c(%rsp), %eax
jge 0x4a9aa
movq 0x30(%rsp), %rax
movq 0xa0(%rax), %rax
movslq 0x80(%rsp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x14(%rax)
je 0x4a992
movq 0xb0(%rsp), %rax
movl (%rax), %eax
movq 0x30(%rsp), %rcx
movq 0xa0(%rcx), %rcx
movslq 0x80(%rsp), %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rcx
movl 0x10(%rcx), %ecx
movq 0x30(%rsp), %rdx
movq 0xa0(%rdx), %rdx
movslq 0x80(%rsp), %rsi
imulq $0x18, %rsi, %rsi
addq %rsi, %rdx
addl 0x8(%rdx), %ecx
cmpl %ecx, %eax
jge 0x4a976
movq 0x30(%rsp), %rax
movq 0xa0(%rax), %rax
movslq 0x80(%rsp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %eax
movq 0x30(%rsp), %rcx
movq 0xa0(%rcx), %rcx
movslq 0x80(%rsp), %rdx
imulq $0x18, %rdx, %rdx
addq %rdx, %rcx
addl 0x8(%rcx), %eax
movl %eax, 0x14(%rsp)
jmp 0x4a984
movq 0xb0(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x14(%rsp)
movl 0x14(%rsp), %ecx
movq 0xb0(%rsp), %rax
movl %ecx, (%rax)
jmp 0x4a994
movl 0x80(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x80(%rsp)
jmp 0x4a8b4
jmp 0x4a9ac
movq 0x90(%rsp), %rax
movq 0x48(%rax), %rax
movq %rax, 0x90(%rsp)
cmpq 0x98(%rsp), %rax
jne 0x4a5bc
jmp 0x4a9d0
movq 0x98(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x98(%rsp)
jmp 0x4a57c
jmp 0x4a9ea
movl 0x6c(%rsp), %eax
cmpl 0x8c(%rsp), %eax
je 0x4aa2a
movq 0x7a5f2(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x66998(%rip), %rsi     # 0xb13a0
leaq 0x669af(%rip), %rdx     # 0xb13be
movl $0x41a7, %ecx           # imm = 0x41A7
movb $0x0, %al
callq 0x13ec0
movq 0x7a5ce(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4aa2c
jmp 0x4aa2e
movl 0x68(%rsp), %eax
cmpl 0x8c(%rsp), %eax
je 0x4aa6e
movq 0x7a5ae(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x66954(%rip), %rsi     # 0xb13a0
leaq 0x6696b(%rip), %rdx     # 0xb13be
movl $0x41a8, %ecx           # imm = 0x41A8
movb $0x0, %al
callq 0x13ec0
movq 0x7a58a(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4aa70
jmp 0x4aa72
movl 0x70(%rsp), %eax
cmpl 0x88(%rsp), %eax
je 0x4aab2
movq 0x7a56a(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x66910(%rip), %rsi     # 0xb13a0
leaq 0x66927(%rip), %rdx     # 0xb13be
movl $0x41a9, %ecx           # imm = 0x41A9
movb $0x0, %al
callq 0x13ec0
movq 0x7a546(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x4aab4
movq 0xb0(%rsp), %rax
movl (%rax), %edi
callq 0x7cbe0
movl %eax, %ecx
movq 0xb0(%rsp), %rax
movl %ecx, (%rax)
movq 0xb8(%rsp), %rax
movslq (%rax), %rcx
movq 0xb0(%rsp), %rax
movslq (%rax), %rax
imulq %rax, %rcx
movq 0xc0(%rsp), %rax
movq %rcx, (%rax)
movl $0x1, 0xd4(%rsp)
movl 0xd4(%rsp), %eax
addq $0xd8, %rsp
retq
nop