// File: demon386[P]git-store/./libs/program_options/src/options_description.cpp
// Function: boost::program_options::option_description::canonical_display_name[abi:cxx11](int) const
std::string 
    option_description::canonical_display_name(int prefix_style) const
    {
        if (!m_long_name.empty()) 
        {
            if (prefix_style == command_line_style::allow_long)
                return "--" + m_long_name;
            if (prefix_style == command_line_style::allow_long_disguise)
                return "-" + m_long_name;
        }
        // sanity check: m_short_name[0] should be '-' or '/'
        if (m_short_name.length() == 2)
        {
            if (prefix_style == command_line_style::allow_slash_for_short)
                return string("/") + m_short_name[1];
            if (prefix_style == command_line_style::allow_dash_for_short)
                return string("-") + m_short_name[1];
        }
        if (!m_long_name.empty()) 
            return m_long_name;
        else
            return m_short_name;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x90(%rbp)
movq %rdi, %rax
movq %rax, -0x88(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movq -0x10(%rbp), %rdi
movq %rdi, -0x80(%rbp)
addq $0x28, %rdi
callq 0xdab0
testb $0x1, %al
jne 0x246dd
cmpl $0x1, -0x14(%rbp)
jne 0x246b2
movq -0x90(%rbp), %rdi
movq -0x80(%rbp), %rdx
addq $0x28, %rdx
leaq 0x3bcd0(%rip), %rsi     # 0x60378
callq 0x267b0
jmp 0x2486f
cmpl $0x1000, -0x14(%rbp)    # imm = 0x1000
jne 0x246db
movq -0x90(%rbp), %rdi
movq -0x80(%rbp), %rdx
addq $0x28, %rdx
leaq 0x3bca8(%rip), %rsi     # 0x60379
callq 0x267b0
jmp 0x2486f
jmp 0x246dd
movq -0x80(%rbp), %rdi
addq $0x8, %rdi
callq 0xd9b0
cmpq $0x2, %rax
jne 0x24834
cmpl $0x8, -0x14(%rbp)
jne 0x24796
leaq -0x39(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0xdb50
movq -0x98(%rbp), %rdx
leaq 0x3d934(%rip), %rsi     # 0x62050
leaq -0x38(%rbp), %rdi
callq 0xd8b0
jmp 0x24727
movq -0x80(%rbp), %rdi
addq $0x8, %rdi
movl $0x1, %esi
callq 0xd6d0
movq -0x90(%rbp), %rdi
movsbl (%rax), %edx
leaq -0x38(%rbp), %rsi
callq 0x13040
jmp 0x2474e
leaq -0x38(%rbp), %rdi
callq 0xdca8
leaq -0x39(%rbp), %rdi
callq 0xd6b0
jmp 0x2486f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x24788
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x38(%rbp), %rdi
callq 0xdca8
leaq -0x39(%rbp), %rdi
callq 0xd6b0
jmp 0x2487f
cmpl $0x4, -0x14(%rbp)
jne 0x24832
leaq -0x71(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0xdb50
movq -0xa0(%rbp), %rdx
leaq 0x3bbbb(%rip), %rsi     # 0x60379
leaq -0x70(%rbp), %rdi
callq 0xd8b0
jmp 0x247c9
movq -0x80(%rbp), %rdi
addq $0x8, %rdi
movl $0x1, %esi
callq 0xd6d0
movq -0x90(%rbp), %rdi
movsbl (%rax), %edx
leaq -0x70(%rbp), %rsi
callq 0x13040
jmp 0x247f0
leaq -0x70(%rbp), %rdi
callq 0xdca8
leaq -0x71(%rbp), %rdi
callq 0xd6b0
jmp 0x2486f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x24827
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x70(%rbp), %rdi
callq 0xdca8
leaq -0x71(%rbp), %rdi
callq 0xd6b0
jmp 0x2487f
jmp 0x24834
movq -0x80(%rbp), %rdi
addq $0x28, %rdi
callq 0xdab0
testb $0x1, %al
jne 0x2485b
movq -0x90(%rbp), %rdi
movq -0x80(%rbp), %rsi
addq $0x28, %rsi
callq 0xd230
jmp 0x2486f
movq -0x90(%rbp), %rdi
movq -0x80(%rbp), %rsi
addq $0x8, %rsi
callq 0xd230
movq -0x88(%rbp), %rax
addq $0xa0, %rsp
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0xdb30
nopl (%rax,%rax)