LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_rowcol_to_cell_abs
void
lxw_rowcol_to_cell_abs(char *cell_name, lxw_row_t row, lxw_col_t col,
                       uint8_t abs_row, uint8_t abs_col)
{
    size_t pos;

    /* Add the column to the cell. */
    lxw_col_to_name(cell_name, col, abs_col);

    /* Get the end of the cell. */
    pos = strlen(cell_name);

    if (abs_row)
        cell_name[pos++] = '$';

    /* Add the row to the cell. */
    lxw_snprintf(&cell_name[pos], LXW_MAX_ROW_NAME_LENGTH, "%d", ++row);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %r8b, %al
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movw %dx, -0xe(%rbp)
movb %cl, -0xf(%rbp)
movb %al, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movw -0xe(%rbp), %ax
movzwl %ax, %esi
movzbl -0x10(%rbp), %edx
callq 0xc5e0
movq -0x8(%rbp), %rdi
callq 0xc4e0
movq %rax, -0x18(%rbp)
cmpb $0x0, -0xf(%rbp)
je 0x3701a
movq -0x8(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x18(%rbp)
movb $0x24, (%rax,%rcx)
movq -0x8(%rbp), %rdi
addq -0x18(%rbp), %rdi
movl -0xc(%rbp), %ecx
addl $0x1, %ecx
movl %ecx, -0xc(%rbp)
movl $0x9, %esi
leaq 0x34245(%rip), %rdx     # 0x6b27c
movb $0x0, %al
callq 0xc5d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_rowcol_to_range
void
lxw_rowcol_to_range(char *range,
                    lxw_row_t first_row, lxw_col_t first_col,
                    lxw_row_t last_row, lxw_col_t last_col)
{
    size_t pos;

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell(range, first_row, first_col);

    /* If the start and end cells are the same just return a single cell. */
    if (first_row == last_row && first_col == last_col)
        return;

    /* Get the end of the cell. */
    pos = strlen(range);

    /* Add the range separator. */
    range[pos++] = ':';

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell(&range[pos], last_row, last_col);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %r8w, %ax
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movw %dx, -0xe(%rbp)
movl %ecx, -0x14(%rbp)
movw %ax, -0x16(%rbp)
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
movzwl -0xe(%rbp), %edx
callq 0xca90
movl -0xc(%rbp), %eax
cmpl -0x14(%rbp), %eax
jne 0x37094
movzwl -0xe(%rbp), %eax
movzwl -0x16(%rbp), %ecx
cmpl %ecx, %eax
jne 0x37094
jmp 0x370cc
movq -0x8(%rbp), %rdi
callq 0xc4e0
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq -0x20(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x20(%rbp)
movb $0x3a, (%rax,%rcx)
movq -0x8(%rbp), %rdi
addq -0x20(%rbp), %rdi
movl -0x14(%rbp), %esi
movzwl -0x16(%rbp), %edx
callq 0xca90
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_rowcol_to_range_abs
void
lxw_rowcol_to_range_abs(char *range,
                        lxw_row_t first_row, lxw_col_t first_col,
                        lxw_row_t last_row, lxw_col_t last_col)
{
    size_t pos;

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell_abs(range, first_row, first_col, 1, 1);

    /* If the start and end cells are the same just return a single cell. */
    if (first_row == last_row && first_col == last_col)
        return;

    /* Get the end of the cell. */
    pos = strlen(range);

    /* Add the range separator. */
    range[pos++] = ':';

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell_abs(&range[pos], last_row, last_col, 1, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %r8w, %ax
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movw %dx, -0xe(%rbp)
movl %ecx, -0x14(%rbp)
movw %ax, -0x16(%rbp)
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
movl $0x1, %r8d
movzwl -0xe(%rbp), %edx
movl %r8d, %ecx
callq 0xc640
movl -0xc(%rbp), %eax
cmpl -0x14(%rbp), %eax
jne 0x3712d
movzwl -0xe(%rbp), %eax
movzwl -0x16(%rbp), %ecx
cmpl %ecx, %eax
jne 0x3712d
jmp 0x3716e
movq -0x8(%rbp), %rdi
callq 0xc4e0
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq -0x20(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x20(%rbp)
movb $0x3a, (%rax,%rcx)
movq -0x8(%rbp), %rdi
addq -0x20(%rbp), %rdi
movl -0x14(%rbp), %esi
movl $0x1, %r8d
movzwl -0x16(%rbp), %edx
movl %r8d, %ecx
callq 0xc640
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_rowcol_to_formula_abs
void
lxw_rowcol_to_formula_abs(char *formula, const char *sheetname,
                          lxw_row_t first_row, lxw_col_t first_col,
                          lxw_row_t last_row, lxw_col_t last_col)
{
    size_t pos;
    char *quoted_name = lxw_quote_sheetname(sheetname);

    strncpy(formula, quoted_name, LXW_MAX_FORMULA_RANGE_LENGTH - 1);
    free(quoted_name);

    /* Get the end of the sheetname. */
    pos = strlen(formula);

    /* Add the range separator. */
    formula[pos++] = '!';

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell_abs(&formula[pos], first_row, first_col, 1, 1);

    /* If the start and end cells are the same just return a single cell. */
    if (first_row == last_row && first_col == last_col)
        return;

    /* Get the end of the cell. */
    pos = strlen(formula);

    /* Add the range separator. */
    formula[pos++] = ':';

    /* Add the first cell to the range. */
    lxw_rowcol_to_cell_abs(&formula[pos], last_row, last_col, 1, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %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)
movq -0x10(%rbp), %rdi
callq 0xc3c0
movq %rax, -0x30(%rbp)
movq -0x8(%rbp), %rdi
movq -0x30(%rbp), %rsi
movl $0x9a, %edx
callq 0xc1a0
movq -0x30(%rbp), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rdi
callq 0xc4e0
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq -0x28(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x28(%rbp)
movb $0x21, (%rax,%rcx)
movq -0x8(%rbp), %rdi
addq -0x28(%rbp), %rdi
movl -0x14(%rbp), %esi
movl $0x1, %r8d
movzwl -0x16(%rbp), %edx
movl %r8d, %ecx
callq 0xc640
movl -0x14(%rbp), %eax
cmpl -0x1c(%rbp), %eax
jne 0x37222
movzwl -0x16(%rbp), %eax
movzwl -0x1e(%rbp), %ecx
cmpl %ecx, %eax
jne 0x37222
jmp 0x37263
movq -0x8(%rbp), %rdi
callq 0xc4e0
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq -0x28(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x28(%rbp)
movb $0x3a, (%rax,%rcx)
movq -0x8(%rbp), %rdi
addq -0x28(%rbp), %rdi
movl -0x1c(%rbp), %esi
movl $0x1, %r8d
movzwl -0x1e(%rbp), %edx
movl %r8d, %ecx
callq 0xc640
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_name_to_row
lxw_row_t
lxw_name_to_row(const char *row_str)
{
    lxw_row_t row_num = 0;
    const char *p = row_str;

    /* Skip the column letters and absolute symbol of the A1 cell. */
    while (p && !isdigit((unsigned char) *p))
        p++;

    /* Convert the row part of the A1 cell to a number. */
    if (p)
        row_num = atoi(p);

    if (row_num)
        return row_num - 1;
    else
        return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movl $0x0, -0x14(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x20(%rbp)
movb %al, -0x21(%rbp)
je 0x374bd
callq 0xd190
movq (%rax), %rax
movq -0x20(%rbp), %rcx
movzbl (%rcx), %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
setne %al
xorb $-0x1, %al
movb %al, -0x21(%rbp)
movb -0x21(%rbp), %al
testb $0x1, %al
jne 0x374c6
jmp 0x374d4
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x3748b
cmpq $0x0, -0x20(%rbp)
je 0x374e7
movq -0x20(%rbp), %rdi
callq 0xcf30
movl %eax, -0x14(%rbp)
cmpl $0x0, -0x14(%rbp)
je 0x374f8
movl -0x14(%rbp), %eax
subl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x374ff
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_name_to_col
lxw_col_t
lxw_name_to_col(const char *col_str)
{
    lxw_col_t col_num = 0;
    const char *p = col_str;

    /* Convert leading column letters of A1 cell. Ignore absolute $ marker. */
    while (p && (isupper((unsigned char) *p) || *p == '$')) {
        if (*p != '$')
            col_num = (col_num * 26) + (*p - 'A' + 1);
        p++;
    }

    return col_num - 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movw $0x0, -0xa(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x18(%rbp)
movb %al, -0x19(%rbp)
je 0x37572
callq 0xd190
movq (%rax), %rax
movq -0x18(%rbp), %rcx
movzbl (%rcx), %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %ecx
andl $0x100, %ecx            # imm = 0x100
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, -0x1a(%rbp)
jne 0x3756c
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x24, %eax
sete %al
movb %al, -0x1a(%rbp)
movb -0x1a(%rbp), %al
movb %al, -0x19(%rbp)
movb -0x19(%rbp), %al
testb $0x1, %al
jne 0x3757b
jmp 0x375b2
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x24, %eax
je 0x375a1
movzwl -0xa(%rbp), %eax
imull $0x1a, %eax, %eax
movq -0x18(%rbp), %rcx
movsbl (%rcx), %ecx
subl $0x41, %ecx
addl $0x1, %ecx
addl %ecx, %eax
movw %ax, -0xa(%rbp)
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0x3752a
movzwl -0xa(%rbp), %eax
subl $0x1, %eax
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_name_to_row_2
uint32_t
lxw_name_to_row_2(const char *row_str)
{
    const char *p = row_str;

    /* Find the : separator in the range. */
    while (p && *p != ':')
        p++;

    if (p)
        return lxw_name_to_row(++p);
    else
        return -1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x18(%rbp)
movb %al, -0x19(%rbp)
je 0x375f0
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x3a, %eax
setne %al
movb %al, -0x19(%rbp)
movb -0x19(%rbp), %al
testb $0x1, %al
jne 0x375f9
jmp 0x37607
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0x375d4
cmpq $0x0, -0x18(%rbp)
je 0x37624
movq -0x18(%rbp), %rdi
addq $0x1, %rdi
movq %rdi, -0x18(%rbp)
callq 0xc740
movl %eax, -0x4(%rbp)
jmp 0x3762b
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_name_to_col_2
uint16_t
lxw_name_to_col_2(const char *col_str)
{
    const char *p = col_str;

    /* Find the : separator in the range. */
    while (p && *p != ':')
        p++;

    if (p)
        return lxw_name_to_col(++p);
    else
        return -1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x18(%rbp)
movb %al, -0x19(%rbp)
je 0x37670
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x3a, %eax
setne %al
movb %al, -0x19(%rbp)
movb -0x19(%rbp), %al
testb $0x1, %al
jne 0x37679
jmp 0x37687
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0x37654
cmpq $0x0, -0x18(%rbp)
je 0x376a5
movq -0x18(%rbp), %rdi
addq $0x1, %rdi
movq %rdi, -0x18(%rbp)
callq 0xc850
movw %ax, -0x2(%rbp)
jmp 0x376ab
movw $0xffff, -0x2(%rbp)     # imm = 0xFFFF
movw -0x2(%rbp), %ax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_unixtime_to_excel_date_epoch
double
lxw_unixtime_to_excel_date_epoch(int64_t unixtime, uint8_t date_1904)
{
    double excel_datetime = 0.0;
    double epoch = date_1904 ? 24107.0 : 25568.0;

    excel_datetime = epoch + (unixtime / (24 * 60 * 60.0));

    if (!date_1904 && excel_datetime >= 60.0)
        excel_datetime = excel_datetime + 1.0;

    return excel_datetime;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x18(%rbp)
movzbl -0x9(%rbp), %eax
movsd 0x33046(%rip), %xmm0    # 0x6aa48
movsd 0x33046(%rip), %xmm1    # 0x6aa50
movsd %xmm1, -0x30(%rbp)
cmpl $0x0, %eax
movsd %xmm0, -0x28(%rbp)
jne 0x37a23
movsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x28(%rbp), %xmm0
movsd %xmm0, -0x20(%rbp)
movsd -0x20(%rbp), %xmm0
cvtsi2sdq -0x8(%rbp), %xmm1
movsd 0x32ff8(%rip), %xmm2    # 0x6aa38
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movsd %xmm0, -0x18(%rbp)
cmpb $0x0, -0x9(%rbp)
jne 0x37a78
movsd -0x18(%rbp), %xmm0
movsd 0x32fe0(%rip), %xmm1    # 0x6aa40
ucomisd %xmm1, %xmm0
jb 0x37a78
movsd 0x3002a(%rip), %xmm0    # 0x67a98
addsd -0x18(%rbp), %xmm0
movsd %xmm0, -0x18(%rbp)
movsd -0x18(%rbp), %xmm0
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_strdup
char *
lxw_strdup(const char *str)
{
    size_t len;
    char *copy;

    if (!str)
        return NULL;

    len = strlen(str) + 1;
    copy = malloc(len);

    if (copy)
        memcpy(copy, str, len);

    return copy;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x37a9d
movq $0x0, -0x8(%rbp)
jmp 0x37adb
movq -0x10(%rbp), %rdi
callq 0xc4e0
addq $0x1, %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0xcaf0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x37ad3
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
callq 0xc980
movq -0x20(%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/utility.c
// Function: lxw_strdup_formula
char *
lxw_strdup_formula(const char *formula)
{
    if (!formula)
        return NULL;

    if (formula[0] == '=')
        return lxw_strdup(formula + 1);
    else
        return lxw_strdup(formula);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x37b0d
movq $0x0, -0x8(%rbp)
jmp 0x37b39
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x3d, %eax
jne 0x37b2c
movq -0x10(%rbp), %rdi
addq $0x1, %rdi
callq 0xcd80
movq %rax, -0x8(%rbp)
jmp 0x37b39
movq -0x10(%rbp), %rdi
callq 0xcd80
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_utf8_strlen
size_t
lxw_utf8_strlen(const char *str)
{
    size_t byte_count = 0;
    size_t char_count = 0;

    while (str[byte_count]) {
        if ((str[byte_count] & 0xc0) != 0x80)
            char_count++;

        byte_count++;
    }

    return char_count;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x10(%rbp)
movq $0x0, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpb $0x0, (%rax,%rcx)
je 0x37ba8
movq -0x8(%rbp), %rax
movq -0x10(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0xc0, %eax
cmpl $0x80, %eax
je 0x37b9a
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
movq -0x10(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x10(%rbp)
jmp 0x37b68
movq -0x18(%rbp), %rax
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_get_filehandle
FILE *
lxw_get_filehandle(char **buf, size_t *size, const char *tmpdir)
{
    static size_t s;
    if (!size)
        size = &s;
    *buf = NULL;
    *size = 0;
#ifdef USE_FMEMOPEN
    (void) tmpdir;
    return open_memstream(buf, size);
#else
    return lxw_tmpfile(tmpdir);
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x37c56
leaq 0x465a6(%rip), %rax     # 0x7e1f8
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq $0x0, (%rax)
movq -0x10(%rbp), %rax
movq $0x0, (%rax)
movq -0x18(%rbp), %rdi
callq 0xc8b0
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/utility.c
// Function: lxw_hash_password
uint16_t
lxw_hash_password(const char *password)
{
    uint16_t byte_count = (uint16_t) strlen(password);
    uint16_t hash = 0;
    const char *p = &password[byte_count];

    if (!byte_count)
        return hash;

    while (p-- != password) {
        hash = ((hash >> 14) & 0x01) | ((hash << 1) & 0x7fff);
        hash ^= *p & 0xFF;
    }

    hash = ((hash >> 14) & 0x01) | ((hash << 1) & 0x7fff);
    hash ^= byte_count;
    hash ^= 0xCE4B;

    return hash;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
callq 0xc4e0
movw %ax, -0x12(%rbp)
movw $0x0, -0x14(%rbp)
movq -0x10(%rbp), %rax
movzwl -0x12(%rbp), %ecx
addq %rcx, %rax
movq %rax, -0x20(%rbp)
cmpw $0x0, -0x12(%rbp)
jne 0x37ce2
movw -0x14(%rbp), %ax
movw %ax, -0x2(%rbp)
jmp 0x37d6d
jmp 0x37ce4
movq -0x20(%rbp), %rax
movq %rax, %rcx
addq $-0x1, %rcx
movq %rcx, -0x20(%rbp)
cmpq -0x10(%rbp), %rax
je 0x37d2e
movzwl -0x14(%rbp), %eax
sarl $0xe, %eax
andl $0x1, %eax
movzwl -0x14(%rbp), %ecx
shll %ecx
andl $0x7fff, %ecx           # imm = 0x7FFF
orl %ecx, %eax
movw %ax, -0x14(%rbp)
movq -0x20(%rbp), %rax
movsbl (%rax), %ecx
andl $0xff, %ecx
movzwl -0x14(%rbp), %eax
xorl %ecx, %eax
movw %ax, -0x14(%rbp)
jmp 0x37ce4
movzwl -0x14(%rbp), %eax
sarl $0xe, %eax
andl $0x1, %eax
movzwl -0x14(%rbp), %ecx
shll %ecx
andl $0x7fff, %ecx           # imm = 0x7FFF
orl %ecx, %eax
movw %ax, -0x14(%rbp)
movzwl -0x12(%rbp), %ecx
movzwl -0x14(%rbp), %eax
xorl %ecx, %eax
movw %ax, -0x14(%rbp)
movzwl -0x14(%rbp), %eax
xorl $0xce4b, %eax           # imm = 0xCE4B
movw %ax, -0x14(%rbp)
movw -0x14(%rbp), %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: lxw_vml_new
lxw_vml *
lxw_vml_new(void)
{
    lxw_vml *vml = calloc(1, sizeof(lxw_vml));
    GOTO_LABEL_ON_MEM_ERROR(vml, mem_error);

    return vml;

mem_error:
    lxw_vml_free(vml);
    return NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl $0x1, %edi
movl $0x38, %esi
callq 0xc870
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x37df8
movq 0x4521f(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x2e2ed(%rip), %rsi     # 0x660d0
leaq 0x33236(%rip), %rdx     # 0x6b020
movl $0x1f, %ecx
movb $0x0, %al
callq 0xc8f0
jmp 0x37e04
jmp 0x37dfa
movq -0x10(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x37e15
movq -0x10(%rbp), %rdi
callq 0xc8d0
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_xml_namespace
STATIC void
_vml_write_xml_namespace(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;
    char xmlns_v[] = "urn:schemas-microsoft-com:vml";
    char xmlns_o[] = "urn:schemas-microsoft-com:office:office";
    char xmlns_x[] = "urn:schemas-microsoft-com:office:excel";

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("xmlns:v", xmlns_v);
    LXW_PUSH_ATTRIBUTES_STR("xmlns:o", xmlns_o);
    LXW_PUSH_ATTRIBUTES_STR("xmlns:x", xmlns_x);

    lxw_xml_start_tag(self->file, "xml", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x8(%rbp)
movq 0x3355a(%rip), %rax     # 0x6b570
movq %rax, -0x40(%rbp)
movq 0x33557(%rip), %rax     # 0x6b578
movq %rax, -0x38(%rbp)
movq 0x33554(%rip), %rax     # 0x6b580
movq %rax, -0x30(%rbp)
movl 0x33552(%rip), %eax     # 0x6b588
movl %eax, -0x28(%rbp)
movw 0x3354c(%rip), %ax      # 0x6b58c
movw %ax, -0x24(%rbp)
leaq -0x70(%rbp), %rdi
leaq 0x33541(%rip), %rsi     # 0x6b590
movl $0x28, %edx
callq 0xc980
leaq -0xa0(%rbp), %rdi
leaq 0x33559(%rip), %rsi     # 0x6b5c0
movl $0x27, %edx
callq 0xc980
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x38083
leaq -0x40(%rbp), %rsi
leaq 0x32f98(%rip), %rdi     # 0x6b026
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x380c1
jmp 0x380c3
leaq -0x70(%rbp), %rsi
leaq 0x32f60(%rip), %rdi     # 0x6b02e
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x38101
jmp 0x38103
leaq -0xa0(%rbp), %rsi
leaq 0x32f25(%rip), %rdi     # 0x6b036
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x38144
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30081(%rip), %rsi     # 0x681d3
leaq -0x18(%rbp), %rdx
callq 0xc390
jmp 0x3815d
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3816d
jmp 0x3819f
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x38192
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x38194
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3815d
jmp 0x381a1
addq $0xa0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_shapelayout
STATIC void
_vml_write_shapelayout(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("v:ext", "edit");

    lxw_xml_start_tag(self->file, "o:shapelayout", &attributes);

    /* Write the o:idmap element. */
    _vml_write_idmap(self);

    lxw_xml_end_tag(self->file, "o:shapelayout");

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x381ce
leaq 0x32e69(%rip), %rdi     # 0x6b03e
leaq 0x32e68(%rip), %rsi     # 0x6b044
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x3820f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x32e2c(%rip), %rsi     # 0x6b049
leaq -0x18(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
callq 0x39690
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x32e0c(%rip), %rsi     # 0x6b049
callq 0xc060
jmp 0x38244
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x38254
jmp 0x38286
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x38279
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3827b
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x38244
jmp 0x38288
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_stroke
STATIC void
_vml_write_stroke(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("joinstyle", "miter");

    lxw_xml_empty_tag(self->file, "v:stroke", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x396de
leaq 0x319bc(%rip), %rdi     # 0x6b0a1
leaq 0x319bf(%rip), %rsi     # 0x6b0ab
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x3971f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x31984(%rip), %rsi     # 0x6b0b1
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x39738
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39748
jmp 0x3977a
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3976d
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3976f
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x39738
jmp 0x3977c
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_button_path
STATIC void
_vml_write_button_path(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("shadowok", "f");
    LXW_PUSH_ATTRIBUTES_STR("o:extrusionok", "f");
    LXW_PUSH_ATTRIBUTES_STR("strokeok", "f");
    LXW_PUSH_ATTRIBUTES_STR("fillok", "f");
    LXW_PUSH_ATTRIBUTES_STR("o:connecttype", "rect");

    lxw_xml_empty_tag(self->file, "v:path", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x397ae
leaq 0x31905(%rip), %rdi     # 0x6b0ba
leaq 0x2d7b1(%rip), %rsi     # 0x66f6d
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x397ef
jmp 0x397f1
leaq 0x318cb(%rip), %rdi     # 0x6b0c3
leaq 0x2d76e(%rip), %rsi     # 0x66f6d
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39832
jmp 0x39834
leaq 0x31896(%rip), %rdi     # 0x6b0d1
leaq 0x2d72b(%rip), %rsi     # 0x66f6d
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39875
jmp 0x39877
leaq 0x3185c(%rip), %rdi     # 0x6b0da
leaq 0x2d6e8(%rip), %rsi     # 0x66f6d
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x398b8
jmp 0x398ba
leaq 0x31820(%rip), %rdi     # 0x6b0e1
leaq 0x2eeae(%rip), %rsi     # 0x68776
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x398fb
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x317e6(%rip), %rsi     # 0x6b0ef
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x39914
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39924
jmp 0x39956
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x39949
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3994b
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x39914
jmp 0x39958
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_shapetype_lock
STATIC void
_vml_write_shapetype_lock(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("v:ext", "edit");
    LXW_PUSH_ATTRIBUTES_STR("shapetype", "t");

    lxw_xml_empty_tag(self->file, "o:lock", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3997e
leaq 0x316b9(%rip), %rdi     # 0x6b03e
leaq 0x316b8(%rip), %rsi     # 0x6b044
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x399bf
jmp 0x399c1
leaq 0x316cf(%rip), %rdi     # 0x6b097
leaq 0x2d70a(%rip), %rsi     # 0x670d9
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39a02
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x316e6(%rip), %rsi     # 0x6b0f6
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x39a1b
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39a2b
jmp 0x39a5d
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x39a50
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x39a52
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x39a1b
jmp 0x39a5f
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_button_fill
STATIC void
_vml_write_button_fill(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("color2", "buttonFace [67]");
    LXW_PUSH_ATTRIBUTES_STR("o:detectmouseclick", "t");

    lxw_xml_empty_tag(self->file, "v:fill", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x39a8e
leaq 0x31721(%rip), %rdi     # 0x6b1b6
leaq 0x31721(%rip), %rsi     # 0x6b1bd
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39acf
jmp 0x39ad1
leaq 0x316f5(%rip), %rdi     # 0x6b1cd
leaq 0x2d5fa(%rip), %rsi     # 0x670d9
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39b12
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x316c0(%rip), %rsi     # 0x6b1e0
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x39b2b
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39b3b
jmp 0x39b6d
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x39b60
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x39b62
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x39b2b
jmp 0x39b6f
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_rotation_lock
STATIC void
_vml_write_rotation_lock(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("v:ext", "edit");
    LXW_PUSH_ATTRIBUTES_STR("rotation", "t");

    lxw_xml_empty_tag(self->file, "o:lock", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x39b9e
leaq 0x31499(%rip), %rdi     # 0x6b03e
leaq 0x31498(%rip), %rsi     # 0x6b044
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39bdf
jmp 0x39be1
leaq 0x315ff(%rip), %rdi     # 0x6b1e7
leaq 0x2d4ea(%rip), %rsi     # 0x670d9
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x39c22
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x314c6(%rip), %rsi     # 0x6b0f6
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x39c3b
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39c4b
jmp 0x39c7d
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x39c70
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x39c72
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x39c3b
jmp 0x39c7f
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_button_textbox
STATIC void
_vml_write_button_textbox(lxw_vml *self, lxw_vml_obj *vml_obj)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("style", "mso-direction-alt:auto");
    LXW_PUSH_ATTRIBUTES_STR("o:singleclick", "f");

    lxw_xml_start_tag(self->file, "v:textbox", &attributes);

    /* Write the div element. */
    _vml_write_button_div(self, vml_obj);

    lxw_xml_end_tag(self->file, "v:textbox");

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq $0x0, -0x20(%rbp)
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39cb2
leaq 0x2d98d(%rip), %rdi     # 0x67646
leaq 0x31530(%rip), %rsi     # 0x6b1f0
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x39cf3
jmp 0x39cf5
leaq 0x3150b(%rip), %rdi     # 0x6b207
leaq 0x2d26a(%rip), %rsi     # 0x66f6d
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x39d36
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x314d1(%rip), %rsi     # 0x6b215
leaq -0x20(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x39ee0
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x314ad(%rip), %rsi     # 0x6b215
callq 0xc060
jmp 0x39d6f
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39d7f
jmp 0x39db1
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x39da4
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39da6
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x39d6f
jmp 0x39db3
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_button_client_data
STATIC void
_vml_write_button_client_data(lxw_vml *self, lxw_vml_obj *vml_obj)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("ObjectType", "Button");

    lxw_xml_start_tag(self->file, "x:ClientData", &attributes);

    /* Write the <x:Anchor> element. */
    _vml_write_anchor(self, vml_obj);

    /* Write the x:PrintObject element. */
    _vml_write_print_object(self);

    /* Write the x:AutoFill element. */
    _vml_write_auto_fill(self);

    /* Write the x:FmlaMacro element. */
    _vml_write_fmla_macro(self, vml_obj);

    /* Write the x:TextHAlign element. */
    _vml_write_text_halign(self);

    /* Write the x:TextVAlign element. */
    _vml_write_text_valign(self);

    lxw_xml_end_tag(self->file, "x:ClientData");

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq $0x0, -0x20(%rbp)
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39de2
leaq 0x31458(%rip), %rdi     # 0x6b241
leaq 0x3145c(%rip), %rsi     # 0x6b24c
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x39e23
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x31422(%rip), %rsi     # 0x6b253
leaq -0x20(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x3a130
movq -0x8(%rbp), %rdi
callq 0x3a1e0
movq -0x8(%rbp), %rdi
callq 0x3a210
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x3a240
movq -0x8(%rbp), %rdi
callq 0x3a280
movq -0x8(%rbp), %rdi
callq 0x3a2b0
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x313cd(%rip), %rsi     # 0x6b253
callq 0xc060
jmp 0x39e8d
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39e9d
jmp 0x39ecf
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x39ec2
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39ec4
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x39e8d
jmp 0x39ed1
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_button_div
STATIC void
_vml_write_button_div(lxw_vml *self, lxw_vml_obj *vml_obj)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("style", "text-align:center");

    lxw_xml_start_tag(self->file, "div", &attributes);

    /* Write the font element. */
    _vml_write_font(self, vml_obj);

    lxw_xml_end_tag(self->file, "div");

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq $0x0, -0x20(%rbp)
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39f02
leaq 0x2d73d(%rip), %rdi     # 0x67646
leaq 0x3130f(%rip), %rsi     # 0x6b21f
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x39f43
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x312e0(%rip), %rsi     # 0x6b231
leaq -0x20(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x39fd0
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x312bc(%rip), %rsi     # 0x6b231
callq 0xc060
jmp 0x39f7c
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39f8c
jmp 0x39fbe
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x39fb1
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39fb3
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x39f7c
jmp 0x39fc0
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_font
STATIC void
_vml_write_font(lxw_vml *self, lxw_vml_obj *vml_obj)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("face", "Calibri");
    LXW_PUSH_ATTRIBUTES_STR("size", "220");
    LXW_PUSH_ATTRIBUTES_STR("color", "#000000");

    lxw_xml_data_element(self->file, "font", vml_obj->name, &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq $0x0, -0x20(%rbp)
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x39ff2
leaq 0x2d08f(%rip), %rdi     # 0x67088
leaq 0x2f19e(%rip), %rsi     # 0x6919e
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x3a033
jmp 0x3a035
leaq 0x2cfaa(%rip), %rdi     # 0x66fe6
leaq 0x311f2(%rip), %rsi     # 0x6b235
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x3a076
jmp 0x3a078
leaq 0x3111d(%rip), %rdi     # 0x6b19c
leaq 0x311b3(%rip), %rsi     # 0x6b239
callq 0xc030
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x18(%rbp)
jmp 0x3a0b9
movq -0x8(%rbp), %rax
movq (%rax), %rdi
movq -0x10(%rbp), %rax
movq 0xa8(%rax), %rdx
leaq 0x2f0a2(%rip), %rsi     # 0x69174
leaq -0x20(%rbp), %rcx
callq 0xcbd0
jmp 0x3a0dd
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a0ed
jmp 0x3a11f
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x3a112
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x3a114
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x3a0dd
jmp 0x3a121
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_anchor
STATIC void
_vml_write_anchor(lxw_vml *self, lxw_vml_obj *vml_obj)
{
    char anchor_data[LXW_MAX_ATTRIBUTE_LENGTH];

    lxw_snprintf(anchor_data,
                 LXW_MAX_ATTRIBUTE_LENGTH,
                 "%d, %d, %d, %d, %d, %d, %d, %d",
                 vml_obj->from.col,
                 (uint32_t) vml_obj->from.col_offset,
                 vml_obj->from.row,
                 (uint32_t) vml_obj->from.row_offset,
                 vml_obj->to.col,
                 (uint32_t) vml_obj->to.col_offset,
                 vml_obj->to.row, (uint32_t) vml_obj->to.row_offset);

    lxw_xml_data_element(self->file, "x:Anchor", anchor_data, NULL);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x860, %rsp            # imm = 0x860
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
leaq -0x840(%rbp), %rdi
movq -0x20(%rbp), %rax
movl 0x58(%rax), %ecx
movl 0x5c(%rax), %r9d
cvttsd2si 0x60(%rax), %rdx
movl %edx, %r8d
cvttsd2si 0x68(%rax), %rdx
movl %edx, %r14d
movl 0x70(%rax), %ebx
cvttsd2si 0x78(%rax), %rdx
movl %edx, %r11d
movl 0x74(%rax), %r10d
cvttsd2si 0x80(%rax), %rax
movl $0x820, %esi            # imm = 0x820
leaq 0x310d1(%rip), %rdx     # 0x6b260
movl %r14d, (%rsp)
movl %ebx, 0x8(%rsp)
movl %r11d, 0x10(%rsp)
movl %r10d, 0x18(%rsp)
movl %eax, 0x20(%rsp)
movb $0x0, %al
callq 0xc5d0
movq -0x18(%rbp), %rax
movq (%rax), %rdi
leaq -0x840(%rbp), %rdx
leaq 0x310be(%rip), %rsi     # 0x6b27f
xorl %eax, %eax
movl %eax, %ecx
callq 0xcbd0
addq $0x860, %rsp            # imm = 0x860
popq %rbx
popq %r14
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_comment_path
STATIC void
_vml_write_comment_path(lxw_vml *self, uint8_t has_gradient, char *type)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();

    if (has_gradient)
        LXW_PUSH_ATTRIBUTES_STR("gradientshapeok", "t");

    LXW_PUSH_ATTRIBUTES_STR("o:connecttype", type);

    lxw_xml_empty_tag(self->file, "v:path", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movq %rdx, -0x18(%rbp)
movq $0x0, -0x28(%rbp)
leaq -0x28(%rbp), %rax
movq %rax, -0x20(%rbp)
cmpb $0x0, -0x9(%rbp)
je 0x3a351
jmp 0x3a30e
leaq 0x30fbf(%rip), %rdi     # 0x6b2d4
leaq 0x2cdbd(%rip), %rsi     # 0x670d9
callq 0xc030
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x30(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x20(%rbp)
jmp 0x3a34f
jmp 0x3a351
jmp 0x3a353
movq -0x18(%rbp), %rsi
leaq 0x30d83(%rip), %rdi     # 0x6b0e1
callq 0xc030
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x30(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x20(%rbp)
jmp 0x3a391
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30d50(%rip), %rsi     # 0x6b0ef
leaq -0x28(%rbp), %rdx
callq 0xcca0
jmp 0x3a3aa
cmpq $0x0, -0x28(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a3ba
jmp 0x3a3ec
movq -0x28(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x28(%rbp)
cmpq $0x0, %rax
jne 0x3a3df
leaq -0x28(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x3a3e1
movq -0x30(%rbp), %rdi
callq 0xc0d0
jmp 0x3a3aa
jmp 0x3a3ee
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_comment_fill
STATIC void
_vml_write_comment_fill(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("color2", "#ffffe1");

    lxw_xml_empty_tag(self->file, "v:fill", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3a41e
leaq 0x30d91(%rip), %rdi     # 0x6b1b6
leaq 0x30f36(%rip), %rsi     # 0x6b362
callq 0xc030
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x20(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x10(%rbp)
jmp 0x3a45f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30d73(%rip), %rsi     # 0x6b1e0
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3a478
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a488
jmp 0x3a4ba
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3a4ad
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3a4af
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3a478
jmp 0x3a4bc
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)