// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonnuklear/src/./nuklear/nuklear.h
// Function: nk_panel_end
NK_LIB void
nk_panel_end(struct nk_context *ctx)
{
    struct nk_input *in;
    struct nk_window *window;
    struct nk_panel *layout;
    const struct nk_style *style;
    struct nk_command_buffer *out;

    struct nk_vec2 scrollbar_size;
    struct nk_vec2 panel_padding;

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

    window = ctx->current;
    layout = window->layout;
    style = &ctx->style;
    out = &window->buffer;
    in = (layout->flags & NK_WINDOW_ROM || layout->flags & NK_WINDOW_NO_INPUT) ? 0 :&ctx->input;
    if (!nk_panel_is_sub(layout->type))
        nk_push_scissor(out, nk_null_rect);

    /* cache configuration data */
    scrollbar_size = style->window.scrollbar_size;
    panel_padding = nk_panel_get_padding(style, layout->type);

    /* update the current cursor Y-position to point over the last added widget */
    layout->at_y += layout->row.height;

    /* dynamic panels */
    if (layout->flags & NK_WINDOW_DYNAMIC && !(layout->flags & NK_WINDOW_MINIMIZED))
    {
        /* update panel height to fit dynamic growth */
        struct nk_rect empty_space;
        if (layout->at_y < (layout->bounds.y + layout->bounds.h))
            layout->bounds.h = layout->at_y - layout->bounds.y;

        /* fill top empty space */
        empty_space.x = window->bounds.x;
        empty_space.y = layout->bounds.y;
        empty_space.h = panel_padding.y;
        empty_space.w = window->bounds.w;
        nk_fill_rect(out, empty_space, 0, style->window.background);

        /* fill left empty space */
        empty_space.x = window->bounds.x;
        empty_space.y = layout->bounds.y;
        empty_space.w = panel_padding.x + layout->border;
        empty_space.h = layout->bounds.h;
        nk_fill_rect(out, empty_space, 0, style->window.background);

        /* fill right empty space */
        empty_space.x = layout->bounds.x + layout->bounds.w;
        empty_space.y = layout->bounds.y;
        empty_space.w = panel_padding.x + layout->border;
        empty_space.h = layout->bounds.h;
        if (*layout->offset_y == 0 && !(layout->flags & NK_WINDOW_NO_SCROLLBAR))
            empty_space.w += scrollbar_size.x;
        nk_fill_rect(out, empty_space, 0, style->window.background);

        /* fill bottom empty space */
        if (layout->footer_height > 0) {
            empty_space.x = window->bounds.x;
            empty_space.y = layout->bounds.y + layout->bounds.h;
            empty_space.w = window->bounds.w;
            empty_space.h = layout->footer_height;
            nk_fill_rect(out, empty_space, 0, style->window.background);
        }
    }

    /* scrollbars */
    if (!(layout->flags & NK_WINDOW_NO_SCROLLBAR) &&
        !(layout->flags & NK_WINDOW_MINIMIZED) &&
        window->scrollbar_hiding_timer < NK_SCROLLBAR_HIDING_TIMEOUT)
    {
        struct nk_rect scroll;
        int scroll_has_scrolling;
        float scroll_target;
        float scroll_offset;
        float scroll_step;
        float scroll_inc;

        /* mouse wheel scrolling */
        if (nk_panel_is_sub(layout->type))
        {
            /* sub-window mouse wheel scrolling */
            struct nk_window *root_window = window;
            struct nk_panel *root_panel = window->layout;
            while (root_panel->parent)
                root_panel = root_panel->parent;
            while (root_window->parent)
                root_window = root_window->parent;

            /* only allow scrolling if parent window is active */
            scroll_has_scrolling = 0;
            if ((root_window == ctx->active) && layout->has_scrolling) {
                /* and panel is being hovered and inside clip rect*/
                if (nk_input_is_mouse_hovering_rect(in, layout->bounds) &&
                    NK_INTERSECT(layout->bounds.x, layout->bounds.y, layout->bounds.w, layout->bounds.h,
                        root_panel->clip.x, root_panel->clip.y, root_panel->clip.w, root_panel->clip.h))
                {
                    /* deactivate all parent scrolling */
                    root_panel = window->layout;
                    while (root_panel->parent) {
                        root_panel->has_scrolling = nk_false;
                        root_panel = root_panel->parent;
                    }
                    root_panel->has_scrolling = nk_false;
                    scroll_has_scrolling = nk_true;
                }
            }
        } else if (!nk_panel_is_sub(layout->type)) {
            /* window mouse wheel scrolling */
            scroll_has_scrolling = (window == ctx->active) && layout->has_scrolling;
            if (in && (in->mouse.scroll_delta.y > 0 || in->mouse.scroll_delta.x > 0) && scroll_has_scrolling)
                window->scrolled = nk_true;
            else window->scrolled = nk_false;
        } else scroll_has_scrolling = nk_false;

        {
            /* vertical scrollbar */
            nk_flags state = 0;
            scroll.x = layout->bounds.x + layout->bounds.w + panel_padding.x;
            scroll.y = layout->bounds.y;
            scroll.w = scrollbar_size.x;
            scroll.h = layout->bounds.h;

            scroll_offset = (float)*layout->offset_y;
            scroll_step = scroll.h * 0.10f;
            scroll_inc = scroll.h * 0.01f;
            scroll_target = (float)(int)(layout->at_y - scroll.y);
            scroll_offset = nk_do_scrollbarv(&state, out, scroll, scroll_has_scrolling,
                scroll_offset, scroll_target, scroll_step, scroll_inc,
                &ctx->style.scrollv, in, style->font);
            *layout->offset_y = (nk_uint)scroll_offset;
            if (in && scroll_has_scrolling)
                in->mouse.scroll_delta.y = 0;
        }
        {
            /* horizontal scrollbar */
            nk_flags state = 0;
            scroll.x = layout->bounds.x;
            scroll.y = layout->bounds.y + layout->bounds.h;
            scroll.w = layout->bounds.w;
            scroll.h = scrollbar_size.y;

            scroll_offset = (float)*layout->offset_x;
            scroll_target = (float)(int)(layout->max_x - scroll.x);
            scroll_step = layout->max_x * 0.05f;
            scroll_inc = layout->max_x * 0.005f;
            scroll_offset = nk_do_scrollbarh(&state, out, scroll, scroll_has_scrolling,
                scroll_offset, scroll_target, scroll_step, scroll_inc,
                &ctx->style.scrollh, in, style->font);
            *layout->offset_x = (nk_uint)scroll_offset;
        }
    }

    /* hide scroll if no user input */
    if (window->flags & NK_WINDOW_SCROLL_AUTO_HIDE) {
        int has_input = ctx->input.mouse.delta.x != 0 || ctx->input.mouse.delta.y != 0 || ctx->input.mouse.scroll_delta.y != 0;
        int is_window_hovered = nk_window_is_hovered(ctx);
        int any_item_active = (ctx->last_widget_state & NK_WIDGET_STATE_MODIFIED);
        if ((!has_input && is_window_hovered) || (!is_window_hovered && !any_item_active))
            window->scrollbar_hiding_timer += ctx->delta_time_seconds;
        else window->scrollbar_hiding_timer = 0;
    } else window->scrollbar_hiding_timer = 0;

    /* window border */
    if (layout->flags & NK_WINDOW_BORDER)
    {
        struct nk_color border_color = nk_panel_get_border_color(style, layout->type);
        const float padding_y = (layout->flags & NK_WINDOW_MINIMIZED)
            ? (style->window.border + window->bounds.y + layout->header_height)
            : ((layout->flags & NK_WINDOW_DYNAMIC)
                ? (layout->bounds.y + layout->bounds.h + layout->footer_height)
                : (window->bounds.y + window->bounds.h));
        struct nk_rect b = window->bounds;
        b.h = padding_y - window->bounds.y;
        nk_stroke_rect(out, b, 0, layout->border, border_color);
    }

    /* scaler */
    if ((layout->flags & NK_WINDOW_SCALABLE) && in && !(layout->flags & NK_WINDOW_MINIMIZED))
    {
        /* calculate scaler bounds */
        struct nk_rect scaler;
        scaler.w = scrollbar_size.x;
        scaler.h = scrollbar_size.y;
        scaler.y = layout->bounds.y + layout->bounds.h;
        if (layout->flags & NK_WINDOW_SCALE_LEFT)
            scaler.x = layout->bounds.x - panel_padding.x * 0.5f;
        else scaler.x = layout->bounds.x + layout->bounds.w + panel_padding.x;
        if (layout->flags & NK_WINDOW_NO_SCROLLBAR)
            scaler.x -= scaler.w;

        /* draw scaler */
        {const struct nk_style_item *item = &style->window.scaler;
        if (item->type == NK_STYLE_ITEM_IMAGE)
            nk_draw_image(out, scaler, &item->data.image, nk_white);
        else {
            if (layout->flags & NK_WINDOW_SCALE_LEFT) {
                nk_fill_triangle(out, scaler.x, scaler.y, scaler.x,
                    scaler.y + scaler.h, scaler.x + scaler.w,
                    scaler.y + scaler.h, item->data.color);
            } else {
                nk_fill_triangle(out, scaler.x + scaler.w, scaler.y, scaler.x + scaler.w,
                    scaler.y + scaler.h, scaler.x, scaler.y + scaler.h, item->data.color);
            }
        }}

        /* do window scaling */
        if (!(window->flags & NK_WINDOW_ROM)) {
            struct nk_vec2 window_size = style->window.min_size;
            int left_mouse_down = in->mouse.buttons[NK_BUTTON_LEFT].down;
            int left_mouse_click_in_scaler = nk_input_has_mouse_click_down_in_rect(in,
                    NK_BUTTON_LEFT, scaler, nk_true);

            if (left_mouse_down && left_mouse_click_in_scaler) {
                float delta_x = in->mouse.delta.x;
                if (layout->flags & NK_WINDOW_SCALE_LEFT) {
                    delta_x = -delta_x;
                    window->bounds.x += in->mouse.delta.x;
                }
                /* dragging in x-direction  */
                if (window->bounds.w + delta_x >= window_size.x) {
                    if ((delta_x < 0) || (delta_x > 0 && in->mouse.pos.x >= scaler.x)) {
                        window->bounds.w = window->bounds.w + delta_x;
                        scaler.x += in->mouse.delta.x;
                    }
                }
                /* dragging in y-direction (only possible if static window) */
                if (!(layout->flags & NK_WINDOW_DYNAMIC)) {
                    if (window_size.y < window->bounds.h + in->mouse.delta.y) {
                        if ((in->mouse.delta.y < 0) || (in->mouse.delta.y > 0 && in->mouse.pos.y >= scaler.y)) {
                            window->bounds.h = window->bounds.h + in->mouse.delta.y;
                            scaler.y += in->mouse.delta.y;
                        }
                    }
                }
                ctx->style.cursor_active = ctx->style.cursors[NK_CURSOR_RESIZE_TOP_RIGHT_DOWN_LEFT];
                in->mouse.buttons[NK_BUTTON_LEFT].clicked_pos.x = scaler.x + scaler.w/2.0f;
                in->mouse.buttons[NK_BUTTON_LEFT].clicked_pos.y = scaler.y + scaler.h/2.0f;
            }
        }
    }
    if (!nk_panel_is_sub(layout->type)) {
        /* window is hidden so clear command buffer  */
        if (layout->flags & NK_WINDOW_HIDDEN)
            nk_command_buffer_reset(&window->buffer);
        /* window is visible and not tab */
        else nk_finish(ctx, window);
    }

    /* NK_WINDOW_REMOVE_ROM flag was set so remove NK_WINDOW_ROM */
    if (layout->flags & NK_WINDOW_REMOVE_ROM) {
        layout->flags &= ~(nk_flags)NK_WINDOW_ROM;
        layout->flags &= ~(nk_flags)NK_WINDOW_REMOVE_ROM;
    }
    window->flags = layout->flags;

    /* property garbage collector */
    if (window->property.active && window->property.old != window->property.seq &&
        window->property.active == window->property.prev) {
        nk_zero(&window->property, sizeof(window->property));
    } else {
        window->property.old = window->property.seq;
        window->property.prev = window->property.active;
        window->property.seq = 0;
    }
    /* edit garbage collector */
    if (window->edit.active && window->edit.old != window->edit.seq &&
       window->edit.active == window->edit.prev) {
        nk_zero(&window->edit, sizeof(window->edit));
    } else {
        window->edit.old = window->edit.seq;
        window->edit.prev = window->edit.active;
        window->edit.seq = 0;
    }
    /* contextual garbage collector */
    if (window->popup.active_con && window->popup.con_old != window->popup.con_count) {
        window->popup.con_count = 0;
        window->popup.con_old = 0;
        window->popup.active_con = 0;
    } else {
        window->popup.con_old = window->popup.con_count;
        window->popup.con_count = 0;
    }
    window->popup.combo_count = 0;
    /* helper to make sure you have a 'nk_tree_push' for every 'nk_tree_pop' */
    NK_ASSERT(!layout->row.tree_depth);
}

// Assembly:
subq $0x118, %rsp            # imm = 0x118
movq %rdi, 0x110(%rsp)
cmpq $0x0, 0x110(%rsp)
jne 0x572cd
movq 0x6dd4f(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x5a0f5(%rip), %rsi     # 0xb13a0
leaq 0x5a10c(%rip), %rdx     # 0xb13be
movl $0x4ddc, %ecx           # imm = 0x4DDC
movb $0x0, %al
callq 0x13ec0
movq 0x6dd2b(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x572cf
jmp 0x572d1
movq 0x110(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
jne 0x57316
movq 0x6dd06(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x5a0ac(%rip), %rsi     # 0xb13a0
leaq 0x5a0c3(%rip), %rdx     # 0xb13be
movl $0x4ddd, %ecx           # imm = 0x4DDD
movb $0x0, %al
callq 0x13ec0
movq 0x6dce2(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x57318
jmp 0x5731a
movq 0x110(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x57366
movq 0x6dcb6(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x5a05c(%rip), %rsi     # 0xb13a0
leaq 0x5a073(%rip), %rdx     # 0xb13be
movl $0x4dde, %ecx           # imm = 0x4DDE
movb $0x0, %al
callq 0x13ec0
movq 0x6dc92(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x57368
cmpq $0x0, 0x110(%rsp)
je 0x5739e
movq 0x110(%rsp), %rax
cmpq $0x0, 0x4780(%rax)
je 0x5739e
movq 0x110(%rsp), %rax
movq 0x4780(%rax), %rax
cmpq $0x0, 0xa8(%rax)
jne 0x573a3
jmp 0x588c8
movq 0x110(%rsp), %rax
movq 0x4780(%rax), %rax
movq %rax, 0x100(%rsp)
movq 0x100(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0xf8(%rsp)
movq 0x110(%rsp), %rax
addq $0x168, %rax            # imm = 0x168
movq %rax, 0xf0(%rsp)
movq 0x100(%rsp), %rax
addq $0x68, %rax
movq %rax, 0xe8(%rsp)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
jne 0x57425
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x400, %eax            # imm = 0x400
cmpl $0x0, %eax
je 0x5742e
xorl %eax, %eax
movq %rax, 0x18(%rsp)
jmp 0x5743b
movq 0x110(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x108(%rsp)
movq 0xf8(%rsp), %rax
movl (%rax), %edi
callq 0x85d60
cmpl $0x0, %eax
jne 0x57479
movq 0xe8(%rsp), %rdi
movsd 0x563f8(%rip), %xmm0    # 0xad864
movsd 0x563f8(%rip), %xmm1    # 0xad86c
callq 0x14c90
movq 0xf0(%rsp), %rax
movq 0x2354(%rax), %rax
movq %rax, 0xe0(%rsp)
movq 0xf0(%rsp), %rdi
movq 0xf8(%rsp), %rax
movl (%rax), %esi
callq 0x5d770
movlpd %xmm0, 0xd0(%rsp)
movq 0xd0(%rsp), %rax
movq %rax, 0xd8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x78(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x2c(%rax), %xmm0
movss %xmm0, 0x2c(%rax)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
je 0x57806
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
jne 0x57806
movq 0xf8(%rsp), %rax
movss 0x2c(%rax), %xmm1
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x14(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x57564
movq 0xf8(%rsp), %rax
movss 0x2c(%rax), %xmm0
movq 0xf8(%rsp), %rax
subss 0xc(%rax), %xmm0
movq 0xf8(%rsp), %rax
movss %xmm0, 0x14(%rax)
movq 0x100(%rsp), %rax
movss 0x4c(%rax), %xmm0
movss %xmm0, 0xc0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss %xmm0, 0xc4(%rsp)
movss 0xdc(%rsp), %xmm0
movss %xmm0, 0xcc(%rsp)
movq 0x100(%rsp), %rax
movss 0x54(%rax), %xmm0
movss %xmm0, 0xc8(%rsp)
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movsd 0xc0(%rsp), %xmm0
movsd 0xc8(%rsp), %xmm1
movl 0x22e0(%rax), %esi
xorps %xmm2, %xmm2
callq 0x13f10
movq 0x100(%rsp), %rax
movss 0x4c(%rax), %xmm0
movss %xmm0, 0xc0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss %xmm0, 0xc4(%rsp)
movss 0xd8(%rsp), %xmm0
movq 0xf8(%rsp), %rax
movss 0x3c(%rax), %xmm1
addss %xmm1, %xmm0
movss %xmm0, 0xc8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x14(%rax), %xmm0
movss %xmm0, 0xcc(%rsp)
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movsd 0xc0(%rsp), %xmm0
movsd 0xc8(%rsp), %xmm1
movl 0x22e0(%rax), %esi
xorps %xmm2, %xmm2
callq 0x13f10
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x10(%rax), %xmm0
movss %xmm0, 0xc0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss %xmm0, 0xc4(%rsp)
movss 0xd8(%rsp), %xmm0
movq 0xf8(%rsp), %rax
addss 0x3c(%rax), %xmm0
movss %xmm0, 0xc8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x14(%rax), %xmm0
movss %xmm0, 0xcc(%rsp)
movq 0xf8(%rsp), %rax
movq 0x20(%rax), %rax
cmpl $0x0, (%rax)
jne 0x5772a
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x20, %eax
cmpl $0x0, %eax
jne 0x5772a
movss 0xe0(%rsp), %xmm0
addss 0xc8(%rsp), %xmm0
movss %xmm0, 0xc8(%rsp)
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movsd 0xc0(%rsp), %xmm0
movsd 0xc8(%rsp), %xmm1
movl 0x22e0(%rax), %esi
xorps %xmm2, %xmm2
callq 0x13f10
movq 0xf8(%rsp), %rax
movss 0x34(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jbe 0x57804
movq 0x100(%rsp), %rax
movss 0x4c(%rax), %xmm0
movss %xmm0, 0xc0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss 0x14(%rax), %xmm1
addss %xmm1, %xmm0
movss %xmm0, 0xc4(%rsp)
movq 0x100(%rsp), %rax
movss 0x54(%rax), %xmm0
movss %xmm0, 0xc8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x34(%rax), %xmm0
movss %xmm0, 0xcc(%rsp)
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movsd 0xc0(%rsp), %xmm0
movsd 0xc8(%rsp), %xmm1
movl 0x22e0(%rax), %esi
xorps %xmm2, %xmm2
callq 0x13f10
jmp 0x57806
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x20, %eax
cmpl $0x0, %eax
jne 0x57e8d
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
jne 0x57e8d
movq 0x100(%rsp), %rax
movss 0x55cf6(%rip), %xmm0    # 0xad53c
ucomiss 0xb0(%rax), %xmm0
jbe 0x57e8d
movq 0xf8(%rsp), %rax
movl (%rax), %edi
callq 0x85d60
cmpl $0x0, %eax
je 0x57a7a
movq 0x100(%rsp), %rax
movq %rax, 0x90(%rsp)
movq 0x100(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0x88(%rsp)
movq 0x88(%rsp), %rax
cmpq $0x0, 0x1c8(%rax)
je 0x578bd
movq 0x88(%rsp), %rax
movq 0x1c8(%rax), %rax
movq %rax, 0x88(%rsp)
jmp 0x57892
jmp 0x578bf
movq 0x90(%rsp), %rax
cmpq $0x0, 0x1d8(%rax)
je 0x578ea
movq 0x90(%rsp), %rax
movq 0x1d8(%rax), %rax
movq %rax, 0x90(%rsp)
jmp 0x578bf
movl $0x0, 0xac(%rsp)
movq 0x90(%rsp), %rax
movq 0x110(%rsp), %rcx
cmpq 0x4778(%rcx), %rax
jne 0x57a75
movq 0xf8(%rsp), %rax
cmpl $0x0, 0x40(%rax)
je 0x57a75
movq 0x108(%rsp), %rdi
movq 0xf8(%rsp), %rax
movsd 0x8(%rax), %xmm0
movsd 0x10(%rax), %xmm1
callq 0x15440
cmpl $0x0, %eax
je 0x57a73
movq 0x88(%rsp), %rax
movss 0x44(%rax), %xmm1
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x10(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x57a73
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm1
movq 0x88(%rsp), %rax
movss 0x44(%rax), %xmm0
movq 0x88(%rsp), %rax
addss 0x4c(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x57a73
movq 0x88(%rsp), %rax
movss 0x48(%rax), %xmm1
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x14(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x57a73
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm1
movq 0x88(%rsp), %rax
movss 0x48(%rax), %xmm0
movq 0x88(%rsp), %rax
addss 0x50(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x57a73
movq 0x100(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0x88(%rsp)
movq 0x88(%rsp), %rax
cmpq $0x0, 0x1c8(%rax)
je 0x57a59
movq 0x88(%rsp), %rax
movl $0x0, 0x40(%rax)
movq 0x88(%rsp), %rax
movq 0x1c8(%rax), %rax
movq %rax, 0x88(%rsp)
jmp 0x57a1f
movq 0x88(%rsp), %rax
movl $0x0, 0x40(%rax)
movl $0x1, 0xac(%rsp)
jmp 0x57a75
jmp 0x57b4e
movq 0xf8(%rsp), %rax
movl (%rax), %edi
callq 0x85d60
cmpl $0x0, %eax
jne 0x57b41
movq 0x100(%rsp), %rcx
movq 0x110(%rsp), %rdx
xorl %eax, %eax
cmpq 0x4778(%rdx), %rcx
movb %al, 0x17(%rsp)
jne 0x57ac4
movq 0xf8(%rsp), %rax
cmpl $0x0, 0x40(%rax)
setne %al
movb %al, 0x17(%rsp)
movb 0x17(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0xac(%rsp)
cmpq $0x0, 0x108(%rsp)
je 0x57b2d
movq 0x108(%rsp), %rax
movss 0x160(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
ja 0x57b0f
movq 0x108(%rsp), %rax
movss 0x15c(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jbe 0x57b2d
cmpl $0x0, 0xac(%rsp)
je 0x57b2d
movq 0x100(%rsp), %rax
movl $0x1, 0x1ac(%rax)
jmp 0x57b3f
movq 0x100(%rsp), %rax
movl $0x0, 0x1ac(%rax)
jmp 0x57b4c
movl $0x0, 0xac(%rsp)
jmp 0x57b4e
movl $0x0, 0x84(%rsp)
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm0
movss 0x10(%rax), %xmm1
addss %xmm1, %xmm0
movss 0xd8(%rsp), %xmm1
addss %xmm1, %xmm0
movss %xmm0, 0xb0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss %xmm0, 0xb4(%rsp)
movss 0xe0(%rsp), %xmm0
movss %xmm0, 0xb8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x14(%rax), %xmm0
movss %xmm0, 0xbc(%rsp)
movq 0xf8(%rsp), %rax
movq 0x20(%rax), %rax
movl (%rax), %eax
cvtsi2ss %rax, %xmm0
movss %xmm0, 0xa4(%rsp)
movss 0xbc(%rsp), %xmm0
movss 0x5597c(%rip), %xmm1    # 0xad56c
mulss %xmm1, %xmm0
movss %xmm0, 0xa0(%rsp)
movss 0xbc(%rsp), %xmm0
movss 0x55932(%rip), %xmm1    # 0xad540
mulss %xmm1, %xmm0
movss %xmm0, 0x9c(%rsp)
movq 0xf8(%rsp), %rax
movss 0x2c(%rax), %xmm0
movss 0xb4(%rsp), %xmm1
subss %xmm1, %xmm0
cvttps2dq %xmm0, %xmm0
cvtdq2ps %xmm0, %xmm0
movss %xmm0, 0xa8(%rsp)
movq 0xe8(%rsp), %rsi
movl 0xac(%rsp), %edx
movss 0xa4(%rsp), %xmm2
movss 0xa8(%rsp), %xmm3
movss 0xa0(%rsp), %xmm4
movss 0x9c(%rsp), %xmm5
movq 0x110(%rsp), %rcx
addq $0x1968, %rcx           # imm = 0x1968
movq 0x108(%rsp), %r8
movq 0xf0(%rsp), %rax
movq (%rax), %r9
movsd 0xb0(%rsp), %xmm0
movsd 0xb8(%rsp), %xmm1
leaq 0x84(%rsp), %rdi
callq 0x85d80
movss %xmm0, 0xa4(%rsp)
cvttss2si 0xa4(%rsp), %rax
movl %eax, %ecx
movq 0xf8(%rsp), %rax
movq 0x20(%rax), %rax
movl %ecx, (%rax)
cmpq $0x0, 0x108(%rsp)
je 0x57d04
cmpl $0x0, 0xac(%rsp)
je 0x57d04
movq 0x108(%rsp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0x160(%rax)
movl $0x0, 0x80(%rsp)
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm0
movss %xmm0, 0xb0(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movss 0x14(%rax), %xmm1
addss %xmm1, %xmm0
movss %xmm0, 0xb4(%rsp)
movq 0xf8(%rsp), %rax
movss 0x10(%rax), %xmm0
movss %xmm0, 0xb8(%rsp)
movss 0xe4(%rsp), %xmm0
movss %xmm0, 0xbc(%rsp)
movq 0xf8(%rsp), %rax
movq 0x18(%rax), %rax
movl (%rax), %eax
cvtsi2ss %rax, %xmm0
movss %xmm0, 0xa4(%rsp)
movq 0xf8(%rsp), %rax
movss 0x30(%rax), %xmm0
movss 0xb0(%rsp), %xmm1
subss %xmm1, %xmm0
cvttps2dq %xmm0, %xmm0
cvtdq2ps %xmm0, %xmm0
movss %xmm0, 0xa8(%rsp)
movq 0xf8(%rsp), %rax
movss 0x30(%rax), %xmm0
movss 0x557a9(%rip), %xmm1    # 0xad570
mulss %xmm1, %xmm0
movss %xmm0, 0xa0(%rsp)
movq 0xf8(%rsp), %rax
movss 0x30(%rax), %xmm0
movss 0x5578b(%rip), %xmm1    # 0xad574
mulss %xmm1, %xmm0
movss %xmm0, 0x9c(%rsp)
movq 0xe8(%rsp), %rsi
movl 0xac(%rsp), %edx
movss 0xa4(%rsp), %xmm2
movss 0xa8(%rsp), %xmm3
movss 0xa0(%rsp), %xmm4
movss 0x9c(%rsp), %xmm5
movq 0x110(%rsp), %rcx
addq $0x1678, %rcx           # imm = 0x1678
movq 0x108(%rsp), %r8
movq 0xf0(%rsp), %rax
movq (%rax), %r9
movsd 0xb0(%rsp), %xmm0
movsd 0xb8(%rsp), %xmm1
leaq 0x80(%rsp), %rdi
callq 0x866e0
movss %xmm0, 0xa4(%rsp)
cvttss2si 0xa4(%rsp), %rax
movl %eax, %ecx
movq 0xf8(%rsp), %rax
movq 0x18(%rax), %rax
movl %ecx, (%rax)
movq 0x100(%rsp), %rax
movl 0x48(%rax), %eax
andl $0x80, %eax
cmpl $0x0, %eax
je 0x57f96
movq 0x110(%rsp), %rax
movss 0x154(%rax), %xmm0
movb $0x1, %al
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
movb %al, 0x16(%rsp)
jne 0x57f08
jp 0x57f08
movq 0x110(%rsp), %rax
movss 0x158(%rax), %xmm0
movb $0x1, %al
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
movb %al, 0x16(%rsp)
jne 0x57f08
jp 0x57f08
movq 0x110(%rsp), %rax
movss 0x160(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
setne %al
setp %cl
orb %cl, %al
movb %al, 0x16(%rsp)
movb 0x16(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0x7c(%rsp)
movq 0x110(%rsp), %rdi
callq 0x15270
movl %eax, 0x78(%rsp)
movq 0x110(%rsp), %rax
movl 0x2598(%rax), %eax
andl $0x2, %eax
movl %eax, 0x74(%rsp)
cmpl $0x0, 0x7c(%rsp)
jne 0x57f49
cmpl $0x0, 0x78(%rsp)
jne 0x57f57
cmpl $0x0, 0x78(%rsp)
jne 0x57f81
cmpl $0x0, 0x74(%rsp)
jne 0x57f81
movq 0x110(%rsp), %rax
movss 0x30d8(%rax), %xmm0
movq 0x100(%rsp), %rax
addss 0xb0(%rax), %xmm0
movss %xmm0, 0xb0(%rax)
jmp 0x57f94
movq 0x100(%rsp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0xb0(%rax)
jmp 0x57fa9
movq 0x100(%rsp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0xb0(%rax)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x580f9
movq 0xf0(%rsp), %rdi
movq 0xf8(%rsp), %rax
movl (%rax), %esi
callq 0x86ef0
movl %eax, 0x70(%rsp)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
je 0x58022
movq 0xf0(%rsp), %rax
movss 0x2328(%rax), %xmm0
movq 0x100(%rsp), %rax
addss 0x50(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x38(%rax), %xmm0
movss %xmm0, 0x10(%rsp)
jmp 0x58092
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
je 0x58066
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x14(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x34(%rax), %xmm0
movss %xmm0, 0xc(%rsp)
jmp 0x58086
movq 0x100(%rsp), %rax
movss 0x50(%rax), %xmm0
movq 0x100(%rsp), %rax
addss 0x58(%rax), %xmm0
movss %xmm0, 0xc(%rsp)
movss 0xc(%rsp), %xmm0
movss %xmm0, 0x10(%rsp)
movss 0x10(%rsp), %xmm0
movss %xmm0, 0x6c(%rsp)
movq 0x100(%rsp), %rax
movups 0x4c(%rax), %xmm0
movaps %xmm0, 0x50(%rsp)
movss 0x6c(%rsp), %xmm0
movq 0x100(%rsp), %rax
movss 0x50(%rax), %xmm1
subss %xmm1, %xmm0
movss %xmm0, 0x5c(%rsp)
movq 0xe8(%rsp), %rdi
movq 0xf8(%rsp), %rax
movss 0x3c(%rax), %xmm3
movsd 0x50(%rsp), %xmm0
movsd 0x58(%rsp), %xmm1
movl 0x70(%rsp), %esi
xorps %xmm2, %xmm2
callq 0x13070
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x585d1
cmpq $0x0, 0x108(%rsp)
je 0x585d1
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
jne 0x585d1
movss 0xe0(%rsp), %xmm0
movss %xmm0, 0x48(%rsp)
movss 0xe4(%rsp), %xmm0
movss %xmm0, 0x4c(%rsp)
movq 0xf8(%rsp), %rax
movss 0xc(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x14(%rax), %xmm0
movss %xmm0, 0x44(%rsp)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x200, %eax            # imm = 0x200
cmpl $0x0, %eax
je 0x581c6
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm1
movss 0xd8(%rsp), %xmm0
movd %xmm0, %eax
xorl $0x80000000, %eax       # imm = 0x80000000
movd %eax, %xmm0
movss 0x5535e(%rip), %xmm2    # 0xad514
mulss %xmm2, %xmm0
addss %xmm1, %xmm0
movss %xmm0, 0x40(%rsp)
jmp 0x581ef
movq 0xf8(%rsp), %rax
movss 0x8(%rax), %xmm0
movq 0xf8(%rsp), %rax
addss 0x10(%rax), %xmm0
addss 0xd8(%rsp), %xmm0
movss %xmm0, 0x40(%rsp)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x20, %eax
cmpl $0x0, %eax
je 0x58218
movss 0x48(%rsp), %xmm1
movss 0x40(%rsp), %xmm0
subss %xmm1, %xmm0
movss %xmm0, 0x40(%rsp)
movq 0xf0(%rsp), %rax
addq $0x2058, %rax           # imm = 0x2058
addq $0x2a8, %rax            # imm = 0x2A8
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rax
cmpl $0x1, (%rax)
jne 0x58268
movq 0xe8(%rsp), %rdi
movq 0x38(%rsp), %rsi
addq $0x8, %rsi
movsd 0x40(%rsp), %xmm0
movsd 0x48(%rsp), %xmm1
movl 0x59052(%rip), %edx     # 0xb12b0
callq 0x14690
jmp 0x5831d
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x200, %eax            # imm = 0x200
cmpl $0x0, %eax
je 0x582ca
movq 0xe8(%rsp), %rdi
movss 0x40(%rsp), %xmm0
movss 0x44(%rsp), %xmm1
movss 0x40(%rsp), %xmm2
movss 0x44(%rsp), %xmm3
addss 0x4c(%rsp), %xmm3
movss 0x40(%rsp), %xmm4
addss 0x48(%rsp), %xmm4
movss 0x44(%rsp), %xmm5
addss 0x4c(%rsp), %xmm5
movq 0x38(%rsp), %rax
movl 0x8(%rax), %esi
callq 0x14b10
jmp 0x5831b
movq 0xe8(%rsp), %rdi
movss 0x40(%rsp), %xmm0
addss 0x48(%rsp), %xmm0
movss 0x44(%rsp), %xmm1
movss 0x40(%rsp), %xmm2
addss 0x48(%rsp), %xmm2
movss 0x44(%rsp), %xmm3
addss 0x4c(%rsp), %xmm3
movss 0x40(%rsp), %xmm4
movss 0x44(%rsp), %xmm5
addss 0x4c(%rsp), %xmm5
movq 0x38(%rsp), %rax
movl 0x8(%rax), %esi
callq 0x14b10
jmp 0x5831d
movq 0x100(%rsp), %rax
movl 0x48(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
jne 0x585cf
movq 0xf0(%rsp), %rax
movq 0x235c(%rax), %rax
movq %rax, 0x30(%rsp)
movq 0x108(%rsp), %rax
movl 0x104(%rax), %eax
movl %eax, 0x2c(%rsp)
movq 0x108(%rsp), %rdi
movsd 0x40(%rsp), %xmm0
movsd 0x48(%rsp), %xmm1
xorl %eax, %eax
xorl %esi, %esi
movl $0x1, %edx
callq 0x13780
movl %eax, 0x28(%rsp)
cmpl $0x0, 0x2c(%rsp)
je 0x585cd
cmpl $0x0, 0x28(%rsp)
je 0x585cd
movq 0x108(%rsp), %rax
movss 0x154(%rax), %xmm0
movss %xmm0, 0x24(%rsp)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x200, %eax            # imm = 0x200
cmpl $0x0, %eax
je 0x583fe
movss 0x24(%rsp), %xmm0
movd %xmm0, %eax
xorl $0x80000000, %eax       # imm = 0x80000000
movd %eax, %xmm0
movss %xmm0, 0x24(%rsp)
movq 0x108(%rsp), %rax
movss 0x154(%rax), %xmm0
movq 0x100(%rsp), %rax
addss 0x4c(%rax), %xmm0
movss %xmm0, 0x4c(%rax)
movq 0x100(%rsp), %rax
movss 0x54(%rax), %xmm0
addss 0x24(%rsp), %xmm0
ucomiss 0x30(%rsp), %xmm0
jb 0x58485
xorps %xmm0, %xmm0
ucomiss 0x24(%rsp), %xmm0
ja 0x58447
movss 0x24(%rsp), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jbe 0x58483
movq 0x108(%rsp), %rax
movss 0x144(%rax), %xmm0
ucomiss 0x40(%rsp), %xmm0
jb 0x58483
movq 0x100(%rsp), %rax
movss 0x54(%rax), %xmm0
addss 0x24(%rsp), %xmm0
movq 0x100(%rsp), %rax
movss %xmm0, 0x54(%rax)
movq 0x108(%rsp), %rax
movss 0x154(%rax), %xmm0
addss 0x40(%rsp), %xmm0
movss %xmm0, 0x40(%rsp)
jmp 0x58485
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
jne 0x58557
movss 0x34(%rsp), %xmm1
movq 0x100(%rsp), %rax
movss 0x58(%rax), %xmm0
movq 0x108(%rsp), %rax
addss 0x158(%rax), %xmm0
ucomiss %xmm1, %xmm0
jbe 0x58555
movq 0x108(%rsp), %rax
xorps %xmm0, %xmm0
ucomiss 0x158(%rax), %xmm0
ja 0x5850d
movq 0x108(%rsp), %rax
movss 0x158(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jbe 0x58553
movq 0x108(%rsp), %rax
movss 0x148(%rax), %xmm0
ucomiss 0x44(%rsp), %xmm0
jb 0x58553
movq 0x100(%rsp), %rax
movss 0x58(%rax), %xmm0
movq 0x108(%rsp), %rax
addss 0x158(%rax), %xmm0
movq 0x100(%rsp), %rax
movss %xmm0, 0x58(%rax)
movq 0x108(%rsp), %rax
movss 0x158(%rax), %xmm0
addss 0x44(%rsp), %xmm0
movss %xmm0, 0x44(%rsp)
jmp 0x58555
jmp 0x58557
movq 0x110(%rsp), %rax
movq 0x1a0(%rax), %rcx
movq 0x110(%rsp), %rax
movq %rcx, 0x1a8(%rax)
movss 0x40(%rsp), %xmm0
movss 0x48(%rsp), %xmm1
movss 0x54f5b(%rip), %xmm2    # 0xad4e4
divss %xmm2, %xmm1
addss %xmm1, %xmm0
movq 0x108(%rsp), %rax
movss %xmm0, 0x10c(%rax)
movss 0x44(%rsp), %xmm0
movss 0x4c(%rsp), %xmm1
movss 0x54f2f(%rip), %xmm2    # 0xad4e4
divss %xmm2, %xmm1
addss %xmm1, %xmm0
movq 0x108(%rsp), %rax
movss %xmm0, 0x110(%rax)
jmp 0x585cf
jmp 0x585d1
movq 0xf8(%rsp), %rax
movl (%rax), %edi
callq 0x85d60
cmpl $0x0, %eax
jne 0x58624
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x0, %eax
je 0x5860d
movq 0x100(%rsp), %rdi
addq $0x68, %rdi
callq 0x86fd0
jmp 0x58622
movq 0x110(%rsp), %rdi
movq 0x100(%rsp), %rsi
callq 0x87060
jmp 0x58624
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %eax
andl $0x10000, %eax          # imm = 0x10000
cmpl $0x0, %eax
je 0x58661
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %ecx
andl $0xffffefff, %ecx       # imm = 0xFFFFEFFF
movl %ecx, 0x4(%rax)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %ecx
andl $0xfffeffff, %ecx       # imm = 0xFFFEFFFF
movl %ecx, 0x4(%rax)
movq 0xf8(%rsp), %rax
movl 0x4(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0x48(%rax)
movq 0x100(%rsp), %rax
cmpl $0x0, 0xb4(%rax)
je 0x586df
movq 0x100(%rsp), %rax
movl 0x114(%rax), %eax
movq 0x100(%rsp), %rcx
cmpl 0x110(%rcx), %eax
je 0x586df
movq 0x100(%rsp), %rax
movl 0xb4(%rax), %eax
movq 0x100(%rsp), %rcx
cmpl 0xb8(%rcx), %eax
jne 0x586df
movq 0x100(%rsp), %rdi
addq $0xb4, %rdi
movl $0x68, %esi
callq 0x2f0e0
jmp 0x58729
movq 0x100(%rsp), %rax
movl 0x110(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0x114(%rax)
movq 0x100(%rsp), %rax
movl 0xb4(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0xb8(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x110(%rax)
movq 0x100(%rsp), %rax
cmpl $0x0, 0x18c(%rax)
je 0x58791
movq 0x100(%rsp), %rax
movl 0x188(%rax), %eax
movq 0x100(%rsp), %rcx
cmpl 0x184(%rcx), %eax
je 0x58791
movq 0x100(%rsp), %rax
movl 0x18c(%rax), %eax
movq 0x100(%rsp), %rcx
cmpl 0x190(%rcx), %eax
jne 0x58791
movq 0x100(%rsp), %rdi
addq $0x180, %rdi            # imm = 0x180
movl $0x2c, %esi
callq 0x2f0e0
jmp 0x587db
movq 0x100(%rsp), %rax
movl 0x184(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0x188(%rax)
movq 0x100(%rsp), %rax
movl 0x18c(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0x190(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x184(%rax)
movq 0x100(%rsp), %rax
cmpl $0x0, 0x16c(%rax)
je 0x58842
movq 0x100(%rsp), %rax
movl 0x168(%rax), %eax
movq 0x100(%rsp), %rcx
cmpl 0x164(%rcx), %eax
je 0x58842
movq 0x100(%rsp), %rax
movl $0x0, 0x164(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x168(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x16c(%rax)
jmp 0x58870
movq 0x100(%rsp), %rax
movl 0x164(%rax), %ecx
movq 0x100(%rsp), %rax
movl %ecx, 0x168(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x164(%rax)
movq 0x100(%rsp), %rax
movl $0x0, 0x160(%rax)
movq 0xf8(%rsp), %rax
cmpl $0x0, 0xb0(%rax)
je 0x588c6
movq 0x6c756(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
leaq 0x58afc(%rip), %rsi     # 0xb13a0
leaq 0x58b13(%rip), %rdx     # 0xb13be
movl $0x4ef5, %ecx           # imm = 0x4EF5
movb $0x0, %al
callq 0x13ec0
movq 0x6c732(%rip), %rax     # 0xc4ff0
movq (%rax), %rdi
callq 0x149a0
jmp 0x588c8
addq $0x118, %rsp            # imm = 0x118
retq