// File: demon386[P]git-store/./libs/program_options/src/options_description.cpp
// Function: boost::program_options::(anonymous namespace)::format_one(std::ostream&, boost::program_options::option_description const&, unsigned int, unsigned int)
void format_one(std::ostream& os, const option_description& opt, 
                        unsigned first_column_width, unsigned line_length)
        {
            stringstream ss;
            ss << "  " << opt.format_name() << ' ' << opt.format_parameter();
            
            // Don't use ss.rdbuf() since g++ 2.96 is buggy on it.
            os << ss.str();

            if (!opt.description().empty())
            {
                if (ss.str().size() >= first_column_width)
                {
                   os.put('\n'); // first column is too long, lets put description in new line
                   for (unsigned pad = first_column_width; pad > 0; --pad)
                   {
                      os.put(' ');
                   }
                } else {
                   for(unsigned pad = first_column_width - static_cast<unsigned>(ss.str().size()); pad > 0; --pad)
                   {
                      os.put(' ');
                   }
                }
            
                format_description(os, opt.description(),
                                   first_column_width, line_length);
            }
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2a0, %rsp            # imm = 0x2A0
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
leaq -0x1a0(%rbp), %rdi
callq 0xd440
leaq -0x190(%rbp), %rdi
leaq 0x3a9a7(%rip), %rsi     # 0x6047a
callq 0xd610
movq %rax, -0x260(%rbp)
jmp 0x25ae1
movq -0x10(%rbp), %rsi
leaq -0x1d0(%rbp), %rdi
callq 0x24900
jmp 0x25af3
movq -0x260(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
callq 0xd570
movq %rax, -0x268(%rbp)
jmp 0x25b0f
movq -0x268(%rbp), %rdi
movl $0x20, %esi
callq 0xd740
movq %rax, -0x270(%rbp)
jmp 0x25b29
movq -0x10(%rbp), %rsi
leaq -0x1f0(%rbp), %rdi
callq 0x24af0
jmp 0x25b3b
movq -0x270(%rbp), %rdi
leaq -0x1f0(%rbp), %rsi
callq 0xd570
jmp 0x25b50
leaq -0x1f0(%rbp), %rdi
callq 0xdca8
leaq -0x1d0(%rbp), %rdi
callq 0xdca8
movq -0x8(%rbp), %rax
movq %rax, -0x278(%rbp)
leaq -0x210(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0xd600
jmp 0x25b88
movq -0x278(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0xd570
jmp 0x25b9d
leaq -0x210(%rbp), %rdi
callq 0xdca8
movq -0x10(%rbp), %rdi
callq 0x248b0
movq %rax, %rdi
callq 0xdab0
testb $0x1, %al
jne 0x25d90
leaq -0x230(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0xd600
jmp 0x25bd7
leaq -0x230(%rbp), %rdi
callq 0xd430
movq %rax, -0x280(%rbp)
movl -0x14(%rbp), %eax
movq %rax, -0x288(%rbp)
leaq -0x230(%rbp), %rdi
callq 0xdca8
movq -0x288(%rbp), %rcx
movq -0x280(%rbp), %rax
cmpq %rcx, %rax
jb 0x25ce2
movq -0x8(%rbp), %rdi
movl $0xa, %esi
callq 0xd040
jmp 0x25c27
movl -0x14(%rbp), %eax
movl %eax, -0x234(%rbp)
cmpl $0x0, -0x234(%rbp)
jbe 0x25cdd
movq -0x8(%rbp), %rdi
movl $0x20, %esi
callq 0xd040
jmp 0x25c4d
jmp 0x25c4f
movl -0x234(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x234(%rbp)
jmp 0x25c30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
jmp 0x25da5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
jmp 0x25ca9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
leaq -0x1f0(%rbp), %rdi
callq 0xdca8
leaq -0x1d0(%rbp), %rdi
callq 0xdca8
jmp 0x25da5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
leaq -0x210(%rbp), %rdi
callq 0xdca8
jmp 0x25da5
jmp 0x25d63
movl -0x14(%rbp), %eax
movl %eax, -0x28c(%rbp)
leaq -0x258(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0xd600
jmp 0x25d00
leaq -0x258(%rbp), %rdi
callq 0xd430
movq %rax, %rcx
movl -0x28c(%rbp), %eax
subl %ecx, %eax
movl %eax, -0x290(%rbp)
leaq -0x258(%rbp), %rdi
callq 0xdca8
movl -0x290(%rbp), %eax
movl %eax, -0x238(%rbp)
cmpl $0x0, -0x238(%rbp)
jbe 0x25d61
movq -0x8(%rbp), %rdi
movl $0x20, %esi
callq 0xd040
jmp 0x25d4e
jmp 0x25d50
movl -0x238(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x238(%rbp)
jmp 0x25d35
jmp 0x25d63
movq -0x8(%rbp), %rax
movq %rax, -0x298(%rbp)
movq -0x10(%rbp), %rdi
callq 0x248b0
movq -0x298(%rbp), %rdi
movq %rax, %rsi
movl -0x14(%rbp), %edx
movl -0x18(%rbp), %ecx
callq 0x25dc0
jmp 0x25d8e
jmp 0x25d90
leaq -0x1a0(%rbp), %rdi
callq 0xd490
addq $0x2a0, %rsp            # imm = 0x2A0
popq %rbp
retq
leaq -0x1a0(%rbp), %rdi
callq 0xd490
movq -0x1a8(%rbp), %rdi
callq 0xdb30
nopl (%rax)