// File: /workspace/github_c_makefile_star2_O2/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_write_scaling
STATIC void
_chart_write_scaling(lxw_chart *self, uint8_t reverse,
                     uint8_t has_min, double min,
                     uint8_t has_max, double max, uint16_t log_base)
{
    lxw_xml_start_tag(self->file, "c:scaling", NULL);

    /* Write the c:logBase element. */
    _chart_write_log_base(self, log_base);

    /* Write the c:orientation element. */
    _chart_write_orientation(self, reverse);

    if (has_max) {
        /* Write the c:max element. */
        _chart_write_max(self, max);
    }

    if (has_min) {
        /* Write the c:min element. */
        _chart_write_min(self, min);
    }

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

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r13d
movsd %xmm1, 0x18(%rsp)
movl %ecx, %r15d
movsd %xmm0, 0x20(%rsp)
movl %edx, %ebp
movl %esi, %r12d
movq %rdi, %rbx
movq (%rdi), %rdi
leaq 0x27556(%rip), %rsi     # 0x3e4a6
xorl %edx, %edx
callq 0xc380
testl %r13d, %r13d
je 0x16fcc
leaq 0x8(%rsp), %r14
andq $0x0, (%r14)
movq %r14, 0x8(%r14)
movzwl %r13w, %esi
leaq 0x274d8(%rip), %rdi     # 0x3e44c
callq 0xc1a0
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%r14), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r14)
movq (%rbx), %rdi
leaq 0x27513(%rip), %rsi     # 0x3e4b0
movq %r14, %rdx
callq 0xcc70
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x16fcc
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x16fc5
movq %r14, 0x10(%rsp)
callq 0xc0d0
jmp 0x16fa5
leaq 0x8(%rsp), %r14
andq $0x0, (%r14)
movq %r14, 0x8(%r14)
testb %r12b, %r12b
leaq 0x274de(%rip), %rax     # 0x3e4c1
leaq 0x274d0(%rip), %rsi     # 0x3e4ba
cmoveq %rax, %rsi
leaq 0x27457(%rip), %rdi     # 0x3e44c
callq 0xc030
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x8(%r14), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r14)
movq (%rbx), %rdi
leaq 0x274aa(%rip), %rsi     # 0x3e4c8
movq %r14, %rdx
callq 0xcc70
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x1704d
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x17046
movq %r14, 0x10(%rsp)
callq 0xc0d0
jmp 0x17026
testb %r15b, %r15b
je 0x170c4
andq $0x0, 0x8(%rsp)
movq %r14, 0x10(%rsp)
leaq 0x273e8(%rip), %rdi     # 0x3e44c
movsd 0x18(%rsp), %xmm0
callq 0xccf0
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x10(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x10(%rsp)
movq (%rbx), %rdi
leaq 0x27441(%rip), %rsi     # 0x3e4d6
movq %r14, %rdx
callq 0xcc70
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x170c4
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x170bd
movq %r14, 0x10(%rsp)
callq 0xc0d0
jmp 0x1709d
testb %bpl, %bpl
je 0x1713b
andq $0x0, 0x8(%rsp)
movq %r14, 0x10(%rsp)
leaq 0x27371(%rip), %rdi     # 0x3e44c
movsd 0x20(%rsp), %xmm0
callq 0xccf0
leaq 0x1040(%rax), %rcx
andq $0x0, 0x1040(%rax)
movq 0x10(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x10(%rsp)
movq (%rbx), %rdi
leaq 0x273d0(%rip), %rsi     # 0x3e4dc
movq %r14, %rdx
callq 0xcc70
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x1713b
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x17134
movq %r14, 0x10(%rsp)
callq 0xc0d0
jmp 0x17114
movq (%rbx), %rdi
leaq 0x27361(%rip), %rsi     # 0x3e4a6
callq 0xc060
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq