// File: /workspace/github_c_makefile_star2_O2/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_write_err_bars
STATIC void
_chart_write_err_bars(lxw_chart *self, lxw_series_error_bars *error_bars)
{
    if (!error_bars->is_set)
        return;

    lxw_xml_start_tag(self->file, "c:errBars", NULL);

    /* Write the c:errDir element, except for Column/Bar charts. */
    if (error_bars->chart_group != LXW_CHART_BAR
        && error_bars->chart_group != LXW_CHART_COLUMN) {

        _chart_write_err_dir(self, error_bars->is_x);
    }

    /* Write the c:errBarType element. */
    _chart_write_err_bar_type(self, error_bars->direction);

    /* Write the c:errValType element. */
    _chart_write_err_val_type(self, error_bars->type);

    /* Write the c:noEndCap element. */
    if (error_bars->endcap == LXW_CHART_ERROR_BAR_NO_CAP)
        _chart_write_no_end_cap(self);

    /* Write the c:val element. */
    if (error_bars->has_value)
        _chart_write_error_val(self, error_bars->value);

    /* Write the c:spPr element. */
    _chart_write_sp_pr(self, error_bars->line, NULL, NULL);

    lxw_xml_end_tag(self->file, "c:errBars");
}

// Assembly:
cmpb $0x0, 0x4(%rsi)
je 0x16ac6
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq (%rdi), %rdi
leaq 0x27b67(%rip), %rsi     # 0x3e3e5
xorl %edx, %edx
callq 0xc380
movzbl 0x6(%r14), %eax
cmpl $0x4, %eax
je 0x16898
cmpl $0x7, %eax
jne 0x16ac7
movb 0x1(%r14), %al
movq %rsp, %r15
andq $0x0, (%r15)
movq %r15, 0x8(%r15)
cmpb $0x2, %al
leaq 0x27b48(%rip), %rcx     # 0x3e3f8
leaq 0x27b47(%rip), %rdx     # 0x3e3fe
cmoveq %rcx, %rdx
cmpb $0x1, %al
leaq 0x278bd(%rip), %rsi     # 0x3e181
cmovneq %rdx, %rsi
leaq 0x27b7d(%rip), %rdi     # 0x3e44c
callq 0xc030
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%r15), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r15)
movq (%rbx), %rdi
leaq 0x27b0b(%rip), %rsi     # 0x3e403
movq %r15, %rdx
callq 0xcc70
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16925
movq 0x1040(%rdi), %rax
movq %rax, (%rsp)
testq %rax, %rax
jne 0x1691e
movq %r15, 0x8(%rsp)
callq 0xc0d0
jmp 0x16900
movb (%r14), %al
andq $0x0, (%rsp)
movq %r15, 0x8(%rsp)
decb %al
cmpb $0x2, %al
ja 0x1694b
movzbl %al, %eax
leaq 0x26b2a(%rip), %rcx     # 0x3d46c
movslq (%rcx,%rax,4), %rsi
addq %rcx, %rsi
jmp 0x16952
leaq 0x27ad9(%rip), %rsi     # 0x3e42b
leaq 0x27af3(%rip), %rdi     # 0x3e44c
callq 0xc030
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%rsp)
movq (%rbx), %rdi
leaq 0x27aae(%rip), %rsi     # 0x3e432
movq %r15, %rdx
callq 0xcc70
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x169b1
movq 0x1040(%rdi), %rax
movq %rax, (%rsp)
testq %rax, %rax
jne 0x169aa
movq %r15, 0x8(%rsp)
callq 0xc0d0
jmp 0x1698c
cmpb $0x1, 0x2(%r14)
jne 0x16a28
andq $0x0, (%rsp)
movq %r15, 0x8(%rsp)
leaq 0x27a83(%rip), %rdi     # 0x3e44c
leaq 0x2bd78(%rip), %rsi     # 0x42748
callq 0xc030
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%rsp)
movq (%rbx), %rdi
leaq 0x27a44(%rip), %rsi     # 0x3e43f
movq %r15, %rdx
callq 0xcc70
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16a28
movq 0x1040(%rdi), %rax
movq %rax, (%rsp)
testq %rax, %rax
jne 0x16a21
movq %r15, 0x8(%rsp)
callq 0xc0d0
jmp 0x16a03
cmpb $0x0, 0x3(%r14)
je 0x16a9e
movsd 0x8(%r14), %xmm0
andq $0x0, (%rsp)
movq %r15, 0x8(%rsp)
leaq 0x27a06(%rip), %rdi     # 0x3e44c
callq 0xccf0
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%rsp)
movq (%rbx), %rdi
leaq 0x279d9(%rip), %rsi     # 0x3e44a
movq %r15, %rdx
callq 0xcc70
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16a9e
movq 0x1040(%rdi), %rax
movq %rax, (%rsp)
testq %rax, %rax
jne 0x16a97
movq %r15, 0x8(%rsp)
callq 0xc0d0
jmp 0x16a79
movq 0x10(%r14), %rsi
movq %rbx, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x1201b
movq (%rbx), %rdi
leaq 0x2792d(%rip), %rsi     # 0x3e3e5
callq 0xc060
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
cmpb $0x0, 0x5(%r14)
movq %rsp, %r15
leaq 0x28a84(%rip), %rax     # 0x3f55a
leaq 0x2fc3c(%rip), %rsi     # 0x46719
cmoveq %rax, %rsi
movq %r15, 0x8(%r15)
andq $0x0, (%r15)
leaq 0x2795c(%rip), %rdi     # 0x3e44c
callq 0xc030
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%r15), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r15)
movq (%rbx), %rdi
leaq 0x278d6(%rip), %rsi     # 0x3e3ef
movq %r15, %rdx
callq 0xcc70
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16898
movq 0x1040(%rdi), %rax
movq %rax, (%rsp)
testq %rax, %rax
jne 0x16b43
movq %r15, 0x8(%rsp)
callq 0xc0d0
jmp 0x16b21