LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_shadow
STATIC void
_vml_write_shadow(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("on", "t");
    LXW_PUSH_ATTRIBUTES_STR("color", "black");
    LXW_PUSH_ATTRIBUTES_STR("obscured", "t");

    lxw_xml_empty_tag(self->file, "v:shadow", &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 0x3a4ee
leaq 0x34112(%rip), %rdi     # 0x6e607
leaq 0x2cbdd(%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 0x3a52f
jmp 0x3a531
leaq 0x30c64(%rip), %rdi     # 0x6b19c
leaq 0x30e2b(%rip), %rsi     # 0x6b36a
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 0x3a572
jmp 0x3a574
leaq 0x30df5(%rip), %rdi     # 0x6b370
leaq 0x2cb57(%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 0x3a5b5
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30db6(%rip), %rsi     # 0x6b379
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3a5ce
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a5de
jmp 0x3a610
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3a603
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3a605
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3a5ce
jmp 0x3a612
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_comment_textbox
STATIC void
_vml_write_comment_textbox(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

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

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

    /* Write the div element. */
    _vml_write_comment_div(self);

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

    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 0x3a63e
leaq 0x2d001(%rip), %rdi     # 0x67646
leaq 0x30ba4(%rip), %rsi     # 0x6b1f0
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 0x3a67f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30b88(%rip), %rsi     # 0x6b215
leaq -0x18(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
callq 0x3a840
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30b68(%rip), %rsi     # 0x6b215
callq 0xc060
jmp 0x3a6b4
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a6c4
jmp 0x3a6f6
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3a6e9
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3a6eb
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3a6b4
jmp 0x3a6f8
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_comment_client_data
STATIC void
_vml_write_comment_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", "Note");

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

    /* Write the <x:MoveWithCells> element. */
    _vml_write_move_with_cells(self);

    /* Write the <x:SizeWithCells> element. */
    _vml_write_size_with_cells(self);

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

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

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

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

    /* Write the x:Visible element. */
    if (vml_obj->visible == LXW_COMMENT_DISPLAY_VISIBLE)
        _vml_write_visible(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 0x3a722
leaq 0x30b18(%rip), %rdi     # 0x6b241
leaq 0x30c62(%rip), %rsi     # 0x6b392
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 0x3a763
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30ae2(%rip), %rsi     # 0x6b253
leaq -0x20(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rdi
callq 0x3a920
movq -0x8(%rbp), %rdi
callq 0x3a950
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x3a130
movq -0x8(%rbp), %rdi
callq 0x3a210
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x3a980
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x3a9d0
movq -0x10(%rbp), %rax
movzbl 0x45(%rax), %eax
cmpl $0x2, %eax
jne 0x3a7d2
movq -0x8(%rbp), %rdi
callq 0x3aa20
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30a73(%rip), %rsi     # 0x6b253
callq 0xc060
jmp 0x3a7e7
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a7f7
jmp 0x3a829
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x3a81c
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x3a81e
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x3a7e7
jmp 0x3a82b
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_div
STATIC void
_vml_write_comment_div(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

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

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

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

    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 0x3a85e
leaq 0x2cde1(%rip), %rdi     # 0x67646
leaq 0x30b16(%rip), %rsi     # 0x6b382
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 0x3a89f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x30984(%rip), %rsi     # 0x6b231
leaq -0x18(%rbp), %rdx
callq 0xc390
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x3096d(%rip), %rsi     # 0x6b231
callq 0xc060
jmp 0x3a8cb
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3a8db
jmp 0x3a90d
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3a900
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3a902
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3a8cb
jmp 0x3a90f
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_formulas
STATIC void
_vml_write_formulas(lxw_vml *self)
{
    lxw_xml_start_tag(self->file, "v:formulas", NULL);

    _vml_write_formula(self, "if lineDrawn pixelLineWidth 0");
    _vml_write_formula(self, "sum @0 1 0");
    _vml_write_formula(self, "sum 0 0 @1");
    _vml_write_formula(self, "prod @2 1 2");
    _vml_write_formula(self, "prod @3 21600 pixelWidth");
    _vml_write_formula(self, "prod @3 21600 pixelHeight");
    _vml_write_formula(self, "sum @0 0 1");
    _vml_write_formula(self, "prod @6 1 2");
    _vml_write_formula(self, "prod @7 21600 pixelWidth");
    _vml_write_formula(self, "sum @8 21600 0");
    _vml_write_formula(self, "prod @7 21600 pixelHeight");
    _vml_write_formula(self, "sum @10 21600 0");

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

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x3097f(%rip), %rsi     # 0x6b3e9
xorl %eax, %eax
movl %eax, %edx
callq 0xc390
movq -0x8(%rbp), %rdi
leaq 0x30976(%rip), %rsi     # 0x6b3f4
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30984(%rip), %rsi     # 0x6b412
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x3097f(%rip), %rsi     # 0x6b41d
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x3097a(%rip), %rsi     # 0x6b428
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30976(%rip), %rsi     # 0x6b434
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x3097f(%rip), %rsi     # 0x6b44d
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30989(%rip), %rsi     # 0x6b467
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30984(%rip), %rsi     # 0x6b472
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30980(%rip), %rsi     # 0x6b47e
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30989(%rip), %rsi     # 0x6b497
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30988(%rip), %rsi     # 0x6b4a6
callq 0x3adb0
movq -0x8(%rbp), %rdi
leaq 0x30992(%rip), %rsi     # 0x6b4c0
callq 0x3adb0
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x308a8(%rip), %rsi     # 0x6b3e9
callq 0xc060
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_image_path
STATIC void
_vml_write_image_path(lxw_vml *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("o:extrusionok", "f");
    LXW_PUSH_ATTRIBUTES_STR("gradientshapeok", "t");
    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 0x3ab6e
leaq 0x3054e(%rip), %rdi     # 0x6b0c3
leaq 0x2c3f1(%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 0x3abaf
jmp 0x3abb1
leaq 0x3071c(%rip), %rdi     # 0x6b2d4
leaq 0x2c51a(%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 0x3abf2
jmp 0x3abf4
leaq 0x304e6(%rip), %rdi     # 0x6b0e1
leaq 0x2db74(%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 0x3ac35
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x304ac(%rip), %rsi     # 0x6b0ef
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3ac4e
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ac5e
jmp 0x3ac90
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3ac83
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3ac85
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3ac4e
jmp 0x3ac92
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/vml.c
// Function: vml_write_aspect_ratio_lock
STATIC void
_vml_write_aspect_ratio_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("aspectratio", "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 0x3acbe
leaq 0x30379(%rip), %rdi     # 0x6b03e
leaq 0x30378(%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 0x3acff
jmp 0x3ad01
leaq 0x307d0(%rip), %rdi     # 0x6b4d8
leaq 0x2c3ca(%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 0x3ad42
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x303a6(%rip), %rsi     # 0x6b0f6
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3ad5b
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ad6b
jmp 0x3ad9d
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3ad90
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3ad92
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3ad5b
jmp 0x3ad9f
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_formula
STATIC void
_vml_write_formula(lxw_vml *self, char *equation)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("eqn", equation);

    lxw_xml_empty_tag(self->file, "v:f", &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 0x3add2
movq -0x10(%rbp), %rsi
leaq 0x306f3(%rip), %rdi     # 0x6b4d0
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 0x3ae10
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x306b6(%rip), %rsi     # 0x6b4d4
leaq -0x20(%rbp), %rdx
callq 0xcca0
jmp 0x3ae29
cmpq $0x0, -0x20(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ae39
jmp 0x3ae6b
movq -0x20(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x3ae5e
leaq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x3ae60
movq -0x28(%rbp), %rdi
callq 0xc0d0
jmp 0x3ae29
jmp 0x3ae6d
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_imagedata
STATIC void
_vml_write_imagedata(lxw_vml *self, uint32_t rel_index, char *name)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;
    char rel_id[LXW_ATTR_32];

    lxw_snprintf(rel_id, LXW_ATTR_32, "rId%d", rel_index);

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("o:relid", rel_id);
    LXW_PUSH_ATTRIBUTES_STR("o:title", name);

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

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
leaq -0x50(%rbp), %rdi
movl -0xc(%rbp), %ecx
movl $0x20, %esi
leaq 0x2d713(%rip), %rdx     # 0x685b9
movb $0x0, %al
callq 0xc5d0
movq $0x0, -0x28(%rbp)
leaq -0x28(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x3aebf
leaq -0x50(%rbp), %rsi
leaq 0x3067c(%rip), %rdi     # 0x6b546
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 0x3aefd
jmp 0x3aeff
movq -0x18(%rbp), %rsi
leaq 0x30644(%rip), %rdi     # 0x6b54e
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 0x3af3d
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x3060b(%rip), %rsi     # 0x6b556
leaq -0x28(%rbp), %rdx
callq 0xcca0
jmp 0x3af56
cmpq $0x0, -0x28(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3af66
jmp 0x3af98
movq -0x28(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x28(%rbp)
cmpq $0x0, %rax
jne 0x3af8b
leaq -0x28(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x3af8d
movq -0x30(%rbp), %rdi
callq 0xc0d0
jmp 0x3af56
jmp 0x3af9a
addq $0x50, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: free_doc_properties
STATIC void
_free_doc_properties(lxw_doc_properties *properties)
{
    if (properties) {
        free((void *) properties->title);
        free((void *) properties->subject);
        free((void *) properties->author);
        free((void *) properties->manager);
        free((void *) properties->company);
        free((void *) properties->category);
        free((void *) properties->keywords);
        free((void *) properties->comments);
        free((void *) properties->status);
        free((void *) properties->hyperlink_base);
    }

    free(properties);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x3b5c8
movq -0x8(%rbp), %rax
movq (%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x38(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x40(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
movq 0x48(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rdi
callq 0xc0d0
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: free_custom_doc_property
STATIC void
_free_custom_doc_property(lxw_custom_property *custom_property)
{
    if (custom_property) {
        free(custom_property->name);
        if (custom_property->type == LXW_CUSTOM_STRING)
            free(custom_property->u.string);
    }

    free(custom_property);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x3b618
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0xc0d0
movq -0x8(%rbp), %rax
cmpl $0x1, (%rax)
jne 0x3b616
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xc0d0
jmp 0x3b618
movq -0x8(%rbp), %rdi
callq 0xc0d0
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: lxw_workbook_set_default_xf_indices
void
lxw_workbook_set_default_xf_indices(lxw_workbook *self)
{
    lxw_format *format;
    int32_t index = 0;

    STAILQ_FOREACH(format, self->formats, list_pointers) {

        /* Skip the hyperlink format. */
        if (index != 1)
            lxw_format_get_xf_index(format);

        index++;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl $0x0, -0x14(%rbp)
movq -0x8(%rbp), %rax
movq 0x58(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x3c102
cmpl $0x1, -0x14(%rbp)
je 0x3c0e8
movq -0x10(%rbp), %rdi
callq 0xca40
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
movq -0x10(%rbp), %rax
movq 0x230(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c0d2
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: prepare_workbook
STATIC void
_prepare_workbook(lxw_workbook *self)
{
    /* Set the font index for the format objects. */
    _prepare_fonts(self);

    /* Set the number format index for the format objects. */
    _prepare_num_formats(self);

    /* Set the border index for the format objects. */
    _prepare_borders(self);

    /* Set the fill index for the format objects. */
    _prepare_fills(self);

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
callq 0x41cd0
movq -0x8(%rbp), %rdi
callq 0x41eb0
movq -0x8(%rbp), %rdi
callq 0x42170
movq -0x8(%rbp), %rdi
callq 0x42340
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_workbook
STATIC void
_write_workbook(lxw_workbook *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;
    char xmlns[] = "http://schemas.openxmlformats.org"
        "/spreadsheetml/2006/main";
    char xmlns_r[] = "http://schemas.openxmlformats.org"
        "/officeDocument/2006/relationships";

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("xmlns", xmlns);
    LXW_PUSH_ATTRIBUTES_STR("xmlns:r", xmlns_r);

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

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x8(%rbp)
leaq -0x60(%rbp), %rdi
leaq 0x2ba46(%rip), %rsi     # 0x67c50
movl $0x3a, %edx
callq 0xc980
leaq -0xb0(%rbp), %rdi
leaq 0x2b81e(%rip), %rsi     # 0x67a40
movl $0x44, %edx
callq 0xc980
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c23e
leaq -0x60(%rbp), %rsi
leaq 0x29eb8(%rip), %rdi     # 0x66101
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 0x3c27c
jmp 0x3c27e
leaq -0xb0(%rbp), %rsi
leaq 0x2b3a9(%rip), %rdi     # 0x67635
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 0x3c2bf
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2f37a(%rip), %rsi     # 0x6b647
leaq -0x18(%rbp), %rdx
callq 0xc390
jmp 0x3c2d8
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3c2e8
jmp 0x3c31a
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3c30d
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c30f
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3c2d8
jmp 0x3c31c
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_file_version
STATIC void
_write_file_version(lxw_workbook *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("appName", "xl");
    LXW_PUSH_ATTRIBUTES_STR("lastEdited", "4");
    LXW_PUSH_ATTRIBUTES_STR("lowestEdited", "4");
    LXW_PUSH_ATTRIBUTES_STR("rupBuild", "4505");

    if (self->vba_project)
        LXW_PUSH_ATTRIBUTES_STR("codeName",
                                "{37E998C4-C9E5-D4B9-71C8-EB1FF731991C}");

    lxw_xml_empty_tag(self->file, "fileVersion", &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 0x3c34e
leaq 0x2fd05(%rip), %rdi     # 0x6c05a
leaq 0x2fd06(%rip), %rsi     # 0x6c062
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 0x3c38f
jmp 0x3c391
leaq 0x2fccd(%rip), %rdi     # 0x6c065
leaq 0x327f1(%rip), %rsi     # 0x6eb90
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 0x3c3d2
jmp 0x3c3d4
leaq 0x2fc95(%rip), %rdi     # 0x6c070
leaq 0x327ae(%rip), %rsi     # 0x6eb90
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 0x3c415
jmp 0x3c417
leaq 0x2fc5f(%rip), %rdi     # 0x6c07d
leaq 0x2fc61(%rip), %rsi     # 0x6c086
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 0x3c458
movq -0x8(%rbp), %rax
cmpq $0x0, 0xe8(%rax)
je 0x3c4ab
jmp 0x3c468
leaq 0x2fc1c(%rip), %rdi     # 0x6c08b
leaq 0x2fc1e(%rip), %rsi     # 0x6c094
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 0x3c4a9
jmp 0x3c4ab
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2fc02(%rip), %rsi     # 0x6c0bb
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3c4c4
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3c4d4
jmp 0x3c506
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3c4f9
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c4fb
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3c4c4
jmp 0x3c508
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_write_file_sharing
STATIC void
_workbook_write_file_sharing(lxw_workbook *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    if (self->read_only == 0)
        return;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("readOnlyRecommended", "1");

    lxw_xml_empty_tag(self->file, "fileSharing", &attributes);

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movzbl 0xce(%rax), %eax
cmpl $0x0, %eax
jne 0x3c531
jmp 0x3c5e3
jmp 0x3c533
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c545
leaq 0x2fb7b(%rip), %rdi     # 0x6c0c7
leaq 0x2ef1d(%rip), %rsi     # 0x6b470
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 0x3c586
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2fb47(%rip), %rsi     # 0x6c0db
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3c59f
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3c5af
jmp 0x3c5e1
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3c5d4
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c5d6
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3c59f
jmp 0x3c5e3
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_workbook_pr
STATIC void
_write_workbook_pr(lxw_workbook *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();

    if (self->vba_codename)
        LXW_PUSH_ATTRIBUTES_STR("codeName", self->vba_codename);

    LXW_PUSH_ATTRIBUTES_STR("defaultThemeVersion", "124226");

    lxw_xml_empty_tag(self->file, "workbookPr", &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)
movq -0x8(%rbp), %rax
cmpq $0x0, 0xf8(%rax)
je 0x3c663
jmp 0x3c61c
movq -0x8(%rbp), %rax
movq 0xf8(%rax), %rsi
leaq 0x2fa5d(%rip), %rdi     # 0x6c08b
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 0x3c661
jmp 0x3c663
jmp 0x3c665
leaq 0x2fa7b(%rip), %rdi     # 0x6c0e7
leaq 0x2fa88(%rip), %rsi     # 0x6c0fb
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 0x3c6a6
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2fa4e(%rip), %rsi     # 0x6c102
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3c6bf
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3c6cf
jmp 0x3c701
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3c6f4
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c6f6
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3c6bf
jmp 0x3c703
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_sheets
STATIC void
_write_sheets(lxw_workbook *self)
{
    lxw_sheet *sheet;
    lxw_worksheet *worksheet;
    lxw_chartsheet *chartsheet;

    lxw_xml_start_tag(self->file, "sheets", NULL);

    STAILQ_FOREACH(sheet, self->sheets, list_pointers) {
        if (sheet->is_chartsheet) {
            chartsheet = sheet->u.chartsheet;
            _write_sheet(self, chartsheet->name, chartsheet->index + 1,
                         chartsheet->hidden);
        }
        else {
            worksheet = sheet->u.worksheet;
            _write_sheet(self, worksheet->name, worksheet->index + 1,
                         worksheet->hidden);
        }
    }

    lxw_xml_end_tag(self->file, "sheets");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2c898(%rip), %rsi     # 0x69012
xorl %eax, %eax
movl %eax, %edx
callq 0xc390
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x3c824
movq -0x10(%rbp), %rax
cmpb $0x0, (%rax)
je 0x3c7d8
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rsi
movq -0x20(%rbp), %rax
movzwl 0x50(%rax), %edx
addl $0x1, %edx
movq -0x20(%rbp), %rax
movzbl 0x54(%rax), %ecx
callq 0x42a20
jmp 0x3c811
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0xb8(%rax), %rsi
movq -0x18(%rbp), %rax
movzwl 0xd0(%rax), %edx
addl $0x1, %edx
movq -0x18(%rbp), %rax
movzbl 0xd4(%rax), %ecx
callq 0x42a20
jmp 0x3c813
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c792
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2c7e0(%rip), %rsi     # 0x69012
callq 0xc060
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_defined_names
STATIC void
_write_defined_names(lxw_workbook *self)
{
    lxw_defined_name *defined_name;

    if (TAILQ_EMPTY(self->defined_names))
        return;

    lxw_xml_start_tag(self->file, "definedNames", NULL);

    TAILQ_FOREACH(defined_name, self->defined_names, list_pointers) {
        _write_defined_name(self, defined_name);
    }

    lxw_xml_end_tag(self->file, "definedNames");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
cmpq $0x0, (%rax)
jne 0x3c85c
jmp 0x3c8ba
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2f918(%rip), %rsi     # 0x6c182
xorl %eax, %eax
movl %eax, %edx
callq 0xc390
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x3c8a7
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x42c10
movq -0x10(%rbp), %rax
movq 0x288(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c882
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2f8cd(%rip), %rsi     # 0x6c182
callq 0xc060
addq $0x10, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: write_calc_pr
STATIC void
_write_calc_pr(lxw_workbook *self)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();
    LXW_PUSH_ATTRIBUTES_STR("calcId", "124519");
    LXW_PUSH_ATTRIBUTES_STR("fullCalcOnLoad", "1");

    lxw_xml_empty_tag(self->file, "calcPr", &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 0x3c8de
leaq 0x2f8c3(%rip), %rdi     # 0x6c1a8
leaq 0x2f8c3(%rip), %rsi     # 0x6c1af
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 0x3c91f
jmp 0x3c921
leaq 0x2f88e(%rip), %rdi     # 0x6c1b6
leaq 0x2eb41(%rip), %rsi     # 0x6b470
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 0x3c962
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0x2f855(%rip), %rsi     # 0x6c1c5
leaq -0x18(%rbp), %rdx
callq 0xcca0
jmp 0x3c97b
cmpq $0x0, -0x18(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3c98b
jmp 0x3c9bd
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x3c9b0
leaq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x3c9b2
movq -0x20(%rbp), %rdi
callq 0xc0d0
jmp 0x3c97b
jmp 0x3c9bf
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_add_format
lxw_format *
workbook_add_format(lxw_workbook *self)
{
    /* Create a new format object. */
    lxw_format *format = lxw_format_new();
    RETURN_ON_MEM_ERROR(format, NULL);

    if (!STAILQ_EMPTY(self->formats)) {
        memcpy(format, STAILQ_FIRST(self->formats), sizeof(lxw_format));
        format->xf_format_indices = NULL;
        format->num_xf_formats = NULL;
        format->list_pointers.stqe_next = NULL;
        format->xf_index = LXW_PROPERTY_UNSET;
        format->dxf_index = LXW_PROPERTY_UNSET;
    }

    format->xf_format_indices = self->used_xf_formats;
    format->dxf_format_indices = self->used_dxf_formats;
    format->num_xf_formats = &self->num_xf_formats;

    STAILQ_INSERT_TAIL(self->formats, format, list_pointers);

    return format;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
callq 0xcdf0
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x3d31d
movq 0x3fd05(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x28dd3(%rip), %rsi     # 0x660d0
leaq 0x2e34c(%rip), %rdx     # 0x6b650
movl $0x82b, %ecx            # imm = 0x82B
movb $0x0, %al
callq 0xc8f0
movq $0x0, -0x8(%rbp)
jmp 0x3d3fd
jmp 0x3d31f
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
cmpq $0x0, (%rax)
je 0x3d383
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
movq (%rax), %rsi
movl $0x238, %edx            # imm = 0x238
callq 0xc980
movq -0x18(%rbp), %rax
movq $0x0, 0x8(%rax)
movq -0x18(%rbp), %rax
movq $0x0, 0x18(%rax)
movq -0x18(%rbp), %rax
movq $0x0, 0x230(%rax)
movq -0x18(%rbp), %rax
movl $0xffffffff, 0x28(%rax) # imm = 0xFFFFFFFF
movq -0x18(%rbp), %rax
movl $0xffffffff, 0x2c(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movq 0xd8(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x10(%rbp), %rcx
addq $0xba, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x18(%rbp), %rax
movq $0x0, 0x230(%rax)
movq -0x18(%rbp), %rcx
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
movq 0x8(%rax), %rax
movq %rcx, (%rax)
movq -0x18(%rbp), %rcx
addq $0x230, %rcx            # imm = 0x230
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
movq %rcx, 0x8(%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_validate_sheet_name
lxw_error
workbook_validate_sheet_name(lxw_workbook *self, const char *sheetname)
{
    /* Check the UTF-8 length of the worksheet name. */
    if (lxw_utf8_strlen(sheetname) > LXW_SHEETNAME_MAX)
        return LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED;

    /* Check that the worksheet name doesn't contain invalid characters. */
    if (strpbrk(sheetname, "[]:*?/\\"))
        return LXW_ERROR_INVALID_SHEETNAME_CHARACTER;

    /* Check that the worksheet doesn't start or end with an apostrophe. */
    if (sheetname[0] == '\'' || sheetname[strlen(sheetname) - 1] == '\'')
        return LXW_ERROR_SHEETNAME_START_END_APOSTROPHE;

    /* Check if the worksheet name is already in use. */
    if (workbook_get_worksheet_by_name(self, sheetname))
        return LXW_ERROR_SHEETNAME_ALREADY_USED;

    /* Check if the chartsheet name is already in use. */
    if (workbook_get_chartsheet_by_name(self, sheetname))
        return LXW_ERROR_SHEETNAME_ALREADY_USED;

    return LXW_NO_ERROR;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0xd180
cmpq $0x1f, %rax
jbe 0x3d7db
movl $0xe, -0x4(%rbp)
jmp 0x3d873
movq -0x18(%rbp), %rdi
leaq 0x2e6cf(%rip), %rsi     # 0x6beb5
callq 0xcbb0
cmpq $0x0, %rax
je 0x3d7fa
movl $0xf, -0x4(%rbp)
jmp 0x3d873
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x27, %eax
je 0x3d82b
movq -0x18(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rdi
callq 0xc4e0
movq %rax, %rcx
movq -0x20(%rbp), %rax
subq $0x1, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x27, %eax
jne 0x3d834
movl $0x10, -0x4(%rbp)
jmp 0x3d873
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xcac0
cmpq $0x0, %rax
je 0x3d850
movl $0x11, -0x4(%rbp)
jmp 0x3d873
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xcf20
cmpq $0x0, %rax
je 0x3d86c
movl $0x11, -0x4(%rbp)
jmp 0x3d873
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_add_chart
lxw_chart *
workbook_add_chart(lxw_workbook *self, uint8_t type)
{
    lxw_chart *chart;

    /* Create a new chart object. */
    chart = lxw_chart_new(type);

    if (chart)
        STAILQ_INSERT_TAIL(self->charts, chart, list_pointers);

    return chart;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movzbl -0x9(%rbp), %edi
callq 0xc800
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x3de93
jmp 0x3de58
movq -0x18(%rbp), %rax
movq $0x0, 0x178(%rax)
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x48(%rax), %rax
movq 0x8(%rax), %rax
movq %rcx, (%rax)
movq -0x18(%rbp), %rcx
addq $0x178, %rcx            # imm = 0x178
movq -0x8(%rbp), %rax
movq 0x48(%rax), %rax
movq %rcx, 0x8(%rax)
jmp 0x3de93
movq -0x18(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_set_vba_name
lxw_error
workbook_set_vba_name(lxw_workbook *self, const char *name)
{
    if (!name) {
        LXW_WARN("workbook_set_vba_name(): " "name must be specified.");
        return LXW_ERROR_NULL_PARAMETER_IGNORED;
    }

    self->vba_codename = lxw_strdup(name);

    return LXW_NO_ERROR;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x3e3f8
movq 0x3ec1a(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x2dc35(%rip), %rsi     # 0x6c01d
movb $0x0, %al
callq 0xc8f0
movl $0xc, -0x4(%rbp)
jmp 0x3e416
movq -0x18(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0xf8(%rax)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: add_chart_cache_data
STATIC void
_add_chart_cache_data(lxw_workbook *self)
{
    lxw_chart *chart;
    lxw_chart_series *series;
    uint16_t i;

    STAILQ_FOREACH(chart, self->ordered_charts, ordered_list_pointers) {

        _populate_range(self, chart->title.range);
        _populate_range(self, chart->x_axis->title.range);
        _populate_range(self, chart->y_axis->title.range);

        if (STAILQ_EMPTY(chart->series_list))
            continue;

        STAILQ_FOREACH(series, chart->series_list, list_pointers) {
            _populate_range(self, series->categories);
            _populate_range(self, series->values);
            _populate_range(self, series->title.range);

            for (i = 0; i < series->data_label_count; i++) {
                lxw_chart_custom_label *data_label = &series->data_labels[i];
                _populate_range(self, data_label->range);
            }
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x50(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x3f164
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x50(%rax), %rsi
callq 0x43dc0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq 0x20(%rax), %rsi
callq 0x43dc0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq 0x20(%rax), %rsi
callq 0x43dc0
movq -0x10(%rbp), %rax
movq 0x128(%rax), %rax
cmpq $0x0, (%rax)
jne 0x3f097
jmp 0x3f150
movq -0x10(%rbp), %rax
movq 0x128(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x3f14e
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq (%rax), %rsi
callq 0x43dc0
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x43dc0
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x30(%rax), %rsi
callq 0x43dc0
movw $0x0, -0x1a(%rbp)
movzwl -0x1a(%rbp), %eax
movq -0x18(%rbp), %rcx
movzwl 0x92(%rcx), %ecx
cmpl %ecx, %eax
jge 0x3f138
movq -0x18(%rbp), %rax
movq 0x88(%rax), %rax
movzwl -0x1a(%rbp), %ecx
imulq $0x60, %rcx, %rcx
addq %rcx, %rax
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x28(%rbp), %rax
movq 0x30(%rax), %rsi
callq 0x43dc0
movw -0x1a(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x1a(%rbp)
jmp 0x3f0ec
jmp 0x3f13a
movq -0x18(%rbp), %rax
movq 0x110(%rax), %rax
movq %rax, -0x18(%rbp)
jmp 0x3f0a9
jmp 0x3f150
movq -0x10(%rbp), %rax
movq 0x170(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x3f03b
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: prepare_tables
STATIC void
_prepare_tables(lxw_workbook *self)
{
    lxw_worksheet *worksheet;
    lxw_sheet *sheet;
    uint32_t table_id = 0;
    uint32_t table_count = 0;

    STAILQ_FOREACH(sheet, self->sheets, list_pointers) {
        if (sheet->is_chartsheet)
            continue;
        else
            worksheet = sheet->u.worksheet;

        table_count = worksheet->table_count;

        if (table_count == 0)
            continue;

        lxw_worksheet_prepare_tables(worksheet, table_id + 1);

        table_id += table_count;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl $0x0, -0x1c(%rbp)
movl $0x0, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x3f1f3
movq -0x18(%rbp), %rax
cmpb $0x0, (%rax)
je 0x3f1ab
jmp 0x3f1e5
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movzwl 0xa0(%rax), %eax
movl %eax, -0x20(%rbp)
cmpl $0x0, -0x20(%rbp)
jne 0x3f1cd
jmp 0x3f1e5
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
addl $0x1, %esi
callq 0xc270
movl -0x20(%rbp), %eax
addl -0x1c(%rbp), %eax
movl %eax, -0x1c(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x18(%rbp)
jmp 0x3f199
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/workbook.c
// Function: workbook_set_custom_property_number
lxw_error
workbook_set_custom_property_number(lxw_workbook *self, const char *name,
                                    double value)
{
    lxw_custom_property *custom_property;

    if (!name) {
        LXW_WARN_FORMAT("workbook_set_custom_property_number(): parameter "
                        "'name' cannot be NULL.");
        return LXW_ERROR_NULL_PARAMETER_IGNORED;
    }

    if (lxw_utf8_strlen(name) > 255) {
        LXW_WARN_FORMAT("workbook_set_custom_property_number(): parameter "
                        "'name' exceeds Excel length limit of 255.");
        return LXW_ERROR_255_STRING_LENGTH_EXCEEDED;
    }

    /* Create a struct to hold the custom property. */
    custom_property = calloc(1, sizeof(struct lxw_custom_property));
    RETURN_ON_MEM_ERROR(custom_property, LXW_ERROR_MEMORY_MALLOC_FAILED);

    custom_property->name = lxw_strdup(name);
    custom_property->u.number = value;
    custom_property->type = LXW_CUSTOM_DOUBLE;

    STAILQ_INSERT_TAIL(self->custom_properties, custom_property,
                       list_pointers);

    return LXW_NO_ERROR;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movsd %xmm0, -0x20(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x3fe70
movq 0x3d1a5(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x2bd0a(%rip), %rsi     # 0x6bb67
movb $0x0, %al
callq 0xc8f0
movl $0xc, -0x4(%rbp)
jmp 0x3ff54
movq -0x18(%rbp), %rdi
callq 0xd180
cmpq $0xff, %rax
jbe 0x3fea5
movq 0x3d170(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x2bd29(%rip), %rsi     # 0x6bbbb
movb $0x0, %al
callq 0xc8f0
movl $0x14, -0x4(%rbp)
jmp 0x3ff54
movl $0x1, %edi
movl $0x38, %esi
callq 0xc870
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x3feec
movq 0x3d132(%rip), %rax     # 0x7cff8
movq (%rax), %rdi
leaq 0x26200(%rip), %rsi     # 0x660d0
leaq 0x2b779(%rip), %rdx     # 0x6b650
movl $0x981, %ecx            # imm = 0x981
movb $0x0, %al
callq 0xc8f0
movl $0x1, -0x4(%rbp)
jmp 0x3ff54
jmp 0x3feee
movq -0x18(%rbp), %rdi
callq 0xcd80
movq %rax, %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x8(%rax)
movsd -0x20(%rbp), %xmm0
movq -0x28(%rbp), %rax
movsd %xmm0, 0x10(%rax)
movq -0x28(%rbp), %rax
movl $0x2, (%rax)
movq -0x28(%rbp), %rax
movq $0x0, 0x30(%rax)
movq -0x28(%rbp), %rcx
movq -0x10(%rbp), %rax
movq 0x78(%rax), %rax
movq 0x8(%rax), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rcx
addq $0x30, %rcx
movq -0x10(%rbp), %rax
movq 0x78(%rax), %rax
movq %rcx, 0x8(%rax)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)