// File: /workspace/github_c_makefile_star2_O2/Paxa[P]fast_excel/libxlsxwriter/src/worksheet.c
// Function: lxw_worksheet_free
void
lxw_worksheet_free(lxw_worksheet *worksheet)
{
    lxw_row *row;
    lxw_row *next_row;
    lxw_col_t col;
    lxw_merged_range *merged_range;
    lxw_object_properties *object_props;
    lxw_vml_obj *vml_obj;
    lxw_selection *selection;
    lxw_data_val_obj *data_validation;
    lxw_rel_tuple *relationship;
    lxw_cond_format_obj *cond_format;
    lxw_table_obj *table_obj;
    struct lxw_drawing_rel_id *drawing_rel_id;
    struct lxw_drawing_rel_id *next_drawing_rel_id;
    struct lxw_cond_format_hash_element *cond_format_elem;
    struct lxw_cond_format_hash_element *next_cond_format_elem;

    if (!worksheet)
        return;

    if (worksheet->col_options) {
        for (col = 0; col < worksheet->col_options_max; col++) {
            if (worksheet->col_options[col])
                free(worksheet->col_options[col]);
        }
    }

    free(worksheet->col_options);
    free(worksheet->col_sizes);
    free(worksheet->col_formats);

    if (worksheet->table) {
        for (row = RB_MIN(lxw_table_rows, worksheet->table); row;
             row = next_row) {

            next_row = RB_NEXT(lxw_table_rows, worksheet->table, row);
            RB_REMOVE(lxw_table_rows, worksheet->table, row);
            _free_row(row);
        }

        free(worksheet->table);
    }

    if (worksheet->hyperlinks) {
        for (row = RB_MIN(lxw_table_rows, worksheet->hyperlinks); row;
             row = next_row) {

            next_row = RB_NEXT(lxw_table_rows, worksheet->hyperlinks, row);
            RB_REMOVE(lxw_table_rows, worksheet->hyperlinks, row);
            _free_row(row);
        }

        free(worksheet->hyperlinks);
    }

    if (worksheet->comments) {
        for (row = RB_MIN(lxw_table_rows, worksheet->comments); row;
             row = next_row) {

            next_row = RB_NEXT(lxw_table_rows, worksheet->comments, row);
            RB_REMOVE(lxw_table_rows, worksheet->comments, row);
            _free_row(row);
        }

        free(worksheet->comments);
    }

    if (worksheet->merged_ranges) {
        while (!STAILQ_EMPTY(worksheet->merged_ranges)) {
            merged_range = STAILQ_FIRST(worksheet->merged_ranges);
            STAILQ_REMOVE_HEAD(worksheet->merged_ranges, list_pointers);
            free(merged_range);
        }

        free(worksheet->merged_ranges);
    }

    if (worksheet->image_props) {
        while (!STAILQ_EMPTY(worksheet->image_props)) {
            object_props = STAILQ_FIRST(worksheet->image_props);
            STAILQ_REMOVE_HEAD(worksheet->image_props, list_pointers);
            _free_object_properties(object_props);
        }

        free(worksheet->image_props);
    }

    if (worksheet->chart_data) {
        while (!STAILQ_EMPTY(worksheet->chart_data)) {
            object_props = STAILQ_FIRST(worksheet->chart_data);
            STAILQ_REMOVE_HEAD(worksheet->chart_data, list_pointers);
            _free_object_properties(object_props);
        }

        free(worksheet->chart_data);
    }

    /* Just free the list. The list objects are freed from the RB tree. */
    free(worksheet->comment_objs);

    if (worksheet->header_image_objs) {
        while (!STAILQ_EMPTY(worksheet->header_image_objs)) {
            vml_obj = STAILQ_FIRST(worksheet->header_image_objs);
            STAILQ_REMOVE_HEAD(worksheet->header_image_objs, list_pointers);
            _free_vml_object(vml_obj);
        }

        free(worksheet->header_image_objs);
    }

    if (worksheet->button_objs) {
        while (!STAILQ_EMPTY(worksheet->button_objs)) {
            vml_obj = STAILQ_FIRST(worksheet->button_objs);
            STAILQ_REMOVE_HEAD(worksheet->button_objs, list_pointers);
            _free_vml_object(vml_obj);
        }

        free(worksheet->button_objs);
    }

    if (worksheet->selections) {
        while (!STAILQ_EMPTY(worksheet->selections)) {
            selection = STAILQ_FIRST(worksheet->selections);
            STAILQ_REMOVE_HEAD(worksheet->selections, list_pointers);
            free(selection);
        }

        free(worksheet->selections);
    }

    if (worksheet->table_objs) {
        while (!STAILQ_EMPTY(worksheet->table_objs)) {
            table_obj = STAILQ_FIRST(worksheet->table_objs);
            STAILQ_REMOVE_HEAD(worksheet->table_objs, list_pointers);
            _free_worksheet_table(table_obj);
        }

        free(worksheet->table_objs);
    }

    if (worksheet->data_validations) {
        while (!STAILQ_EMPTY(worksheet->data_validations)) {
            data_validation = STAILQ_FIRST(worksheet->data_validations);
            STAILQ_REMOVE_HEAD(worksheet->data_validations, list_pointers);
            _free_data_validation(data_validation);
        }

        free(worksheet->data_validations);
    }

    while (!STAILQ_EMPTY(worksheet->external_hyperlinks)) {
        relationship = STAILQ_FIRST(worksheet->external_hyperlinks);
        STAILQ_REMOVE_HEAD(worksheet->external_hyperlinks, list_pointers);
        _free_relationship(relationship);
    }
    free(worksheet->external_hyperlinks);

    while (!STAILQ_EMPTY(worksheet->external_drawing_links)) {
        relationship = STAILQ_FIRST(worksheet->external_drawing_links);
        STAILQ_REMOVE_HEAD(worksheet->external_drawing_links, list_pointers);
        _free_relationship(relationship);
    }
    free(worksheet->external_drawing_links);

    while (!STAILQ_EMPTY(worksheet->drawing_links)) {
        relationship = STAILQ_FIRST(worksheet->drawing_links);
        STAILQ_REMOVE_HEAD(worksheet->drawing_links, list_pointers);
        _free_relationship(relationship);
    }
    free(worksheet->drawing_links);

    while (!STAILQ_EMPTY(worksheet->vml_drawing_links)) {
        relationship = STAILQ_FIRST(worksheet->vml_drawing_links);
        STAILQ_REMOVE_HEAD(worksheet->vml_drawing_links, list_pointers);
        _free_relationship(relationship);
    }
    free(worksheet->vml_drawing_links);

    while (!STAILQ_EMPTY(worksheet->external_table_links)) {
        relationship = STAILQ_FIRST(worksheet->external_table_links);
        STAILQ_REMOVE_HEAD(worksheet->external_table_links, list_pointers);
        _free_relationship(relationship);
    }
    free(worksheet->external_table_links);

    if (worksheet->drawing_rel_ids) {
        for (drawing_rel_id =
             RB_MIN(lxw_drawing_rel_ids, worksheet->drawing_rel_ids);
             drawing_rel_id; drawing_rel_id = next_drawing_rel_id) {

            next_drawing_rel_id =
                RB_NEXT(lxw_drawing_rel_ids, worksheet->drawing_rel_id,
                        drawing_rel_id);
            RB_REMOVE(lxw_drawing_rel_ids, worksheet->drawing_rel_ids,
                      drawing_rel_id);
            free(drawing_rel_id->target);
            free(drawing_rel_id);
        }

        free(worksheet->drawing_rel_ids);
    }

    if (worksheet->vml_drawing_rel_ids) {
        for (drawing_rel_id =
             RB_MIN(lxw_vml_drawing_rel_ids, worksheet->vml_drawing_rel_ids);
             drawing_rel_id; drawing_rel_id = next_drawing_rel_id) {

            next_drawing_rel_id =
                RB_NEXT(lxw_vml_drawing_rel_ids, worksheet->drawing_rel_id,
                        drawing_rel_id);
            RB_REMOVE(lxw_vml_drawing_rel_ids, worksheet->vml_drawing_rel_ids,
                      drawing_rel_id);
            free(drawing_rel_id->target);
            free(drawing_rel_id);
        }

        free(worksheet->vml_drawing_rel_ids);
    }

    if (worksheet->conditional_formats) {
        for (cond_format_elem =
             RB_MIN(lxw_cond_format_hash, worksheet->conditional_formats);
             cond_format_elem; cond_format_elem = next_cond_format_elem) {

            next_cond_format_elem = RB_NEXT(lxw_cond_format_hash,
                                            worksheet->conditional_formats,
                                            cond_format_elem);
            RB_REMOVE(lxw_cond_format_hash,
                      worksheet->conditional_formats, cond_format_elem);

            while (!STAILQ_EMPTY(cond_format_elem->cond_formats)) {
                cond_format = STAILQ_FIRST(cond_format_elem->cond_formats);
                STAILQ_REMOVE_HEAD(cond_format_elem->cond_formats,
                                   list_pointers);
                _free_cond_format(cond_format);
            }

            free(cond_format_elem->cond_formats);
            free(cond_format_elem);
        }

        free(worksheet->conditional_formats);
    }

    _free_relationship(worksheet->external_vml_comment_link);
    _free_relationship(worksheet->external_comment_link);
    _free_relationship(worksheet->external_vml_header_link);
    _free_relationship(worksheet->external_background_link);

    _free_filter_rules(worksheet);

    if (worksheet->array) {
        for (col = 0; col < LXW_COL_MAX; col++) {
            _free_cell(worksheet->array[col]);
        }
        free(worksheet->array);
    }

    if (worksheet->optimize_row)
        free(worksheet->optimize_row);

    if (worksheet->drawing)
        lxw_drawing_free(worksheet->drawing);

    free(worksheet->hbreaks);
    free(worksheet->vbreaks);
    free((void *) worksheet->name);
    free((void *) worksheet->quoted_name);
    free(worksheet->vba_codename);
    free(worksheet->vml_data_id_str);
    free(worksheet->vml_header_id_str);
    free(worksheet->comment_author);
    free(worksheet->ignore_number_stored_as_text);
    free(worksheet->ignore_eval_error);
    free(worksheet->ignore_formula_differs);
    free(worksheet->ignore_formula_range);
    free(worksheet->ignore_formula_unlocked);
    free(worksheet->ignore_empty_cell_reference);
    free(worksheet->ignore_list_data_validation);
    free(worksheet->ignore_calculated_column);
    free(worksheet->ignore_two_digit_text_year);
    free(worksheet->header);
    free(worksheet->footer);

    free(worksheet);
    worksheet = NULL;
}

// Assembly:
testq %rdi, %rdi
je 0x2b006
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
cmpq $0x0, 0xf0(%rdi)
je 0x2b007
xorl %r14d, %r14d
movzwl 0xf8(%rbx), %eax
movq 0xf0(%rbx), %rdi
cmpq %rax, %r14
jae 0x2b009
movq (%rdi,%r14,8), %rdi
callq 0xc0d0
incq %r14
jmp 0x2afe5
retq
xorl %edi, %edi
callq 0xc0d0
movq 0x100(%rbx), %rdi
callq 0xc0d0
movq 0x110(%rbx), %rdi
callq 0xc0d0
movq 0x20(%rbx), %rax
testq %rax, %rax
je 0x2b072
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x28(%rcx), %rax
testq %rcx, %rcx
jne 0x2b031
jmp 0x2b064
movq %r14, %rdi
callq 0x2c3f9
movq %rax, %r15
movq 0x20(%rbx), %rdi
movq %r14, %rsi
callq 0x2c435
movq %r14, %rdi
callq 0x2c7f9
movq %r15, %r14
testq %r14, %r14
jne 0x2b042
movq 0x20(%rbx), %rdi
callq 0xc0d0
movq 0x28(%rbx), %rax
testq %rax, %rax
je 0x2b0be
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x28(%rcx), %rax
testq %rcx, %rcx
jne 0x2b07d
jmp 0x2b0b0
movq %r14, %rdi
callq 0x2c3f9
movq %rax, %r15
movq 0x28(%rbx), %rdi
movq %r14, %rsi
callq 0x2c435
movq %r14, %rdi
callq 0x2c7f9
movq %r15, %r14
testq %r14, %r14
jne 0x2b08e
movq 0x28(%rbx), %rdi
callq 0xc0d0
movq 0x30(%rbx), %rax
testq %rax, %rax
je 0x2b10a
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x28(%rcx), %rax
testq %rcx, %rcx
jne 0x2b0c9
jmp 0x2b0fc
movq %r14, %rdi
callq 0x2c3f9
movq %rax, %r15
movq 0x30(%rbx), %rdi
movq %r14, %rsi
callq 0x2c435
movq %r14, %rdi
callq 0x2c7f9
movq %r15, %r14
testq %r14, %r14
jne 0x2b0da
movq 0x30(%rbx), %rdi
callq 0xc0d0
movq 0x40(%rbx), %rdi
testq %rdi, %rdi
je 0x2b13e
movq (%rdi), %rax
testq %rax, %rax
je 0x2b139
movq 0x10(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b12b
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0xc0d0
movq 0x40(%rbx), %rdi
jmp 0x2b113
callq 0xc0d0
movq 0x60(%rbx), %rdi
testq %rdi, %rdi
je 0x2b175
movq (%rdi), %rax
testq %rax, %rax
je 0x2b170
movq 0xb8(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b162
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c85b
movq 0x60(%rbx), %rdi
jmp 0x2b147
callq 0xc0d0
movq 0x68(%rbx), %rdi
testq %rdi, %rdi
je 0x2b1ac
movq (%rdi), %rax
testq %rax, %rax
je 0x2b1a7
movq 0xb8(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b199
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c85b
movq 0x68(%rbx), %rdi
jmp 0x2b17e
callq 0xc0d0
movq 0x80(%rbx), %rdi
callq 0xc0d0
movq 0x88(%rbx), %rdi
testq %rdi, %rdi
je 0x2b1f5
movq (%rdi), %rax
testq %rax, %rax
je 0x2b1f0
movq 0xb8(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b1df
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c8bc
movq 0x88(%rbx), %rdi
jmp 0x2b1c4
callq 0xc0d0
movq 0x90(%rbx), %rdi
testq %rdi, %rdi
je 0x2b232
movq (%rdi), %rax
testq %rax, %rax
je 0x2b22d
movq 0xb8(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b21c
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c8bc
movq 0x90(%rbx), %rdi
jmp 0x2b201
callq 0xc0d0
movq 0x48(%rbx), %rdi
testq %rdi, %rdi
je 0x2b266
movq (%rdi), %rax
testq %rax, %rax
je 0x2b261
movq 0x48(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b253
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0xc0d0
movq 0x48(%rbx), %rdi
jmp 0x2b23b
callq 0xc0d0
movq 0x98(%rbx), %rdi
testq %rdi, %rdi
je 0x2b2a3
movq (%rdi), %rax
testq %rax, %rax
je 0x2b29e
movq 0x1078(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b28d
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c917
movq 0x98(%rbx), %rdi
jmp 0x2b272
callq 0xc0d0
movq 0x50(%rbx), %rdi
testq %rdi, %rdi
je 0x2b2f4
movq (%rdi), %rax
testq %rax, %rax
je 0x2b2d5
movq 0xc0(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b2c7
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c98c
movq 0x50(%rbx), %rdi
jmp 0x2b2ac
callq 0xc0d0
jmp 0x2b2f4
movq 0x18(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b2ec
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c9ea
movq 0x218(%rbx), %rdi
movq (%rdi), %rax
testq %rax, %rax
jne 0x2b2dc
callq 0xc0d0
movq 0x220(%rbx), %rdi
movq (%rdi), %rax
testq %rax, %rax
je 0x2b331
movq 0x18(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b327
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c9ea
jmp 0x2b308
callq 0xc0d0
movq 0x228(%rbx), %rdi
movq (%rdi), %rax
testq %rax, %rax
je 0x2b35f
movq 0x18(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b355
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c9ea
jmp 0x2b336
callq 0xc0d0
movq 0x230(%rbx), %rdi
movq (%rdi), %rax
testq %rax, %rax
je 0x2b38d
movq 0x18(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b383
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c9ea
jmp 0x2b364
callq 0xc0d0
movq 0x238(%rbx), %rdi
movq (%rdi), %rax
testq %rax, %rax
je 0x2b3bb
movq 0x18(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2b3b1
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2c9ea
jmp 0x2b392
callq 0xc0d0
movq 0x70(%rbx), %rax
testq %rax, %rax
je 0x2b83d
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x10(%rcx), %rax
testq %rcx, %rcx
jne 0x2b3cf
jmp 0x2b82b
movq 0x18(%r14), %rax
testq %rax, %rax
je 0x2b4b3
movq %rax, %rcx
movq %rcx, %r15
movq 0x10(%rcx), %rcx
testq %rcx, %rcx
jne 0x2b3f3
movq 0x70(%rbx), %rcx
movq 0x10(%r14), %rdi
testq %rdi, %rdi
je 0x2b4dc
testq %rax, %rax
je 0x2b4ed
leaq 0x10(%r14), %r8
movq %rax, %rdi
movq 0x10(%rax), %rax
testq %rax, %rax
jne 0x2b41d
movq 0x18(%rdi), %rax
movq 0x20(%rdi), %rdx
movl 0x28(%rdi), %esi
testq %rax, %rax
je 0x2b43d
movq %rdx, 0x20(%rax)
movq %rcx, %r9
testq %rdx, %rdx
je 0x2b455
leaq 0x10(%rdx), %r10
leaq 0x18(%rdx), %r9
cmpq %rdi, 0x10(%rdx)
cmoveq %r10, %r9
movq %rax, (%r9)
cmpq %r14, 0x20(%rdi)
cmoveq %rdi, %rdx
leaq 0x10(%rdi), %r9
movups (%r8), %xmm0
movups 0x10(%r8), %xmm1
movups %xmm1, 0x10(%r9)
movups %xmm0, (%r9)
movq 0x20(%r14), %r9
movq %rcx, %r8
testq %r9, %r9
je 0x2b492
leaq 0x10(%r9), %r10
leaq 0x18(%r9), %r8
cmpq %r14, 0x10(%r9)
cmoveq %r10, %r8
movq %rdi, (%r8)
movq 0x10(%r14), %r8
movq %rdi, 0x20(%r8)
movq 0x18(%r14), %r8
testq %r8, %r8
je 0x2b539
movq %rdi, 0x20(%r8)
jmp 0x2b539
movq 0x20(%r14), %rdx
testq %rdx, %rdx
je 0x2b4c2
cmpq %r14, 0x10(%rdx)
je 0x2b4fb
movq %r14, %rcx
movq 0x20(%rcx), %r15
testq %r15, %r15
je 0x2b4f3
cmpq 0x18(%r15), %rcx
movq %r15, %rcx
je 0x2b4c5
jmp 0x2b3ff
movq 0x20(%r14), %rdx
movl 0x28(%r14), %esi
testq %rax, %rax
jne 0x2b516
xorl %eax, %eax
jmp 0x2b51a
movq 0x20(%r14), %rdx
jmp 0x2b50f
xorl %r15d, %r15d
jmp 0x2b3ff
movq 0x70(%rbx), %rcx
movq 0x10(%r14), %rdi
testq %rdi, %rdi
je 0x2b745
movq %rdx, %r15
movl 0x28(%r14), %esi
movq %rdi, %rax
movq %rdx, 0x20(%rax)
testq %rdx, %rdx
je 0x2b531
leaq 0x10(%rdx), %r8
leaq 0x18(%rdx), %rdi
cmpq %r14, 0x10(%rdx)
cmoveq %r8, %rdi
jmp 0x2b536
xorl %edx, %edx
movq %rcx, %rdi
movq %rax, (%rdi)
testl %esi, %esi
jne 0x2b817
jmp 0x2b54e
movl $0x1, 0x28(%rdx)
movq 0x20(%rax), %rdx
movq %rax, %rdi
movq %rdx, %rax
testq %rdi, %rdi
je 0x2b563
cmpl $0x0, 0x28(%rdi)
jne 0x2b813
movq (%rcx), %rsi
cmpq %rsi, %rdi
je 0x2b80e
movq 0x10(%rax), %rdx
cmpq %rdi, %rdx
je 0x2b5b7
cmpl $0x1, 0x28(%rdx)
jne 0x2b619
andl $0x0, 0x28(%rdx)
movl $0x1, 0x28(%rax)
movq 0x18(%rdx), %rdi
movq %rdi, 0x10(%rax)
testq %rdi, %rdi
je 0x2b59e
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
testq %r8, %r8
je 0x2b5fe
cmpq 0x10(%r8), %rax
je 0x2b606
movq %rdx, 0x18(%r8)
jmp 0x2b60e
movq 0x18(%rax), %rdx
cmpl $0x1, 0x28(%rdx)
jne 0x2b65d
andl $0x0, 0x28(%rdx)
movl $0x1, 0x28(%rax)
movq 0x10(%rdx), %rdi
movq %rdi, 0x18(%rax)
testq %rdi, %rdi
je 0x2b5e1
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
testq %r8, %r8
je 0x2b646
cmpq 0x10(%r8), %rax
je 0x2b64e
movq %rdx, 0x18(%r8)
movq 0x18(%rax), %rdi
jmp 0x2b652
movq %rdx, (%rcx)
movq %rdx, %rsi
jmp 0x2b60e
movq %rdx, 0x10(%r8)
movq 0x10(%rax), %rdi
movq %rax, 0x18(%rdx)
movq %rdx, 0x20(%rax)
movq %rdi, %rdx
movq 0x10(%rdx), %r8
testq %r8, %r8
je 0x2b62d
cmpl $0x0, 0x28(%r8)
jne 0x2b6f1
movq 0x18(%rdx), %rdi
testq %rdi, %rdi
je 0x2b543
cmpl $0x0, 0x28(%rdi)
je 0x2b543
jmp 0x2b68d
movq %rdx, (%rcx)
movq %rdx, %rsi
jmp 0x2b652
movq %rdx, 0x10(%r8)
movq %rax, 0x10(%rdx)
movq %rdx, 0x20(%rax)
movq %rdi, %rdx
movq 0x10(%rdx), %rdi
testq %rdi, %rdi
je 0x2b670
cmpl $0x0, 0x28(%rdi)
jne 0x2b753
movq 0x18(%rdx), %r8
testq %r8, %r8
je 0x2b543
cmpl $0x0, 0x28(%r8)
je 0x2b543
jmp 0x2b7bb
testq %r8, %r8
je 0x2b699
cmpl $0x0, 0x28(%r8)
jne 0x2b6f1
andl $0x0, 0x28(%rdi)
movl $0x1, 0x28(%rdx)
movq 0x10(%rdi), %r8
movq %r8, 0x18(%rdx)
testq %r8, %r8
je 0x2b6b5
movq %rdx, 0x20(%r8)
movq 0x20(%rdx), %r10
movq %r10, 0x20(%rdi)
movq %rcx, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2b6db
leaq 0x10(%r10), %r9
cmpq 0x10(%r10), %rdx
leaq 0x18(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x10(%rdi)
movq %rdi, 0x20(%rdx)
movq 0x10(%rax), %rdx
movq 0x10(%rdx), %r8
movq %r9, %rsi
movl 0x28(%rax), %edi
movl %edi, 0x28(%rdx)
andl $0x0, 0x28(%rax)
testq %r8, %r8
je 0x2b705
andl $0x0, 0x28(%r8)
movq 0x18(%rdx), %rdi
movq %rdi, 0x10(%rax)
testq %rdi, %rdi
je 0x2b716
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2b739
leaq 0x10(%r8), %rdi
cmpq 0x10(%r8), %rax
leaq 0x18(%r8), %rcx
cmoveq %rdi, %rcx
movq %rsi, %rdi
movq %rdx, (%rcx)
movq %rax, 0x18(%rdx)
jmp 0x2b80a
movl 0x28(%r14), %esi
xorl %eax, %eax
movq %rdx, %r15
jmp 0x2b51f
movq 0x18(%rdx), %r8
testq %r8, %r8
je 0x2b763
cmpl $0x0, 0x28(%r8)
jne 0x2b7bb
andl $0x0, 0x28(%rdi)
movl $0x1, 0x28(%rdx)
movq 0x18(%rdi), %r8
movq %r8, 0x10(%rdx)
testq %r8, %r8
je 0x2b77f
movq %rdx, 0x20(%r8)
movq 0x20(%rdx), %r10
movq %r10, 0x20(%rdi)
movq %rcx, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2b7a5
leaq 0x10(%r10), %r9
cmpq 0x10(%r10), %rdx
leaq 0x18(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x18(%rdi)
movq %rdi, 0x20(%rdx)
movq 0x18(%rax), %rdx
movq 0x18(%rdx), %r8
movq %r9, %rsi
movl 0x28(%rax), %edi
movl %edi, 0x28(%rdx)
andl $0x0, 0x28(%rax)
testq %r8, %r8
je 0x2b7cf
andl $0x0, 0x28(%r8)
movq 0x10(%rdx), %rdi
movq %rdi, 0x18(%rax)
testq %rdi, %rdi
je 0x2b7e0
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2b803
leaq 0x10(%r8), %rdi
cmpq 0x10(%r8), %rax
leaq 0x18(%r8), %rcx
cmoveq %rdi, %rcx
movq %rsi, %rdi
movq %rdx, (%rcx)
movq %rax, 0x10(%rdx)
movq %rdx, 0x20(%rax)
testq %rdi, %rdi
je 0x2b817
andl $0x0, 0x28(%rdi)
movq 0x8(%r14), %rdi
callq 0xc0d0
movq %r14, %rdi
callq 0xc0d0
movq %r15, %r14
testq %r14, %r14
jne 0x2b3e3
movq 0x70(%rbx), %rdi
callq 0xc0d0
movq 0x78(%rbx), %rax
testq %rax, %rax
je 0x2bcba
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x10(%rcx), %rax
testq %rcx, %rcx
jne 0x2b84c
jmp 0x2bca8
movq 0x18(%r14), %rax
testq %rax, %rax
je 0x2b930
movq %rax, %rcx
movq %rcx, %r15
movq 0x10(%rcx), %rcx
testq %rcx, %rcx
jne 0x2b870
movq 0x78(%rbx), %rcx
movq 0x10(%r14), %rdi
testq %rdi, %rdi
je 0x2b959
testq %rax, %rax
je 0x2b96a
leaq 0x10(%r14), %r8
movq %rax, %rdi
movq 0x10(%rax), %rax
testq %rax, %rax
jne 0x2b89a
movq 0x18(%rdi), %rax
movq 0x20(%rdi), %rdx
movl 0x28(%rdi), %esi
testq %rax, %rax
je 0x2b8ba
movq %rdx, 0x20(%rax)
movq %rcx, %r9
testq %rdx, %rdx
je 0x2b8d2
leaq 0x10(%rdx), %r10
leaq 0x18(%rdx), %r9
cmpq %rdi, 0x10(%rdx)
cmoveq %r10, %r9
movq %rax, (%r9)
cmpq %r14, 0x20(%rdi)
cmoveq %rdi, %rdx
leaq 0x10(%rdi), %r9
movups (%r8), %xmm0
movups 0x10(%r8), %xmm1
movups %xmm1, 0x10(%r9)
movups %xmm0, (%r9)
movq 0x20(%r14), %r9
movq %rcx, %r8
testq %r9, %r9
je 0x2b90f
leaq 0x10(%r9), %r10
leaq 0x18(%r9), %r8
cmpq %r14, 0x10(%r9)
cmoveq %r10, %r8
movq %rdi, (%r8)
movq 0x10(%r14), %r8
movq %rdi, 0x20(%r8)
movq 0x18(%r14), %r8
testq %r8, %r8
je 0x2b9b6
movq %rdi, 0x20(%r8)
jmp 0x2b9b6
movq 0x20(%r14), %rdx
testq %rdx, %rdx
je 0x2b93f
cmpq %r14, 0x10(%rdx)
je 0x2b978
movq %r14, %rcx
movq 0x20(%rcx), %r15
testq %r15, %r15
je 0x2b970
cmpq 0x18(%r15), %rcx
movq %r15, %rcx
je 0x2b942
jmp 0x2b87c
movq 0x20(%r14), %rdx
movl 0x28(%r14), %esi
testq %rax, %rax
jne 0x2b993
xorl %eax, %eax
jmp 0x2b997
movq 0x20(%r14), %rdx
jmp 0x2b98c
xorl %r15d, %r15d
jmp 0x2b87c
movq 0x78(%rbx), %rcx
movq 0x10(%r14), %rdi
testq %rdi, %rdi
je 0x2bbc2
movq %rdx, %r15
movl 0x28(%r14), %esi
movq %rdi, %rax
movq %rdx, 0x20(%rax)
testq %rdx, %rdx
je 0x2b9ae
leaq 0x10(%rdx), %r8
leaq 0x18(%rdx), %rdi
cmpq %r14, 0x10(%rdx)
cmoveq %r8, %rdi
jmp 0x2b9b3
xorl %edx, %edx
movq %rcx, %rdi
movq %rax, (%rdi)
testl %esi, %esi
jne 0x2bc94
jmp 0x2b9cb
movl $0x1, 0x28(%rdx)
movq 0x20(%rax), %rdx
movq %rax, %rdi
movq %rdx, %rax
testq %rdi, %rdi
je 0x2b9e0
cmpl $0x0, 0x28(%rdi)
jne 0x2bc90
movq (%rcx), %rsi
cmpq %rsi, %rdi
je 0x2bc8b
movq 0x10(%rax), %rdx
cmpq %rdi, %rdx
je 0x2ba34
cmpl $0x1, 0x28(%rdx)
jne 0x2ba96
andl $0x0, 0x28(%rdx)
movl $0x1, 0x28(%rax)
movq 0x18(%rdx), %rdi
movq %rdi, 0x10(%rax)
testq %rdi, %rdi
je 0x2ba1b
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
testq %r8, %r8
je 0x2ba7b
cmpq 0x10(%r8), %rax
je 0x2ba83
movq %rdx, 0x18(%r8)
jmp 0x2ba8b
movq 0x18(%rax), %rdx
cmpl $0x1, 0x28(%rdx)
jne 0x2bada
andl $0x0, 0x28(%rdx)
movl $0x1, 0x28(%rax)
movq 0x10(%rdx), %rdi
movq %rdi, 0x18(%rax)
testq %rdi, %rdi
je 0x2ba5e
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
testq %r8, %r8
je 0x2bac3
cmpq 0x10(%r8), %rax
je 0x2bacb
movq %rdx, 0x18(%r8)
movq 0x18(%rax), %rdi
jmp 0x2bacf
movq %rdx, (%rcx)
movq %rdx, %rsi
jmp 0x2ba8b
movq %rdx, 0x10(%r8)
movq 0x10(%rax), %rdi
movq %rax, 0x18(%rdx)
movq %rdx, 0x20(%rax)
movq %rdi, %rdx
movq 0x10(%rdx), %r8
testq %r8, %r8
je 0x2baaa
cmpl $0x0, 0x28(%r8)
jne 0x2bb6e
movq 0x18(%rdx), %rdi
testq %rdi, %rdi
je 0x2b9c0
cmpl $0x0, 0x28(%rdi)
je 0x2b9c0
jmp 0x2bb0a
movq %rdx, (%rcx)
movq %rdx, %rsi
jmp 0x2bacf
movq %rdx, 0x10(%r8)
movq %rax, 0x10(%rdx)
movq %rdx, 0x20(%rax)
movq %rdi, %rdx
movq 0x10(%rdx), %rdi
testq %rdi, %rdi
je 0x2baed
cmpl $0x0, 0x28(%rdi)
jne 0x2bbd0
movq 0x18(%rdx), %r8
testq %r8, %r8
je 0x2b9c0
cmpl $0x0, 0x28(%r8)
je 0x2b9c0
jmp 0x2bc38
testq %r8, %r8
je 0x2bb16
cmpl $0x0, 0x28(%r8)
jne 0x2bb6e
andl $0x0, 0x28(%rdi)
movl $0x1, 0x28(%rdx)
movq 0x10(%rdi), %r8
movq %r8, 0x18(%rdx)
testq %r8, %r8
je 0x2bb32
movq %rdx, 0x20(%r8)
movq 0x20(%rdx), %r10
movq %r10, 0x20(%rdi)
movq %rcx, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2bb58
leaq 0x10(%r10), %r9
cmpq 0x10(%r10), %rdx
leaq 0x18(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x10(%rdi)
movq %rdi, 0x20(%rdx)
movq 0x10(%rax), %rdx
movq 0x10(%rdx), %r8
movq %r9, %rsi
movl 0x28(%rax), %edi
movl %edi, 0x28(%rdx)
andl $0x0, 0x28(%rax)
testq %r8, %r8
je 0x2bb82
andl $0x0, 0x28(%r8)
movq 0x18(%rdx), %rdi
movq %rdi, 0x10(%rax)
testq %rdi, %rdi
je 0x2bb93
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2bbb6
leaq 0x10(%r8), %rdi
cmpq 0x10(%r8), %rax
leaq 0x18(%r8), %rcx
cmoveq %rdi, %rcx
movq %rsi, %rdi
movq %rdx, (%rcx)
movq %rax, 0x18(%rdx)
jmp 0x2bc87
movl 0x28(%r14), %esi
xorl %eax, %eax
movq %rdx, %r15
jmp 0x2b99c
movq 0x18(%rdx), %r8
testq %r8, %r8
je 0x2bbe0
cmpl $0x0, 0x28(%r8)
jne 0x2bc38
andl $0x0, 0x28(%rdi)
movl $0x1, 0x28(%rdx)
movq 0x18(%rdi), %r8
movq %r8, 0x10(%rdx)
testq %r8, %r8
je 0x2bbfc
movq %rdx, 0x20(%r8)
movq 0x20(%rdx), %r10
movq %r10, 0x20(%rdi)
movq %rcx, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2bc22
leaq 0x10(%r10), %r9
cmpq 0x10(%r10), %rdx
leaq 0x18(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x18(%rdi)
movq %rdi, 0x20(%rdx)
movq 0x18(%rax), %rdx
movq 0x18(%rdx), %r8
movq %r9, %rsi
movl 0x28(%rax), %edi
movl %edi, 0x28(%rdx)
andl $0x0, 0x28(%rax)
testq %r8, %r8
je 0x2bc4c
andl $0x0, 0x28(%r8)
movq 0x10(%rdx), %rdi
movq %rdi, 0x18(%rax)
testq %rdi, %rdi
je 0x2bc5d
movq %rax, 0x20(%rdi)
movq 0x20(%rax), %r8
movq %r8, 0x20(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2bc80
leaq 0x10(%r8), %rdi
cmpq 0x10(%r8), %rax
leaq 0x18(%r8), %rcx
cmoveq %rdi, %rcx
movq %rsi, %rdi
movq %rdx, (%rcx)
movq %rax, 0x10(%rdx)
movq %rdx, 0x20(%rax)
testq %rdi, %rdi
je 0x2bc94
andl $0x0, 0x28(%rdi)
movq 0x8(%r14), %rdi
callq 0xc0d0
movq %r14, %rdi
callq 0xc0d0
movq %r15, %r14
testq %r14, %r14
jne 0x2b860
movq 0x78(%rbx), %rdi
callq 0xc0d0
movq 0x58(%rbx), %rax
testq %rax, %rax
je 0x2c289
xorl %ecx, %ecx
movq %rcx, %r14
movq (%rax), %rcx
leaq 0x828(%rcx), %rax
testq %rcx, %rcx
jne 0x2bcc9
jmp 0x2c277
movq %r14, %rdi
callq 0x2ca17
movq %rax, %r15
movq 0x58(%rbx), %rax
movq 0x828(%r14), %rcx
movq 0x830(%r14), %r9
testq %rcx, %rcx
je 0x2bddb
testq %r9, %r9
je 0x2bdf3
leaq 0x828(%r14), %r8
movq %r9, %rdi
movq 0x828(%r9), %r9
testq %r9, %r9
jne 0x2bd16
movq 0x830(%rdi), %rcx
movq 0x838(%rdi), %rdx
movl 0x840(%rdi), %esi
testq %rcx, %rcx
je 0x2bd45
movq %rdx, 0x838(%rcx)
movq %rax, %r9
testq %rdx, %rdx
je 0x2bd66
leaq 0x828(%rdx), %r10
leaq 0x830(%rdx), %r9
cmpq %rdi, 0x828(%rdx)
cmoveq %r10, %r9
movq %rcx, (%r9)
cmpq %r14, 0x838(%rdi)
cmoveq %rdi, %rdx
leaq 0x828(%rdi), %r9
movups (%r8), %xmm0
movups 0x10(%r8), %xmm1
movups %xmm1, 0x10(%r9)
movups %xmm0, (%r9)
movq 0x838(%r14), %r9
movq %rax, %r8
testq %r9, %r9
je 0x2bdb5
leaq 0x828(%r9), %r10
leaq 0x830(%r9), %r8
cmpq %r14, 0x828(%r9)
cmoveq %r10, %r8
movq %rdi, (%r8)
movq 0x828(%r14), %r8
movq %rdi, 0x838(%r8)
movq 0x830(%r14), %r8
testq %r8, %r8
je 0x2be30
movq %rdi, 0x838(%r8)
jmp 0x2be30
movq 0x838(%r14), %rdx
movl 0x840(%r14), %esi
testq %r9, %r9
je 0x2be0a
movq %r9, %rcx
jmp 0x2be01
movq 0x838(%r14), %rdx
movl 0x840(%r14), %esi
movq %rdx, 0x838(%rcx)
jmp 0x2be0c
xorl %ecx, %ecx
movq %rax, %rdi
testq %rdx, %rdx
je 0x2be2d
leaq 0x828(%rdx), %r8
leaq 0x830(%rdx), %rdi
cmpq %r14, 0x828(%rdx)
cmoveq %r8, %rdi
movq %rcx, (%rdi)
testl %esi, %esi
jne 0x2c258
jmp 0x2be4b
movl $0x1, 0x840(%rdx)
movq 0x838(%rcx), %rdx
movq %rcx, %rdi
movq %rdx, %rcx
testq %rdi, %rdi
je 0x2be63
cmpl $0x0, 0x840(%rdi)
jne 0x2c234
movq (%rax), %rsi
cmpq %rsi, %rdi
je 0x2c22f
movq 0x828(%rcx), %rdx
cmpq %rdi, %rdx
je 0x2bedf
cmpl $0x1, 0x840(%rdx)
jne 0x2bf71
andl $0x0, 0x840(%rdx)
movl $0x1, 0x840(%rcx)
movq 0x830(%rdx), %rdi
movq %rdi, 0x828(%rcx)
testq %rdi, %rdi
je 0x2beb3
movq %rcx, 0x838(%rdi)
movq 0x838(%rcx), %r8
movq %r8, 0x838(%rdx)
testq %r8, %r8
je 0x2bf4a
cmpq 0x828(%r8), %rcx
je 0x2bf52
movq %rdx, 0x830(%r8)
jmp 0x2bf60
movq 0x830(%rcx), %rdx
cmpl $0x1, 0x840(%rdx)
jne 0x2bfca
andl $0x0, 0x840(%rdx)
movl $0x1, 0x840(%rcx)
movq 0x828(%rdx), %rdi
movq %rdi, 0x830(%rcx)
testq %rdi, %rdi
je 0x2bf1e
movq %rcx, 0x838(%rdi)
movq 0x838(%rcx), %r8
movq %r8, 0x838(%rdx)
testq %r8, %r8
je 0x2bfaa
cmpq 0x828(%r8), %rcx
je 0x2bfb2
movq %rdx, 0x830(%r8)
movq 0x830(%rcx), %rdi
jmp 0x2bfb9
movq %rdx, (%rax)
movq %rdx, %rsi
jmp 0x2bf60
movq %rdx, 0x828(%r8)
movq 0x828(%rcx), %rdi
movq %rcx, 0x830(%rdx)
movq %rdx, 0x838(%rcx)
movq %rdi, %rdx
movq 0x828(%rdx), %r8
testq %r8, %r8
je 0x2bf8b
cmpl $0x0, 0x840(%r8)
jne 0x2c09b
movq 0x830(%rdx), %rdi
testq %rdi, %rdi
je 0x2be3a
cmpl $0x0, 0x840(%rdi)
je 0x2be3a
jmp 0x2c006
movq %rdx, (%rax)
movq %rdx, %rsi
jmp 0x2bfb9
movq %rdx, 0x828(%r8)
movq %rcx, 0x828(%rdx)
movq %rdx, 0x838(%rcx)
movq %rdi, %rdx
movq 0x828(%rdx), %rdi
testq %rdi, %rdi
je 0x2bfe3
cmpl $0x0, 0x840(%rdi)
jne 0x2c116
movq 0x830(%rdx), %r8
testq %r8, %r8
je 0x2be3a
cmpl $0x0, 0x840(%r8)
je 0x2be3a
jmp 0x2c1b2
testq %r8, %r8
je 0x2c019
cmpl $0x0, 0x840(%r8)
jne 0x2c09b
andl $0x0, 0x840(%rdi)
movl $0x1, 0x840(%rdx)
movq 0x828(%rdi), %r8
movq %r8, 0x830(%rdx)
testq %r8, %r8
je 0x2c044
movq %rdx, 0x838(%r8)
movq 0x838(%rdx), %r10
movq %r10, 0x838(%rdi)
movq %rax, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2c079
leaq 0x828(%r10), %r9
cmpq 0x828(%r10), %rdx
leaq 0x830(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x828(%rdi)
movq %rdi, 0x838(%rdx)
movq 0x828(%rcx), %rdx
movq 0x828(%rdx), %r8
movq %r9, %rsi
movl 0x840(%rcx), %edi
movl %edi, 0x840(%rdx)
andl $0x0, 0x840(%rcx)
testq %r8, %r8
je 0x2c0bb
andl $0x0, 0x840(%r8)
movq 0x830(%rdx), %rdi
movq %rdi, 0x828(%rcx)
testq %rdi, %rdi
je 0x2c0d5
movq %rcx, 0x838(%rdi)
movq 0x838(%rcx), %r8
movq %r8, 0x838(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2c107
leaq 0x828(%r8), %rdi
cmpq 0x828(%r8), %rcx
leaq 0x830(%r8), %rax
cmoveq %rdi, %rax
movq %rsi, %rdi
movq %rdx, (%rax)
movq %rcx, 0x830(%rdx)
jmp 0x2c228
movq 0x830(%rdx), %r8
testq %r8, %r8
je 0x2c130
cmpl $0x0, 0x840(%r8)
jne 0x2c1b2
andl $0x0, 0x840(%rdi)
movl $0x1, 0x840(%rdx)
movq 0x830(%rdi), %r8
movq %r8, 0x828(%rdx)
testq %r8, %r8
je 0x2c15b
movq %rdx, 0x838(%r8)
movq 0x838(%rdx), %r10
movq %r10, 0x838(%rdi)
movq %rax, %r8
movq %rdi, %r9
testq %r10, %r10
je 0x2c190
leaq 0x828(%r10), %r9
cmpq 0x828(%r10), %rdx
leaq 0x830(%r10), %r8
cmoveq %r9, %r8
movq %rsi, %r9
movq %rdi, (%r8)
movq %rdx, 0x830(%rdi)
movq %rdi, 0x838(%rdx)
movq 0x830(%rcx), %rdx
movq 0x830(%rdx), %r8
movq %r9, %rsi
movl 0x840(%rcx), %edi
movl %edi, 0x840(%rdx)
andl $0x0, 0x840(%rcx)
testq %r8, %r8
je 0x2c1d2
andl $0x0, 0x840(%r8)
movq 0x828(%rdx), %rdi
movq %rdi, 0x830(%rcx)
testq %rdi, %rdi
je 0x2c1ec
movq %rcx, 0x838(%rdi)
movq 0x838(%rcx), %r8
movq %r8, 0x838(%rdx)
movq %rdx, %rdi
testq %r8, %r8
je 0x2c21e
leaq 0x828(%r8), %rdi
cmpq 0x828(%r8), %rcx
leaq 0x830(%r8), %rax
cmoveq %rdi, %rax
movq %rsi, %rdi
movq %rdx, (%rax)
movq %rcx, 0x828(%rdx)
movq %rdx, 0x838(%rcx)
testq %rdi, %rdi
je 0x2c258
andl $0x0, 0x840(%rdi)
jmp 0x2c258
movq 0x8c0(%rax), %rcx
movq %rcx, (%rdi)
testq %rcx, %rcx
jne 0x2c250
movq %rdi, 0x8(%rdi)
movq %rax, %rdi
callq 0x2ca65
movq 0x820(%r14), %rdi
movq (%rdi), %rax
testq %rax, %rax
jne 0x2c23d
callq 0xc0d0
movq %r14, %rdi
callq 0xc0d0
movq %r15, %r14
testq %r14, %r14
jne 0x2bce0
movq 0x58(%rbx), %rdi
callq 0xc0d0
movq 0x2a8(%rbx), %rdi
callq 0x2c9ea
movq 0x2b0(%rbx), %rdi
callq 0x2c9ea
movq 0x2b8(%rbx), %rdi
callq 0x2c9ea
movq 0x2c0(%rbx), %rdi
callq 0x2c9ea
movq %rbx, %rdi
callq 0x2caa8
cmpq $0x0, 0x38(%rbx)
je 0x2c2eb
xorl %r14d, %r14d
movq 0x38(%rbx), %rdi
cmpq $0x4000, %r14           # imm = 0x4000
je 0x2c2e6
movq (%rdi,%r14,8), %rdi
callq 0x2caea
incq %r14
jmp 0x2c2cb
callq 0xc0d0
movq 0x120(%rbx), %rdi
callq 0xc0d0
movq 0x290(%rbx), %rdi
testq %rdi, %rdi
je 0x2c308
callq 0xc6d0
movq 0x1f8(%rbx), %rdi
callq 0xc0d0
movq 0x200(%rbx), %rdi
callq 0xc0d0
movq 0xb8(%rbx), %rdi
callq 0xc0d0
movq 0xc0(%rbx), %rdi
callq 0xc0d0
movq 0x158(%rbx), %rdi
callq 0xc0d0
movq 0x2d0(%rbx), %rdi
callq 0xc0d0
movq 0x2d8(%rbx), %rdi
callq 0xc0d0
movq 0x2c8(%rbx), %rdi
callq 0xc0d0
movq 0x2f8(%rbx), %rdi
callq 0xc0d0
movq 0x300(%rbx), %rdi
callq 0xc0d0
movq 0x308(%rbx), %rdi
callq 0xc0d0
movq 0x310(%rbx), %rdi
callq 0xc0d0
movq 0x318(%rbx), %rdi
callq 0xc0d0
movq 0x320(%rbx), %rdi
callq 0xc0d0
movq 0x328(%rbx), %rdi
callq 0xc0d0
movq 0x330(%rbx), %rdi
callq 0xc0d0
movq 0x338(%rbx), %rdi
callq 0xc0d0
movq 0x1b0(%rbx), %rdi
callq 0xc0d0
movq 0x1b8(%rbx), %rdi
callq 0xc0d0
movq %rbx, %rdi
popq %rbx
popq %r14
popq %r15
jmp 0xc0d0