// File: /workspace/github_c_makefile_star2_O0/Paxa[P]fast_excel/libxlsxwriter/src/worksheet.c
// Function: worksheet_write_cfvo_str
STATIC void
_worksheet_write_cfvo_str(lxw_worksheet *self, uint8_t rule_type,
                          char *value, uint8_t data_bar_2010)
{
    struct xml_attribute_list attributes;
    struct xml_attribute *attribute;

    LXW_INIT_ATTRIBUTES();

    if (rule_type == LXW_CONDITIONAL_RULE_TYPE_MINIMUM)
        LXW_PUSH_ATTRIBUTES_STR("type", "min");
    else if (rule_type == LXW_CONDITIONAL_RULE_TYPE_NUMBER)
        LXW_PUSH_ATTRIBUTES_STR("type", "num");
    else if (rule_type == LXW_CONDITIONAL_RULE_TYPE_PERCENT)
        LXW_PUSH_ATTRIBUTES_STR("type", "percent");
    else if (rule_type == LXW_CONDITIONAL_RULE_TYPE_PERCENTILE)
        LXW_PUSH_ATTRIBUTES_STR("type", "percentile");
    else if (rule_type == LXW_CONDITIONAL_RULE_TYPE_FORMULA)
        LXW_PUSH_ATTRIBUTES_STR("type", "formula");
    else if (rule_type == LXW_CONDITIONAL_RULE_TYPE_MAXIMUM)
        LXW_PUSH_ATTRIBUTES_STR("type", "max");

    if (!data_bar_2010 || (rule_type != LXW_CONDITIONAL_RULE_TYPE_MINIMUM
                           && rule_type != LXW_CONDITIONAL_RULE_TYPE_MAXIMUM))
        LXW_PUSH_ATTRIBUTES_STR("val", value);

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

    LXW_FREE_ATTRIBUTES();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movb %cl, %al
movb %sil, %cl
movq %rdi, -0x8(%rbp)
movb %cl, -0x9(%rbp)
movq %rdx, -0x18(%rbp)
movb %al, -0x19(%rbp)
movq $0x0, -0x30(%rbp)
leaq -0x30(%rbp), %rax
movq %rax, -0x28(%rbp)
movzbl -0x9(%rbp), %eax
cmpl $0x1, %eax
jne 0x60eac
jmp 0x60e66
leaq 0x7543(%rip), %rdi      # 0x683b0
leaq 0x64ba(%rip), %rsi      # 0x6732e
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x60ea7
jmp 0x61045
movzbl -0x9(%rbp), %eax
cmpl $0x2, %eax
jne 0x60efd
jmp 0x60eb7
leaq 0x74f2(%rip), %rdi      # 0x683b0
leaq 0xdc5c(%rip), %rsi      # 0x6eb21
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x60ef8
jmp 0x61043
movzbl -0x9(%rbp), %eax
cmpl $0x3, %eax
jne 0x60f4e
jmp 0x60f08
leaq 0x74a1(%rip), %rdi      # 0x683b0
leaq 0xdbc1(%rip), %rsi      # 0x6ead7
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x60f49
jmp 0x61041
movzbl -0x9(%rbp), %eax
cmpl $0x4, %eax
jne 0x60f9f
jmp 0x60f59
leaq 0x7450(%rip), %rdi      # 0x683b0
leaq 0xdbbe(%rip), %rsi      # 0x6eb25
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x60f9a
jmp 0x6103f
movzbl -0x9(%rbp), %eax
cmpl $0x5, %eax
jne 0x60fed
jmp 0x60faa
leaq 0x73ff(%rip), %rdi      # 0x683b0
leaq 0xd798(%rip), %rsi      # 0x6e750
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x60feb
jmp 0x6103d
movzbl -0x9(%rbp), %eax
cmpl $0x6, %eax
jne 0x6103b
jmp 0x60ff8
leaq 0x73b1(%rip), %rdi      # 0x683b0
leaq 0x6322(%rip), %rsi      # 0x67328
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x61039
jmp 0x6103b
jmp 0x6103d
jmp 0x6103f
jmp 0x61041
jmp 0x61043
jmp 0x61045
cmpb $0x0, -0x19(%rbp)
je 0x6105d
movzbl -0x9(%rbp), %eax
cmpl $0x1, %eax
je 0x6109f
movzbl -0x9(%rbp), %eax
cmpl $0x6, %eax
je 0x6109f
jmp 0x6105f
movq -0x18(%rbp), %rsi
leaq 0x6232(%rip), %rdi      # 0x6729c
callq 0xc030
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq $0x0, 0x1040(%rax)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
addq $0x1040, %rax           # imm = 0x1040
movq %rax, -0x28(%rbp)
jmp 0x6109d
jmp 0x6109f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
leaq 0xdf6c(%rip), %rsi      # 0x6f019
leaq -0x30(%rbp), %rdx
callq 0xcca0
jmp 0x610b8
cmpq $0x0, -0x30(%rbp)
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x610c8
jmp 0x610fa
movq -0x30(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x1040(%rax), %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, %rax
jne 0x610ed
leaq -0x30(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x610ef
movq -0x38(%rbp), %rdi
callq 0xc0d0
jmp 0x610b8
jmp 0x610fc
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)