// File: meirdev[P]HexViewer/./CLI11.hpp
// Function: CLI::Option* CLI::App::add_flag<bool, (CLI::detail::enabler)0>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
Option *add_flag(std::string flag_name,
                     T &flag_count, ///< A variable holding true if passed
                     std::string description = "") {

        flag_count = false;
        CLI::callback_t fun = [&flag_count](CLI::results_t res) {
            flag_count = true;
            return res.size() == 1;
        };

        Option *opt = add_option(flag_name, fun, description, false);
        if(opt->get_positional())
            throw IncorrectConstruction::PositionalFlag(flag_name);
        opt->type_size(0);
        opt->multi_option_policy(CLI::MultiOptionPolicy::TakeLast);
        return opt;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x120, %rsp            # imm = 0x120
movq %rsi, -0xf0(%rbp)
movq %rcx, -0x100(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xf8(%rbp)
movq -0x18(%rbp), %rax
movb $0x0, (%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq -0x40(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x39250
movq -0xf0(%rbp), %rsi
leaq -0x70(%rbp), %rdi
callq 0x61d0
jmp 0xa0b2
leaq -0xa0(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x19b90
jmp 0xa0c4
movq -0x100(%rbp), %rsi
leaq -0xc0(%rbp), %rdi
callq 0x61d0
jmp 0xa0d9
movq -0xf8(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0xa0(%rbp), %rdx
leaq -0xc0(%rbp), %rcx
xorl %r8d, %r8d
callq 0x196d0
movq %rax, -0x108(%rbp)
jmp 0xa103
leaq -0xc0(%rbp), %rdi
callq 0x6280
leaq -0xa0(%rbp), %rdi
callq 0x190f0
leaq -0x70(%rbp), %rdi
callq 0x6280
movq -0x108(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rdi
callq 0x19c40
testb $0x1, %al
jne 0xa141
jmp 0xa244
movb $0x1, -0xe1(%rbp)
movl $0x38, %edi
callq 0x6200
movq -0xf0(%rbp), %rsi
movq %rax, -0x110(%rbp)
leaq -0xe0(%rbp), %rdi
callq 0x61d0
jmp 0xa16e
movq -0x110(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x19c70
jmp 0xa183
movq -0x110(%rbp), %rdi
movb $0x0, -0xe1(%rbp)
leaq 0x533e0(%rip), %rsi     # 0x5d578
leaq 0xfb41(%rip), %rdx      # 0x19ce0
callq 0x6700
jmp 0xa295
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xa283
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xa1fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xa1ee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0xc0(%rbp), %rdi
callq 0x6280
leaq -0xa0(%rbp), %rdi
callq 0x190f0
leaq -0x70(%rbp), %rdi
callq 0x6280
jmp 0xa283
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
jmp 0xa22b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x78(%rbp)
movl %eax, -0x7c(%rbp)
leaq -0xe0(%rbp), %rdi
callq 0x6280
testb $0x1, -0xe1(%rbp)
jne 0xa236
jmp 0xa242
movq -0x110(%rbp), %rdi
callq 0x6310
jmp 0xa283
movq -0x50(%rbp), %rdi
xorl %esi, %esi
callq 0x19d00
movq -0x50(%rbp), %rdi
movl $0x1, %esi
callq 0x213e0
jmp 0xa25f
movq -0x50(%rbp), %rax
movq %rax, -0x118(%rbp)
leaq -0x40(%rbp), %rdi
callq 0x190f0
movq -0x118(%rbp), %rax
addq $0x120, %rsp            # imm = 0x120
popq %rbp
retq
leaq -0x40(%rbp), %rdi
callq 0x190f0
movq -0x78(%rbp), %rdi
callq 0x6750
nopw %cs:(%rax,%rax)
nop