LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_set_range
STATIC void
_chart_set_range(lxw_series_range *range, const char *sheetname,
                 lxw_row_t first_row, lxw_col_t first_col,
                 lxw_row_t last_row, lxw_col_t last_col)
{
    char formula[LXW_MAX_FORMULA_RANGE_LENGTH] = { 0 };

    /* Set the range properties. */
    range->sheetname = lxw_strdup(sheetname);
    range->first_row = first_row;
    range->first_col = first_col;
    range->last_row = last_row;
    range->last_col = last_col;

    /* Free any existing range. */
    free(range->formula);

    /* Convert the range properties to a formula like: Sheet1!$A$1:$A$5. */
    lxw_rowcol_to_formula_abs(formula, sheetname,
                              first_row, first_col, last_row, last_col);

    range->formula = lxw_strdup(formula);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movw %r9w, %ax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movw %cx, -0x16(%rbp)
movl %r8d, -0x1c(%rbp)
movw %ax, -0x1e(%rbp)
leaq -0xc0(%rbp), %rdi
xorl %esi, %esi
movl $0x9b, %edx
callq 0xc6a0
movq -0x10(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x8(%rax)
movl -0x14(%rbp), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x10(%rax)
movw -0x16(%rbp), %cx
movq -0x8(%rbp), %rax
movw %cx, 0x18(%rax)
movl -0x1c(%rbp), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x14(%rax)
movw -0x1e(%rbp), %cx
movq -0x8(%rbp), %rax
movw %cx, 0x1a(%rax)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
callq 0xc0d0
leaq -0xc0(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl -0x14(%rbp), %edx
movw -0x16(%rbp), %ax
movl -0x1c(%rbp), %r8d
movzwl %ax, %ecx
movzwl -0x1e(%rbp), %r9d
callq 0xd1a0
leaq -0xc0(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, (%rax)
addq $0xc0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_categories
void
chart_series_set_categories(lxw_chart_series *series, const char *sheetname,
                            lxw_row_t first_row, lxw_col_t first_col,
                            lxw_row_t last_row, lxw_col_t last_col)
{
    if (!sheetname) {
        LXW_WARN("chart_series_set_categories(): "
                 "sheetname must be specified");
        return;
    }

    _chart_set_range(series->categories, sheetname,
                     first_row, first_col, last_row, last_col);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %r9w, %ax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movw %cx, -0x16(%rbp)
movl %r8d, -0x1c(%rbp)
movw %ax, -0x1e(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15894
movq 0x67777(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50caf(%rip), %rsi     # 0x6653a
movb $0x0, %al
callq 0xc8f0
jmp 0x158b7
movq -0x8(%rbp), %rax
movq (%rax), %rdi
movq -0x10(%rbp), %rsi
movl -0x14(%rbp), %edx
movw -0x16(%rbp), %ax
movl -0x1c(%rbp), %r8d
movzwl %ax, %ecx
movzwl -0x1e(%rbp), %r9d
callq 0x15780
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_values
void
chart_series_set_values(lxw_chart_series *series, const char *sheetname,
                        lxw_row_t first_row, lxw_col_t first_col,
                        lxw_row_t last_row, lxw_col_t last_col)
{
    if (!sheetname) {
        LXW_WARN("chart_series_set_values(): sheetname must be specified");
        return;
    }

    _chart_set_range(series->values, sheetname,
                     first_row, first_col, last_row, last_col);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %r9w, %ax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movw %cx, -0x16(%rbp)
movl %r8d, -0x1c(%rbp)
movw %ax, -0x1e(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15904
movq 0x67707(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50c86(%rip), %rsi     # 0x66581
movb $0x0, %al
callq 0xc8f0
jmp 0x15928
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x10(%rbp), %rsi
movl -0x14(%rbp), %edx
movw -0x16(%rbp), %ax
movl -0x1c(%rbp), %r8d
movzwl %ax, %ecx
movzwl -0x1e(%rbp), %r9d
callq 0x15780
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_line
void
chart_series_set_line(lxw_chart_series *series, lxw_chart_line *line)
{
    if (!line)
        return;

    /* Free any previously allocated resource. */
    free(series->line);

    series->line = _chart_convert_line_args(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15949
jmp 0x1596a
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x60(%rax)
addq $0x10, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_convert_line_args
STATIC lxw_chart_line *
_chart_convert_line_args(lxw_chart_line *user_line)
{
    lxw_chart_line *line;

    if (!user_line)
        return NULL;

    line = calloc(1, sizeof(struct lxw_chart_line));
    RETURN_ON_MEM_ERROR(line, NULL);

    /* Copy the user supplied properties. */
    line->color = user_line->color;
    line->none = user_line->none;
    line->width = user_line->width;
    line->dash_type = user_line->dash_type;
    line->transparency = user_line->transparency;

    if (line->transparency > 100)
        line->transparency = 0;

    return line;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15990
movq $0x0, -0x8(%rbp)
jmp 0x15a3f
movl $0x1, %edi
movl $0x10, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x159d8
movq 0x67647(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50715(%rip), %rsi     # 0x660d0
leaq 0x5096a(%rip), %rdx     # 0x6632c
movl $0x176, %ecx            # imm = 0x176
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x15a3f
jmp 0x159da
movq -0x10(%rbp), %rax
movl (%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movq -0x10(%rbp), %rax
movb 0x4(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x4(%rax)
movq -0x10(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x8(%rax)
movq -0x10(%rbp), %rax
movb 0xc(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0xc(%rax)
movq -0x10(%rbp), %rax
movb 0xd(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0xd(%rax)
movq -0x18(%rbp), %rax
movzbl 0xd(%rax), %eax
cmpl $0x64, %eax
jle 0x15a37
movq -0x18(%rbp), %rax
movb $0x0, 0xd(%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_fill
void
chart_series_set_fill(lxw_chart_series *series, lxw_chart_fill *fill)
{
    if (!fill)
        return;

    /* Free any previously allocated resource. */
    free(series->fill);

    series->fill = _chart_convert_fill_args(fill);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15a69
jmp 0x15a8a
movq -0x8(%rbp), %rax
movq 0x68(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15a90
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x68(%rax)
addq $0x10, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_convert_fill_args
STATIC lxw_chart_fill *
_chart_convert_fill_args(lxw_chart_fill *user_fill)
{
    lxw_chart_fill *fill;

    if (!user_fill)
        return NULL;

    fill = calloc(1, sizeof(struct lxw_chart_fill));
    RETURN_ON_MEM_ERROR(fill, NULL);

    /* Copy the user supplied properties. */
    fill->color = user_fill->color;
    fill->none = user_fill->none;
    fill->transparency = user_fill->transparency;

    if (fill->transparency > 100)
        fill->transparency = 0;

    return fill;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15ab0
movq $0x0, -0x8(%rbp)
jmp 0x15b3f
movl $0x1, %edi
movl $0x8, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15af8
movq 0x67527(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x505f5(%rip), %rsi     # 0x660d0
leaq 0x5084a(%rip), %rdx     # 0x6632c
movl $0x191, %ecx            # imm = 0x191
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x15b3f
jmp 0x15afa
movq -0x10(%rbp), %rax
movl (%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movq -0x10(%rbp), %rax
movb 0x4(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x4(%rax)
movq -0x10(%rbp), %rax
movb 0x5(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x5(%rax)
movq -0x18(%rbp), %rax
movzbl 0x5(%rax), %eax
cmpl $0x64, %eax
jle 0x15b37
movq -0x18(%rbp), %rax
movb $0x0, 0x5(%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_pattern
void
chart_series_set_pattern(lxw_chart_series *series, lxw_chart_pattern *pattern)
{
    if (!pattern)
        return;

    /* Free any previously allocated resource. */
    free(series->pattern);

    series->pattern = _chart_convert_pattern_args(pattern);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15b89
jmp 0x15baa
movq -0x8(%rbp), %rax
movq 0x70(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15bb0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x70(%rax)
addq $0x10, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_convert_pattern_args
STATIC lxw_chart_pattern *
_chart_convert_pattern_args(lxw_chart_pattern *user_pattern)
{
    lxw_chart_pattern *pattern;

    if (!user_pattern)
        return NULL;

    if (!user_pattern->type) {
        LXW_WARN("chart_xxx_set_pattern: 'type' must be specified");
        return NULL;
    }

    if (!user_pattern->fg_color) {
        LXW_WARN("chart_xxx_set_pattern: 'fg_color' must be specified");
        return NULL;
    }

    pattern = calloc(1, sizeof(struct lxw_chart_pattern));
    RETURN_ON_MEM_ERROR(pattern, NULL);

    /* Copy the user supplied properties. */
    pattern->fg_color = user_pattern->fg_color;
    pattern->bg_color = user_pattern->bg_color;
    pattern->type = user_pattern->type;

    if (!pattern->bg_color) {
        /* Default background color in Excel is white, when unspecified. */
        pattern->bg_color = LXW_COLOR_WHITE;
    }

    return pattern;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15bd0
movq $0x0, -0x8(%rbp)
jmp 0x15cbc
movq -0x10(%rbp), %rax
cmpb $0x0, 0x8(%rax)
jne 0x15bff
movq 0x67417(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x51d3c(%rip), %rsi     # 0x67927
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x15cbc
movq -0x10(%rbp), %rax
cmpl $0x0, (%rax)
jne 0x15c2d
movq 0x673e9(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x51d4a(%rip), %rsi     # 0x67963
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x15cbc
movl $0x1, %edi
movl $0xc, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15c75
movq 0x673aa(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50478(%rip), %rsi     # 0x660d0
leaq 0x506cd(%rip), %rdx     # 0x6632c
movl $0x1b4, %ecx            # imm = 0x1B4
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x15cbc
jmp 0x15c77
movq -0x10(%rbp), %rax
movl (%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movq -0x10(%rbp), %rax
movl 0x4(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x4(%rax)
movq -0x10(%rbp), %rax
movb 0x8(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x8(%rax)
movq -0x18(%rbp), %rax
cmpl $0x0, 0x4(%rax)
jne 0x15cb4
movq -0x18(%rbp), %rax
movl $0xffffff, 0x4(%rax)    # imm = 0xFFFFFF
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_marker_type
void
chart_series_set_marker_type(lxw_chart_series *series, uint8_t type)
{
    if (!series->marker) {
        lxw_chart_marker *marker = calloc(1, sizeof(struct lxw_chart_marker));
        RETURN_VOID_ON_MEM_ERROR(marker);
        series->marker = marker;
    }

    series->marker->type = type;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x78(%rax)
jne 0x15d3b
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15d2d
movq 0x672ea(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x503b8(%rip), %rsi     # 0x660d0
leaq 0x5060d(%rip), %rdx     # 0x6632c
movl $0x151c, %ecx           # imm = 0x151C
movb $0x0, %al
callq 0xc8f0
jmp 0x15d48
jmp 0x15d2f
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x78(%rax)
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movb %cl, (%rax)
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_marker_size
void
chart_series_set_marker_size(lxw_chart_series *series, uint8_t size)
{
    if (!series->marker) {
        lxw_chart_marker *marker = calloc(1, sizeof(struct lxw_chart_marker));
        RETURN_VOID_ON_MEM_ERROR(marker);
        series->marker = marker;
    }

    series->marker->size = size;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x78(%rax)
jne 0x15dbb
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15dad
movq 0x6726a(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50338(%rip), %rsi     # 0x660d0
leaq 0x5058d(%rip), %rdx     # 0x6632c
movl $0x152b, %ecx           # imm = 0x152B
movb $0x0, %al
callq 0xc8f0
jmp 0x15dc9
jmp 0x15daf
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x78(%rax)
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movb %cl, 0x1(%rax)
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_marker_line
void
chart_series_set_marker_line(lxw_chart_series *series, lxw_chart_line *line)
{
    if (!line)
        return;

    if (!series->marker) {
        lxw_chart_marker *marker = calloc(1, sizeof(struct lxw_chart_marker));
        RETURN_VOID_ON_MEM_ERROR(marker);
        series->marker = marker;
    }

    /* Free any previously allocated resource. */
    free(series->marker->line);

    series->marker->line = _chart_convert_line_args(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15dec
jmp 0x15e6e
movq -0x8(%rbp), %rax
cmpq $0x0, 0x78(%rax)
jne 0x15e45
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15e37
movq 0x671e0(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x502ae(%rip), %rsi     # 0x660d0
leaq 0x50503(%rip), %rdx     # 0x6632c
movl $0x153d, %ecx           # imm = 0x153D
movb $0x0, %al
callq 0xc8f0
jmp 0x15e6e
jmp 0x15e39
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x78(%rax)
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq 0x8(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq %rcx, 0x8(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_marker_fill
void
chart_series_set_marker_fill(lxw_chart_series *series, lxw_chart_fill *fill)
{
    if (!fill)
        return;

    if (!series->marker) {
        lxw_chart_marker *marker = calloc(1, sizeof(struct lxw_chart_marker));
        RETURN_VOID_ON_MEM_ERROR(marker);
        series->marker = marker;
    }

    /* Free any previously allocated resource. */
    free(series->marker->fill);

    series->marker->fill = _chart_convert_fill_args(fill);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15e9c
jmp 0x15f1e
movq -0x8(%rbp), %rax
cmpq $0x0, 0x78(%rax)
jne 0x15ef5
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15ee7
movq 0x67130(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x501fe(%rip), %rsi     # 0x660d0
leaq 0x50453(%rip), %rdx     # 0x6632c
movl $0x1552, %ecx           # imm = 0x1552
movb $0x0, %al
callq 0xc8f0
jmp 0x15f1e
jmp 0x15ee9
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x78(%rax)
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq 0x10(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15a90
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq %rcx, 0x10(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_marker_pattern
void
chart_series_set_marker_pattern(lxw_chart_series *series,
                                lxw_chart_pattern *pattern)
{
    if (!pattern)
        return;

    if (!series->marker) {
        lxw_chart_marker *marker = calloc(1, sizeof(struct lxw_chart_marker));
        RETURN_VOID_ON_MEM_ERROR(marker);
        series->marker = marker;
    }

    /* Free any previously allocated resource. */
    free(series->marker->pattern);

    series->marker->pattern = _chart_convert_pattern_args(pattern);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x15f4c
jmp 0x15fce
movq -0x8(%rbp), %rax
cmpq $0x0, 0x78(%rax)
jne 0x15fa5
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x15f97
movq 0x67080(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x5014e(%rip), %rsi     # 0x660d0
leaq 0x503a3(%rip), %rdx     # 0x6632c
movl $0x1568, %ecx           # imm = 0x1568
movb $0x0, %al
callq 0xc8f0
jmp 0x15fce
jmp 0x15f99
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x78(%rax)
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq 0x18(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15bb0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq 0x78(%rax), %rax
movq %rcx, 0x18(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_points
lxw_error
chart_series_set_points(lxw_chart_series *series, lxw_chart_point *points[])
{
    uint16_t i = 0;
    uint16_t point_count = 0;

    if (points == NULL)
        return LXW_ERROR_NULL_PARAMETER_IGNORED;

    while (points[point_count])
        point_count++;

    if (point_count == 0)
        return LXW_ERROR_NULL_PARAMETER_IGNORED;

    /* Free any existing resource. */
    _chart_free_points(series);

    series->points = calloc(point_count, sizeof(lxw_chart_point));
    RETURN_ON_MEM_ERROR(series->points, LXW_ERROR_MEMORY_MALLOC_FAILED);

    for (i = 0; i < point_count; i++) {
        lxw_chart_point *src_point = points[i];
        lxw_chart_point *dst_point = &series->points[i];

        dst_point->line = _chart_convert_line_args(src_point->line);
        dst_point->fill = _chart_convert_fill_args(src_point->fill);
        dst_point->pattern = _chart_convert_pattern_args(src_point->pattern);
    }

    series->point_count = point_count;

    return LXW_NO_ERROR;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movw $0x0, -0x1a(%rbp)
movw $0x0, -0x1c(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x1600f
movl $0xc, -0x4(%rbp)
jmp 0x16157
jmp 0x16011
movq -0x18(%rbp), %rax
movzwl -0x1c(%rbp), %ecx
cmpq $0x0, (%rax,%rcx,8)
je 0x1602e
movw -0x1c(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x1c(%rbp)
jmp 0x16011
movzwl -0x1c(%rbp), %eax
cmpl $0x0, %eax
jne 0x16043
movl $0xc, -0x4(%rbp)
jmp 0x16157
movq -0x10(%rbp), %rdi
callq 0x16160
movzwl -0x1c(%rbp), %eax
movl %eax, %edi
movl $0x18, %esi
callq 0xc870
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x80(%rax)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x80(%rax)
jne 0x160a8
movq 0x66f79(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x50047(%rip), %rsi     # 0x660d0
leaq 0x5029c(%rip), %rdx     # 0x6632c
movl $0x1588, %ecx           # imm = 0x1588
movb $0x0, %al
callq 0xc8f0
movl $0x1, -0x4(%rbp)
jmp 0x16157
jmp 0x160aa
movw $0x0, -0x1a(%rbp)
movzwl -0x1a(%rbp), %eax
movzwl -0x1c(%rbp), %ecx
cmpl %ecx, %eax
jge 0x16141
movq -0x18(%rbp), %rax
movzwl -0x1a(%rbp), %ecx
movq (%rax,%rcx,8), %rax
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rax
movq 0x80(%rax), %rax
movzwl -0x1a(%rbp), %ecx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rax
movq (%rax), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x15a90
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x28(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x15bb0
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x10(%rax)
movw -0x1a(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x1a(%rbp)
jmp 0x160b0
movw -0x1c(%rbp), %cx
movq -0x10(%rbp), %rax
movw %cx, 0x90(%rax)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_free_points
STATIC void
_chart_free_points(lxw_chart_series *series)
{
    uint16_t index;

    for (index = 0; index < series->point_count; index++) {
        lxw_chart_point *point = &series->points[index];

        free(point->line);
        free(point->fill);
        free(point->pattern);
    }

    series->point_count = 0;
    free(series->points);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movw $0x0, -0xa(%rbp)
movzwl -0xa(%rbp), %eax
movq -0x8(%rbp), %rcx
movzwl 0x90(%rcx), %ecx
cmpl %ecx, %eax
jge 0x161d3
movq -0x8(%rbp), %rax
movq 0x80(%rax), %rax
movzwl -0xa(%rbp), %ecx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq (%rax), %rdi
callq 0xc0d0
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0xc0d0
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xc0d0
movw -0xa(%rbp), %ax
addw $0x1, %ax
movw %ax, -0xa(%rbp)
jmp 0x16172
movq -0x8(%rbp), %rax
movw $0x0, 0x90(%rax)
movq -0x8(%rbp), %rax
movq 0x80(%rax), %rdi
callq 0xc0d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_options
void
chart_series_set_labels_options(lxw_chart_series *series, uint8_t show_name,
                                uint8_t show_category, uint8_t show_value)
{
    series->has_labels = LXW_TRUE;
    series->show_labels_name = show_name;
    series->show_labels_category = show_category;
    series->show_labels_value = show_value;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movb %cl, %al
movb %dl, %cl
movb %sil, %dl
movq %rdi, -0x8(%rbp)
movb %dl, -0x9(%rbp)
movb %cl, -0xa(%rbp)
movb %al, -0xb(%rbp)
movq -0x8(%rbp), %rax
movb $0x1, 0x96(%rax)
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0x99(%rax)
movb -0xa(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0x98(%rax)
movb -0xb(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0x97(%rax)
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_free_data_labels
STATIC void
_chart_free_data_labels(lxw_chart_series *series)
{
    uint16_t index;

    for (index = 0; index < series->data_label_count; index++) {
        lxw_chart_custom_label *data_label = &series->data_labels[index];

        free(data_label->value);
        _chart_free_range(data_label->range);
        _chart_free_font(data_label->font);
        free(data_label->line);
        free(data_label->fill);
        free(data_label->pattern);
    }

    series->data_label_count = 0;
    free(series->data_labels);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movw $0x0, -0xa(%rbp)
movzwl -0xa(%rbp), %eax
movq -0x8(%rbp), %rcx
movzwl 0x92(%rcx), %ecx
cmpl %ecx, %eax
jge 0x165dd
movq -0x8(%rbp), %rax
movq 0x88(%rax), %rax
movzwl -0xa(%rbp), %ecx
imulq $0x60, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq (%rax), %rdi
callq 0xc0d0
movq -0x18(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0x143e0
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x143b0
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0xc0d0
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0xc0d0
movq -0x18(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0xc0d0
movw -0xa(%rbp), %ax
addw $0x1, %ax
movw %ax, -0xa(%rbp)
jmp 0x16552
movq -0x8(%rbp), %rax
movw $0x0, 0x92(%rax)
movq -0x8(%rbp), %rax
movq 0x88(%rax), %rdi
callq 0xc0d0
addq $0x20, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_convert_font_args
STATIC lxw_chart_font *
_chart_convert_font_args(lxw_chart_font *user_font)
{
    lxw_chart_font *font;

    if (!user_font)
        return NULL;

    font = calloc(1, sizeof(struct lxw_chart_font));
    RETURN_ON_MEM_ERROR(font, NULL);

    /* Copy the user supplied properties. */
    font->name = lxw_strdup(user_font->name);
    font->size = user_font->size;
    font->bold = user_font->bold;
    font->italic = user_font->italic;
    font->underline = user_font->underline;
    font->rotation = user_font->rotation;
    font->color = user_font->color;
    font->pitch_family = user_font->pitch_family;
    font->charset = user_font->charset;
    font->baseline = user_font->baseline;

    /* Convert font size units. */
    if (font->size > 0.0)
        font->size = font->size * 100.0;

    /* Convert rotation into 60,000ths of a degree. */
    if (font->rotation)
        font->rotation = font->rotation * 60000;

    return font;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16620
movq $0x0, -0x8(%rbp)
jmp 0x16755
movl $0x1, %edi
movl $0x20, %esi
callq 0xc870
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x1666b
movq 0x669b7(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fa85(%rip), %rsi     # 0x660d0
leaq 0x4fcda(%rip), %rdx     # 0x6632c
movl $0x151, %ecx            # imm = 0x151
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x16755
jmp 0x1666d
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x10(%rbp), %rax
movsd 0x8(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x8(%rax)
movq -0x10(%rbp), %rax
movb 0x10(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x10(%rax)
movq -0x10(%rbp), %rax
movb 0x11(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x11(%rax)
movq -0x10(%rbp), %rax
movb 0x12(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x12(%rax)
movq -0x10(%rbp), %rax
movl 0x14(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x14(%rax)
movq -0x10(%rbp), %rax
movl 0x18(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x18(%rax)
movq -0x10(%rbp), %rax
movb 0x1c(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x1c(%rax)
movq -0x10(%rbp), %rax
movb 0x1d(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x1d(%rax)
movq -0x10(%rbp), %rax
movb 0x1e(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x1e(%rax)
movq -0x18(%rbp), %rax
movsd 0x8(%rax), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x16731
movq -0x18(%rbp), %rax
movsd 0x4fbdd(%rip), %xmm0    # 0x66300
mulsd 0x8(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x8(%rax)
movq -0x18(%rbp), %rax
cmpl $0x0, 0x14(%rax)
je 0x1674d
movq -0x18(%rbp), %rax
imull $0xea60, 0x14(%rax), %ecx # imm = 0xEA60
movq -0x18(%rbp), %rax
movl %ecx, 0x14(%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_position
void
chart_series_set_labels_position(lxw_chart_series *series, uint8_t position)
{
    series->has_labels = LXW_TRUE;
    series->show_labels_value = LXW_TRUE;

    if (position != series->default_label_position)
        series->label_position = position;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movq -0x8(%rbp), %rax
movb $0x1, 0x96(%rax)
movq -0x8(%rbp), %rax
movb $0x1, 0x97(%rax)
movzbl -0x9(%rbp), %eax
movq -0x8(%rbp), %rcx
movzbl 0x9f(%rcx), %ecx
cmpl %ecx, %eax
je 0x167d4
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0x9d(%rax)
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_num_format
void
chart_series_set_labels_num_format(lxw_chart_series *series,
                                   const char *num_format)
{
    if (!num_format)
        return;

    /* Free any previously allocated resource. */
    free(series->label_num_format);

    series->label_num_format = lxw_strdup(num_format);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16859
jmp 0x16880
movq -0x8(%rbp), %rax
movq 0xa0(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xa0(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_font
void
chart_series_set_labels_font(lxw_chart_series *series, lxw_chart_font *font)
{
    if (!font)
        return;

    /* Free any previously allocated resource. */
    _chart_free_font(series->label_font);

    series->label_font = _chart_convert_font_args(font);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x168a9
jmp 0x168d0
movq -0x8(%rbp), %rax
movq 0xa8(%rax), %rdi
callq 0x143b0
movq -0x10(%rbp), %rdi
callq 0x16600
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xa8(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_line
void
chart_series_set_labels_line(lxw_chart_series *series, lxw_chart_line *line)
{
    if (!line)
        return;

    /* Free any previously allocated resource. */
    free(series->label_line);

    series->label_line = _chart_convert_line_args(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x168f9
jmp 0x16920
movq -0x8(%rbp), %rax
movq 0xb0(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xb0(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_fill
void
chart_series_set_labels_fill(lxw_chart_series *series, lxw_chart_fill *fill)
{
    if (!fill)
        return;

    /* Free any previously allocated resource. */
    free(series->label_fill);

    series->label_fill = _chart_convert_fill_args(fill);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16949
jmp 0x16970
movq -0x8(%rbp), %rax
movq 0xb8(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15a90
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xb8(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_labels_pattern
void
chart_series_set_labels_pattern(lxw_chart_series *series,
                                lxw_chart_pattern *pattern)
{
    if (!pattern)
        return;

    /* Free any previously allocated resource. */
    free(series->label_pattern);

    series->label_pattern = _chart_convert_pattern_args(pattern);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16999
jmp 0x169c0
movq -0x8(%rbp), %rax
movq 0xc0(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15bb0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xc0(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline
void
chart_series_set_trendline(lxw_chart_series *series, uint8_t type,
                           uint8_t value)
{
    if (type == LXW_CHART_TRENDLINE_TYPE_POLY
        || type == LXW_CHART_TRENDLINE_TYPE_AVERAGE) {

        if (value < 2) {
            LXW_WARN("chart_series_set_trendline(): order/period value must "
                     "be >= 2 for Polynomial and Moving Average types");
            return;
        }

        series->trendline_value_type = type;
    }

    series->has_trendline = LXW_TRUE;
    series->trendline_type = type;
    series->trendline_value = value;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movb %dl, %al
movb %sil, %cl
movq %rdi, -0x8(%rbp)
movb %cl, -0x9(%rbp)
movb %al, -0xa(%rbp)
movzbl -0x9(%rbp), %eax
cmpl $0x2, %eax
je 0x169f9
movzbl -0x9(%rbp), %eax
cmpl $0x5, %eax
jne 0x16a29
movzbl -0xa(%rbp), %eax
cmpl $0x2, %eax
jge 0x16a1c
movq 0x665ef(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fbb1(%rip), %rsi     # 0x665c4
movb $0x0, %al
callq 0xc8f0
jmp 0x16a4e
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0xf0(%rax)
movq -0x8(%rbp), %rax
movb $0x1, 0xd8(%rax)
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0xdd(%rax)
movb -0xa(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, 0xde(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_forecast
void
chart_series_set_trendline_forecast(lxw_chart_series *series, double forward,
                                    double backward)
{
    if (!series->has_trendline) {
        LXW_WARN("chart_series_set_trendline_forecast(): trendline type "
                 "must be set first using chart_series_set_trendline()");
        return;
    }

    if (series->trendline_type == LXW_CHART_TRENDLINE_TYPE_AVERAGE) {
        LXW_WARN("chart_series_set_trendline(): forecast isn't available "
                 "in Excel for a Moving Average trendline");
        return;
    }

    series->has_trendline_forecast = LXW_TRUE;
    series->trendline_forward = forward;
    series->trendline_backward = backward;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movsd %xmm0, -0x10(%rbp)
movsd %xmm1, -0x18(%rbp)
movq -0x8(%rbp), %rax
cmpb $0x0, 0xd8(%rax)
jne 0x16a9d
movq 0x6656e(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fba2(%rip), %rsi     # 0x66636
movb $0x0, %al
callq 0xc8f0
jmp 0x16af4
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x5, %eax
jne 0x16ac7
movq 0x66544(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fbef(%rip), %rsi     # 0x666ad
movb $0x0, %al
callq 0xc8f0
jmp 0x16af4
movq -0x8(%rbp), %rax
movb $0x1, 0xd9(%rax)
movsd -0x10(%rbp), %xmm0
movq -0x8(%rbp), %rax
movsd %xmm0, 0xe0(%rax)
movsd -0x18(%rbp), %xmm0
movq -0x8(%rbp), %rax
movsd %xmm0, 0xe8(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_equation
void
chart_series_set_trendline_equation(lxw_chart_series *series)
{
    if (!series->has_trendline) {
        LXW_WARN("chart_series_set_trendline_equation(): trendline type "
                 "must be set first using chart_series_set_trendline()");
        return;
    }

    if (series->trendline_type == LXW_CHART_TRENDLINE_TYPE_AVERAGE) {
        LXW_WARN("chart_series_set_trendline_equation(): equation isn't "
                 "available in Excel for a Moving Average trendline");
        return;
    }

    series->has_trendline_equation = LXW_TRUE;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
cmpb $0x0, 0xd8(%rax)
jne 0x16b33
movq 0x664d8(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fbee(%rip), %rsi     # 0x66718
movb $0x0, %al
callq 0xc8f0
jmp 0x16b68
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x5, %eax
jne 0x16b5d
movq 0x664ae(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fc3b(%rip), %rsi     # 0x6678f
movb $0x0, %al
callq 0xc8f0
jmp 0x16b68
movq -0x8(%rbp), %rax
movb $0x1, 0xda(%rax)
addq $0x10, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_r_squared
void
chart_series_set_trendline_r_squared(lxw_chart_series *series)
{
    if (!series->has_trendline) {
        LXW_WARN("chart_series_set_trendline_r_squared(): trendline type "
                 "must be set first using chart_series_set_trendline()");
        return;
    }

    if (series->trendline_type == LXW_CHART_TRENDLINE_TYPE_AVERAGE) {
        LXW_WARN("chart_series_set_trendline_r_squared(): R squared isn't "
                 "available in Excel for a Moving Average trendline");
        return;
    }

    series->has_trendline_r_squared = LXW_TRUE;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
cmpb $0x0, 0xd8(%rax)
jne 0x16ba3
movq 0x66468(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fc69(%rip), %rsi     # 0x66803
movb $0x0, %al
callq 0xc8f0
jmp 0x16bd8
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x5, %eax
jne 0x16bcd
movq 0x6643e(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fcb7(%rip), %rsi     # 0x6687b
movb $0x0, %al
callq 0xc8f0
jmp 0x16bd8
movq -0x8(%rbp), %rax
movb $0x1, 0xdb(%rax)
addq $0x10, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_intercept
void
chart_series_set_trendline_intercept(lxw_chart_series *series,
                                     double intercept)
{
    if (!series->has_trendline) {
        LXW_WARN("chart_series_set_trendline_intercept(): trendline type "
                 "must be set first using chart_series_set_trendline()");
        return;
    }

    if (series->trendline_type != LXW_CHART_TRENDLINE_TYPE_EXP
        && series->trendline_type != LXW_CHART_TRENDLINE_TYPE_LINEAR
        && series->trendline_type != LXW_CHART_TRENDLINE_TYPE_POLY) {

        LXW_WARN("chart_series_set_trendline_intercept(): intercept is only "
                 "available in Excel for Exponential, Linear and Polynomial "
                 "trendline types");
        return;
    }

    series->has_trendline_intercept = LXW_TRUE;
    series->trendline_intercept = intercept;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movsd %xmm0, -0x10(%rbp)
movq -0x8(%rbp), %rax
cmpb $0x0, 0xd8(%rax)
jne 0x16c18
movq 0x663f3(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fce2(%rip), %rsi     # 0x668f1
movb $0x0, %al
callq 0xc8f0
jmp 0x16c7e
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x4, %eax
je 0x16c62
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x0, %eax
je 0x16c62
movq -0x8(%rbp), %rax
movzbl 0xdd(%rax), %eax
cmpl $0x2, %eax
je 0x16c62
movq 0x663a9(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fd10(%rip), %rsi     # 0x66969
movb $0x0, %al
callq 0xc8f0
jmp 0x16c7e
movq -0x8(%rbp), %rax
movb $0x1, 0xdc(%rax)
movsd -0x10(%rbp), %xmm0
movq -0x8(%rbp), %rax
movsd %xmm0, 0x108(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_name
void
chart_series_set_trendline_name(lxw_chart_series *series, const char *name)
{
    if (!name)
        return;

    /* Free any previously allocated resource. */
    free(series->trendline_name);

    series->trendline_name = lxw_strdup(name);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16ca9
jmp 0x16cd0
movq -0x8(%rbp), %rax
movq 0xf8(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0xf8(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_trendline_line
void
chart_series_set_trendline_line(lxw_chart_series *series,
                                lxw_chart_line *line)
{
    if (!line)
        return;

    /* Free any previously allocated resource. */
    free(series->trendline_line);

    series->trendline_line = _chart_convert_line_args(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16cf9
jmp 0x16d20
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x100(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_get_error_bars
lxw_series_error_bars *
chart_series_get_error_bars(lxw_chart_series *series,
                            lxw_chart_error_bar_axis axis_type)
{
    if (!series)
        return NULL;

    if (axis_type == LXW_CHART_ERROR_BAR_AXIS_X)
        return series->x_error_bars;
    else if (axis_type == LXW_CHART_ERROR_BAR_AXIS_Y)
        return series->y_error_bars;
    else
        return NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x10(%rbp)
movl %esi, -0x14(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16d4c
movq $0x0, -0x8(%rbp)
jmp 0x16d82
cmpl $0x0, -0x14(%rbp)
jne 0x16d63
movq -0x10(%rbp), %rax
movq 0xc8(%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x16d82
cmpl $0x1, -0x14(%rbp)
jne 0x16d7a
movq -0x10(%rbp), %rax
movq 0xd0(%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x16d82
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_error_bars
void
chart_series_set_error_bars(lxw_series_error_bars *error_bars,
                            uint8_t type, double value)
{
    if (_chart_check_error_bars(error_bars, ""))
        return;

    error_bars->type = type;
    error_bars->value = value;
    error_bars->has_value = LXW_TRUE;
    error_bars->is_set = LXW_TRUE;

    if (type == LXW_CHART_ERROR_BAR_TYPE_STD_ERROR)
        error_bars->has_value = LXW_FALSE;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movsd %xmm0, -0x18(%rbp)
movq -0x8(%rbp), %rdi
leaq 0x58501(%rip), %rsi     # 0x6f2b3
callq 0xc960
cmpl $0x0, %eax
je 0x16dbe
jmp 0x16df6
movb -0x9(%rbp), %cl
movq -0x8(%rbp), %rax
movb %cl, (%rax)
movsd -0x18(%rbp), %xmm0
movq -0x8(%rbp), %rax
movsd %xmm0, 0x8(%rax)
movq -0x8(%rbp), %rax
movb $0x1, 0x3(%rax)
movq -0x8(%rbp), %rax
movb $0x1, 0x4(%rax)
movzbl -0x9(%rbp), %eax
cmpl $0x0, %eax
jne 0x16df6
movq -0x8(%rbp), %rax
movb $0x0, 0x3(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_series_set_error_bars_line
void
chart_series_set_error_bars_line(lxw_series_error_bars *error_bars,
                                 lxw_chart_line *line)
{
    if (_chart_check_error_bars(error_bars, "_line"))
        return;

    if (!line)
        return;

    /* Free any previously allocated resource. */
    free(error_bars->line);

    error_bars->line = _chart_convert_line_args(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
leaq 0x4fb71(%rip), %rsi     # 0x66a0c
callq 0xc960
cmpl $0x0, %eax
je 0x16ea7
jmp 0x16ed1
cmpq $0x0, -0x10(%rbp)
jne 0x16eb0
jmp 0x16ed1
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xc0d0
movq -0x10(%rbp), %rdi
callq 0x15970
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x10(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_axis_get
lxw_chart_axis *
chart_axis_get(lxw_chart *self, lxw_chart_axis_type axis_type)
{
    if (!self)
        return NULL;

    if (axis_type == LXW_CHART_AXIS_TYPE_X)
        return self->x_axis;
    else if (axis_type == LXW_CHART_AXIS_TYPE_Y)
        return self->y_axis;
    else
        return NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x10(%rbp)
movl %esi, -0x14(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16efc
movq $0x0, -0x8(%rbp)
jmp 0x16f2c
cmpl $0x0, -0x14(%rbp)
jne 0x16f10
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x16f2c
cmpl $0x1, -0x14(%rbp)
jne 0x16f24
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x16f2c
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_axis_set_name
void
chart_axis_set_name(lxw_chart_axis *axis, const char *name)
{
    if (!name)
        return;

    if (name[0] == '=')
        axis->title.range->formula = lxw_strdup(name + 1);
    else
        axis->title.name = lxw_strdup(name);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16f59
jmp 0x16f95
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x3d, %eax
jne 0x16f82
movq -0x10(%rbp), %rdi
addq $0x1, %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rax
movq %rcx, (%rax)
jmp 0x16f95
movq -0x10(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, (%rax)
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_axis_set_name_range
void
chart_axis_set_name_range(lxw_chart_axis *axis, const char *sheetname,
                          lxw_row_t row, lxw_col_t col)
{
    if (!sheetname) {
        LXW_WARN("chart_axis_set_name_range(): sheetname must be specified");
        return;
    }

    /* Start and end row, col are the same for single cell range. */
    _chart_set_range(axis->title.range, sheetname, row, col, row, col);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %cx, %ax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movw %ax, -0x16(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x16fdb
movq 0x66030(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x4fa40(%rip), %rsi     # 0x66a12
movb $0x0, %al
callq 0xc8f0
jmp 0x16fff
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rdi
movq -0x10(%rbp), %rsi
movl -0x14(%rbp), %edx
movw -0x16(%rbp), %ax
movl -0x14(%rbp), %r8d
movzwl %ax, %ecx
movzwl -0x16(%rbp), %r9d
callq 0x15780
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_axis_set_name_font
void
chart_axis_set_name_font(lxw_chart_axis *axis, lxw_chart_font *font)
{
    if (!font)
        return;

    /* Free any previously allocated resource. */
    _chart_free_font(axis->title.font);

    axis->title.font = _chart_convert_font_args(font);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x17029
jmp 0x1704a
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x143b0
movq -0x10(%rbp), %rdi
callq 0x16600
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x10(%rax)
addq $0x10, %rsp
popq %rbp
retq