// File: yeonnic[P]solparser/././argx.hpp
// Function: args::ArgumentParser::Help(std::ostream&) const
void Help(std::ostream &help_) const
            {
                auto &command = SelectedCommand();
                const auto &commandDescription = command.Description().empty() ? command.Help() : command.Description();
                const auto description_text = Wrap(commandDescription, helpParams.width - helpParams.descriptionindent);
                const auto epilog_text = Wrap(command.Epilog(), helpParams.width - helpParams.descriptionindent);

                const bool hasoptions = command.HasFlag();
                const bool hasarguments = command.HasPositional();

                std::vector<std::string> prognameline;
                prognameline.push_back(helpParams.usageString);
                prognameline.push_back(Prog());
                auto commandProgLine = command.GetProgramLine(helpParams);
                prognameline.insert(prognameline.end(), commandProgLine.begin(), commandProgLine.end());

                const auto proglines = Wrap(prognameline.begin(), prognameline.end(),
                                            helpParams.width - (helpParams.progindent + helpParams.progtailindent),
                                            helpParams.width - helpParams.progindent);
                auto progit = std::begin(proglines);
                if (progit != std::end(proglines))
                {
                    help_ << std::string(helpParams.progindent, ' ') << *progit << '\n';
                    ++progit;
                }
                for (; progit != std::end(proglines); ++progit)
                {
                    help_ << std::string(helpParams.progtailindent, ' ') << *progit << '\n';
                }

                help_ << '\n';

                if (!description_text.empty())
                {
                    for (const auto &line: description_text)
                    {
                        help_ << std::string(helpParams.descriptionindent, ' ') << line << "\n";
                    }
                    help_ << "\n";
                }

                bool lastDescriptionIsNewline = false;

                if (!helpParams.optionsString.empty())
                {
                    help_ << std::string(helpParams.progindent, ' ') << helpParams.optionsString << "\n\n";
                }

                for (const auto &desc: command.GetDescription(helpParams, 0))
                {
                    lastDescriptionIsNewline = std::get<0>(desc).empty() && std::get<1>(desc).empty();
                    const auto groupindent = std::get<2>(desc) * helpParams.eachgroupindent;
                    const auto flags = Wrap(std::get<0>(desc), helpParams.width - (helpParams.flagindent + helpParams.helpindent + helpParams.gutter));
                    const auto info = Wrap(std::get<1>(desc), helpParams.width - (helpParams.helpindent + groupindent));

                    std::string::size_type flagssize = 0;
                    for (auto flagsit = std::begin(flags); flagsit != std::end(flags); ++flagsit)
                    {
                        if (flagsit != std::begin(flags))
                        {
                            help_ << '\n';
                        }
                        help_ << std::string(groupindent + helpParams.flagindent, ' ') << *flagsit;
                        flagssize = Glyphs(*flagsit);
                    }

                    auto infoit = std::begin(info);
                    // groupindent is on both sides of this inequality, and therefore can be removed
                    if ((helpParams.flagindent + flagssize + helpParams.gutter) > helpParams.helpindent || infoit == std::end(info) || helpParams.addNewlineBeforeDescription)
                    {
                        help_ << '\n';
                    } else
                    {
                        // groupindent is on both sides of the minus sign, and therefore doesn't actually need to be in here
                        help_ << std::string(helpParams.helpindent - (helpParams.flagindent + flagssize), ' ') << *infoit << '\n';
                        ++infoit;
                    }
                    for (; infoit != std::end(info); ++infoit)
                    {
                        help_ << std::string(groupindent + helpParams.helpindent, ' ') << *infoit << '\n';
                    }
                }
                if (hasoptions && hasarguments && helpParams.showTerminator)
                {
                    lastDescriptionIsNewline = false;
                    for (const auto &item: Wrap(std::string("\"") + terminator + "\" can be used to terminate flag options and force all following arguments to be treated as positional options", helpParams.width - helpParams.flagindent))
                    {
                        help_ << std::string(helpParams.flagindent, ' ') << item << '\n';
                    }
                }

                if (!lastDescriptionIsNewline)
                {
                    help_ << "\n";
                }

                for (const auto &line: epilog_text)
                {
                    help_ << std::string(helpParams.descriptionindent, ' ') << line << "\n";
                }
            }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x5b0, %rsp            # imm = 0x5B0
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x3f0(%rbp)
callq 0x2d380
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0x162b0
movq %rax, %rdi
callq 0x65c0
testb $0x1, %al
jne 0x2c01e
jmp 0x2c030
movq -0x18(%rbp), %rdi
callq 0x162d0
movq %rax, -0x3f8(%rbp)
jmp 0x2c040
movq -0x18(%rbp), %rdi
callq 0x162b0
movq %rax, -0x3f8(%rbp)
movq -0x3f0(%rbp), %rcx
movq -0x3f8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rsi
movl 0x210(%rcx), %eax
movl 0x21c(%rcx), %ecx
subl %ecx, %eax
movl %eax, %edx
xorl %eax, %eax
movl %eax, %ecx
movq %rcx, -0x400(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x2d3c0
movq -0x18(%rbp), %rdi
callq 0x16360
movq -0x3f0(%rbp), %rdx
movq -0x400(%rbp), %rcx
movq %rax, %rsi
movl 0x210(%rdx), %eax
movl 0x21c(%rdx), %edx
subl %edx, %eax
movl %eax, %edx
leaq -0x50(%rbp), %rdi
callq 0x2d3c0
jmp 0x2c0af
movq -0x18(%rbp), %rdi
movq (%rdi), %rax
movq 0x50(%rax), %rax
callq *%rax
movb %al, -0x401(%rbp)
jmp 0x2c0c4
movb -0x401(%rbp), %al
andb $0x1, %al
movb %al, -0x5d(%rbp)
movq -0x18(%rbp), %rdi
movq (%rdi), %rax
movq 0x58(%rax), %rax
callq *%rax
movb %al, -0x402(%rbp)
jmp 0x2c0e4
movb -0x402(%rbp), %al
andb $0x1, %al
movb %al, -0x5e(%rbp)
leaq -0x78(%rbp), %rdi
movq %rdi, -0x410(%rbp)
callq 0xb7d0
movq -0x3f0(%rbp), %rsi
movq -0x410(%rbp), %rdi
addq $0x3e8, %rsi            # imm = 0x3E8
callq 0x16a30
jmp 0x2c11b
movq -0x3f0(%rbp), %rdi
callq 0x22ed0
movq %rax, %rsi
leaq -0x78(%rbp), %rdi
callq 0x16a30
jmp 0x2c135
movq -0x3f0(%rbp), %rdx
movq -0x18(%rbp), %rsi
addq $0x210, %rdx            # imm = 0x210
movq (%rsi), %rax
movq 0x68(%rax), %rax
leaq -0x90(%rbp), %rdi
callq *%rax
jmp 0x2c159
leaq -0x78(%rbp), %rdi
movq %rdi, -0x420(%rbp)
callq 0x14490
movq %rax, -0xa0(%rbp)
leaq -0x98(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x13bd0
leaq -0x90(%rbp), %rdi
movq %rdi, -0x428(%rbp)
callq 0x13da0
movq -0x428(%rbp), %rdi
movq %rax, -0xa8(%rbp)
callq 0x14490
movq -0x420(%rbp), %rdi
movq %rax, -0xb0(%rbp)
movq -0x98(%rbp), %rsi
movq -0xa8(%rbp), %rdx
movq -0xb0(%rbp), %rcx
callq 0x16610
movq %rax, -0x418(%rbp)
jmp 0x2c1da
movq -0x418(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq -0x78(%rbp), %rdi
movq %rdi, -0x430(%rbp)
callq 0x13da0
movq -0x430(%rbp), %rdi
movq %rax, -0xd8(%rbp)
callq 0x14490
movq -0x3f0(%rbp), %rcx
movq %rax, -0xe0(%rbp)
movl 0x210(%rcx), %eax
movl 0x214(%rcx), %edx
movl 0x218(%rcx), %ecx
movl %edx, %esi
addl %ecx, %esi
movl %eax, %ecx
subl %esi, %ecx
subl %edx, %eax
movl %eax, %r8d
movq -0xd8(%rbp), %rsi
movq -0xe0(%rbp), %rdx
xorl %eax, %eax
movl %eax, %r9d
leaq -0xd0(%rbp), %rdi
callq 0x2d7d0
jmp 0x2c259
leaq -0xd0(%rbp), %rdi
callq 0x23380
movq %rax, -0xe8(%rbp)
leaq -0xd0(%rbp), %rdi
callq 0x23050
movq %rax, -0xf0(%rbp)
leaq -0xe8(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2c29b
jmp 0x2c3e2
movq -0x3f0(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, -0x448(%rbp)
movl 0x214(%rax), %eax
movq %rax, -0x440(%rbp)
leaq -0x111(%rbp), %rdi
movq %rdi, -0x438(%rbp)
callq 0x6630
movq -0x440(%rbp), %rsi
movq -0x438(%rbp), %rcx
leaq -0x110(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2c2ee
movq -0x448(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x62d0
movq %rax, -0x450(%rbp)
jmp 0x2c30a
leaq -0xe8(%rbp), %rdi
callq 0x206c0
movq -0x450(%rbp), %rdi
movq %rax, %rsi
callq 0x62d0
movq %rax, -0x458(%rbp)
jmp 0x2c32e
movq -0x458(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2c341
leaq -0x110(%rbp), %rdi
callq 0x61f0
leaq -0x111(%rbp), %rdi
callq 0x6390
leaq -0xe8(%rbp), %rdi
callq 0x206e0
jmp 0x2c3e2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d36c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d363
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d35a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d34e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2c3d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x61f0
leaq -0x111(%rbp), %rdi
callq 0x6390
jmp 0x2d342
jmp 0x2c3e4
leaq -0xd0(%rbp), %rdi
callq 0x23050
movq %rax, -0x120(%rbp)
leaq -0xe8(%rbp), %rdi
leaq -0x120(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2c413
jmp 0x2c519
movq -0x3f0(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, -0x470(%rbp)
movl 0x218(%rax), %eax
movq %rax, -0x468(%rbp)
leaq -0x141(%rbp), %rdi
movq %rdi, -0x460(%rbp)
callq 0x6630
movq -0x468(%rbp), %rsi
movq -0x460(%rbp), %rcx
leaq -0x140(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2c466
movq -0x470(%rbp), %rdi
leaq -0x140(%rbp), %rsi
callq 0x62d0
movq %rax, -0x478(%rbp)
jmp 0x2c482
leaq -0xe8(%rbp), %rdi
callq 0x206c0
movq -0x478(%rbp), %rdi
movq %rax, %rsi
callq 0x62d0
movq %rax, -0x480(%rbp)
jmp 0x2c4a6
movq -0x480(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2c4b9
leaq -0x140(%rbp), %rdi
callq 0x61f0
leaq -0x141(%rbp), %rdi
callq 0x6390
leaq -0xe8(%rbp), %rdi
callq 0x206e0
jmp 0x2c3e4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2c508
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x61f0
leaq -0x141(%rbp), %rdi
callq 0x6390
jmp 0x2d342
movq -0x10(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2c529
leaq -0x38(%rbp), %rdi
callq 0x272e0
testb $0x1, %al
jne 0x2c6c2
leaq -0x38(%rbp), %rax
movq %rax, -0x150(%rbp)
movq -0x150(%rbp), %rdi
callq 0x20620
movq %rax, -0x158(%rbp)
movq -0x150(%rbp), %rdi
callq 0x20650
movq %rax, -0x160(%rbp)
leaq -0x158(%rbp), %rdi
leaq -0x160(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2c587
jmp 0x2c6ae
leaq -0x158(%rbp), %rdi
callq 0x206c0
movq %rax, %rcx
movq -0x3f0(%rbp), %rax
movq %rcx, -0x168(%rbp)
movq -0x10(%rbp), %rcx
movq %rcx, -0x498(%rbp)
movl 0x21c(%rax), %eax
movq %rax, -0x490(%rbp)
leaq -0x189(%rbp), %rdi
movq %rdi, -0x488(%rbp)
callq 0x6630
movq -0x490(%rbp), %rsi
movq -0x488(%rbp), %rcx
leaq -0x188(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2c5f0
movq -0x498(%rbp), %rdi
leaq -0x188(%rbp), %rsi
callq 0x62d0
movq %rax, -0x4a0(%rbp)
jmp 0x2c60c
movq -0x4a0(%rbp), %rdi
movq -0x168(%rbp), %rsi
callq 0x62d0
movq %rax, -0x4a8(%rbp)
jmp 0x2c628
movq -0x4a8(%rbp), %rdi
leaq 0xaeae(%rip), %rsi      # 0x374e4
callq 0x6320
jmp 0x2c63d
leaq -0x188(%rbp), %rdi
callq 0x61f0
leaq -0x189(%rbp), %rdi
callq 0x6390
leaq -0x158(%rbp), %rdi
callq 0x206e0
jmp 0x2c56b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d342
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2c69d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x188(%rbp), %rdi
callq 0x61f0
leaq -0x189(%rbp), %rdi
callq 0x6390
jmp 0x2d342
movq -0x10(%rbp), %rdi
leaq 0xae2b(%rip), %rsi      # 0x374e4
callq 0x6320
jmp 0x2c6c0
jmp 0x2c6c2
movq -0x3f0(%rbp), %rdi
movb $0x0, -0x18a(%rbp)
addq $0x210, %rdi            # imm = 0x210
addq $0x1f8, %rdi            # imm = 0x1F8
callq 0x65c0
testb $0x1, %al
jne 0x2c7e3
movq -0x3f0(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, -0x4c0(%rbp)
movl 0x214(%rax), %eax
movq %rax, -0x4b8(%rbp)
leaq -0x1b1(%rbp), %rdi
movq %rdi, -0x4b0(%rbp)
callq 0x6630
movq -0x4b8(%rbp), %rsi
movq -0x4b0(%rbp), %rcx
leaq -0x1b0(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2c73e
movq -0x4c0(%rbp), %rdi
leaq -0x1b0(%rbp), %rsi
callq 0x62d0
movq %rax, -0x4c8(%rbp)
jmp 0x2c75a
movq -0x4c8(%rbp), %rdi
movq -0x3f0(%rbp), %rsi
addq $0x408, %rsi            # imm = 0x408
callq 0x62d0
movq %rax, -0x4d0(%rbp)
jmp 0x2c77d
movq -0x4d0(%rbp), %rdi
leaq 0xad58(%rip), %rsi      # 0x374e3
callq 0x6320
jmp 0x2c792
leaq -0x1b0(%rbp), %rdi
callq 0x61f0
leaq -0x1b1(%rbp), %rdi
callq 0x6390
jmp 0x2c7e3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2c7d2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1b0(%rbp), %rdi
callq 0x61f0
leaq -0x1b1(%rbp), %rdi
callq 0x6390
jmp 0x2d342
movq -0x3f0(%rbp), %rdx
movq -0x18(%rbp), %rsi
addq $0x210, %rdx            # imm = 0x210
movq (%rsi), %rax
movq 0x20(%rax), %rax
leaq -0x1d8(%rbp), %rdi
xorl %ecx, %ecx
callq *%rax
jmp 0x2c809
leaq -0x1d8(%rbp), %rax
movq %rax, -0x1c0(%rbp)
movq -0x1c0(%rbp), %rdi
callq 0xe660
movq %rax, -0x1e0(%rbp)
movq -0x1c0(%rbp), %rdi
callq 0xe2e0
movq %rax, -0x1e8(%rbp)
leaq -0x1e0(%rbp), %rdi
leaq -0x1e8(%rbp), %rsi
callq 0x162f0
testb $0x1, %al
jne 0x2c865
leaq -0x1d8(%rbp), %rdi
callq 0xdfe0
jmp 0x2cea3
leaq -0x1e0(%rbp), %rdi
callq 0xfe90
movq %rax, -0x1f0(%rbp)
movq -0x1f0(%rbp), %rdi
callq 0x2da50
movq %rax, %rdi
callq 0x65c0
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x4d1(%rbp)
jne 0x2c89d
jmp 0x2c8b7
movq -0x1f0(%rbp), %rdi
callq 0x2da70
movq %rax, %rdi
callq 0x65c0
movb %al, -0x4d1(%rbp)
movb -0x4d1(%rbp), %al
andb $0x1, %al
movb %al, -0x18a(%rbp)
movq -0x1f0(%rbp), %rdi
callq 0x2da90
movq -0x3f0(%rbp), %rcx
movl (%rax), %eax
movl 0x228(%rcx), %ecx
imull %ecx, %eax
movl %eax, -0x1f4(%rbp)
movq -0x1f0(%rbp), %rdi
callq 0x2da50
movq -0x3f0(%rbp), %rdx
movq %rax, %rsi
movl 0x210(%rdx), %eax
movl 0x220(%rdx), %ecx
movl 0x224(%rdx), %edi
addl %edi, %ecx
movl 0x22c(%rdx), %edx
addl %edx, %ecx
subl %ecx, %eax
movl %eax, %edx
xorl %eax, %eax
movl %eax, %ecx
leaq -0x210(%rbp), %rdi
callq 0x2d3c0
jmp 0x2c931
movq -0x1f0(%rbp), %rdi
callq 0x2da70
movq -0x3f0(%rbp), %rcx
movq %rax, %rsi
movl 0x210(%rcx), %eax
movl 0x224(%rcx), %ecx
movl -0x1f4(%rbp), %edx
addl %edx, %ecx
subl %ecx, %eax
movl %eax, %edx
xorl %eax, %eax
movl %eax, %ecx
leaq -0x228(%rbp), %rdi
callq 0x2d3c0
jmp 0x2c971
movq $0x0, -0x230(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x23380
movq %rax, -0x238(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x23050
movq %rax, -0x240(%rbp)
leaq -0x238(%rbp), %rdi
leaq -0x240(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2c9be
jmp 0x2cb4e
leaq -0x210(%rbp), %rdi
callq 0x23380
movq %rax, -0x248(%rbp)
leaq -0x238(%rbp), %rdi
leaq -0x248(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2c9ea
jmp 0x2ca2f
movq -0x10(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2c9fa
jmp 0x2ca2f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2ce92
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2ce86
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2ce7a
movq -0x3f0(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rax, -0x4f0(%rbp)
movl -0x1f4(%rbp), %eax
movl 0x220(%rcx), %ecx
addl %ecx, %eax
movq %rax, -0x4e8(%rbp)
leaq -0x269(%rbp), %rdi
movq %rdi, -0x4e0(%rbp)
callq 0x6630
movq -0x4e8(%rbp), %rsi
movq -0x4e0(%rbp), %rcx
leaq -0x268(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2ca8a
movq -0x4f0(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0x62d0
movq %rax, -0x4f8(%rbp)
jmp 0x2caa6
leaq -0x238(%rbp), %rdi
callq 0x206c0
movq -0x4f8(%rbp), %rdi
movq %rax, %rsi
callq 0x62d0
jmp 0x2cac3
leaq -0x268(%rbp), %rdi
callq 0x61f0
leaq -0x269(%rbp), %rdi
callq 0x6390
leaq -0x238(%rbp), %rdi
callq 0x206c0
movq %rax, %rdi
callq 0x2dab0
movq %rax, -0x500(%rbp)
jmp 0x2caf8
movq -0x500(%rbp), %rax
movq %rax, -0x230(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x206e0
jmp 0x2c98f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2cb3d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x268(%rbp), %rdi
callq 0x61f0
leaq -0x269(%rbp), %rdi
callq 0x6390
jmp 0x2ce7a
leaq -0x228(%rbp), %rdi
callq 0x23380
movq %rax, %rcx
movq -0x3f0(%rbp), %rax
movq %rcx, -0x278(%rbp)
movl 0x220(%rax), %ecx
addq -0x230(%rbp), %rcx
movl 0x22c(%rax), %edx
addq %rdx, %rcx
movl 0x224(%rax), %eax
movl %eax, %edx
movb $0x1, %al
cmpq %rdx, %rcx
movb %al, -0x501(%rbp)
ja 0x2cbde
leaq -0x228(%rbp), %rdi
callq 0x23050
movq %rax, -0x280(%rbp)
leaq -0x278(%rbp), %rdi
leaq -0x280(%rbp), %rsi
callq 0x22fb0
movb %al, %cl
movb $0x1, %al
testb $0x1, %cl
movb %al, -0x501(%rbp)
jne 0x2cbde
movq -0x3f0(%rbp), %rax
movb 0x42a(%rax), %al
movb %al, -0x501(%rbp)
movb -0x501(%rbp), %al
testb $0x1, %al
jne 0x2cbea
jmp 0x2cbff
movq -0x10(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2cbfa
jmp 0x2cd15
movq -0x3f0(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, -0x520(%rbp)
movl 0x220(%rax), %ecx
movl 0x224(%rax), %eax
movq -0x230(%rbp), %rdx
addq %rdx, %rcx
subq %rcx, %rax
movq %rax, -0x518(%rbp)
leaq -0x2a1(%rbp), %rdi
movq %rdi, -0x510(%rbp)
callq 0x6630
movq -0x518(%rbp), %rsi
movq -0x510(%rbp), %rcx
leaq -0x2a0(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2cc65
movq -0x520(%rbp), %rdi
leaq -0x2a0(%rbp), %rsi
callq 0x62d0
movq %rax, -0x528(%rbp)
jmp 0x2cc81
leaq -0x278(%rbp), %rdi
callq 0x206c0
movq -0x528(%rbp), %rdi
movq %rax, %rsi
callq 0x62d0
movq %rax, -0x530(%rbp)
jmp 0x2cca5
movq -0x530(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2ccb8
leaq -0x2a0(%rbp), %rdi
callq 0x61f0
leaq -0x2a1(%rbp), %rdi
callq 0x6390
leaq -0x278(%rbp), %rdi
callq 0x206e0
jmp 0x2cd15
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2cd04
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2a0(%rbp), %rdi
callq 0x61f0
leaq -0x2a1(%rbp), %rdi
callq 0x6390
jmp 0x2ce7a
jmp 0x2cd17
leaq -0x228(%rbp), %rdi
callq 0x23050
movq %rax, -0x2b0(%rbp)
leaq -0x278(%rbp), %rdi
leaq -0x2b0(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2cd46
jmp 0x2ce51
movq -0x3f0(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rax, -0x548(%rbp)
movl -0x1f4(%rbp), %eax
movl 0x224(%rcx), %ecx
addl %ecx, %eax
movq %rax, -0x540(%rbp)
leaq -0x2d1(%rbp), %rdi
movq %rdi, -0x538(%rbp)
callq 0x6630
movq -0x540(%rbp), %rsi
movq -0x538(%rbp), %rcx
leaq -0x2d0(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2cda1
movq -0x548(%rbp), %rdi
leaq -0x2d0(%rbp), %rsi
callq 0x62d0
movq %rax, -0x550(%rbp)
jmp 0x2cdbd
leaq -0x278(%rbp), %rdi
callq 0x206c0
movq -0x550(%rbp), %rdi
movq %rax, %rsi
callq 0x62d0
movq %rax, -0x558(%rbp)
jmp 0x2cde1
movq -0x558(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2cdf4
leaq -0x2d0(%rbp), %rdi
callq 0x61f0
leaq -0x2d1(%rbp), %rdi
callq 0x6390
leaq -0x278(%rbp), %rdi
callq 0x206e0
jmp 0x2cd17
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2ce43
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2d0(%rbp), %rdi
callq 0x61f0
leaq -0x2d1(%rbp), %rdi
callq 0x6390
jmp 0x2ce7a
leaq -0x228(%rbp), %rdi
callq 0x13c70
leaq -0x210(%rbp), %rdi
callq 0x13c70
leaq -0x1e0(%rbp), %rdi
callq 0xfd00
jmp 0x2c83d
leaq -0x228(%rbp), %rdi
callq 0x13c70
leaq -0x210(%rbp), %rdi
callq 0x13c70
leaq -0x1d8(%rbp), %rdi
callq 0xdfe0
jmp 0x2d342
testb $0x1, -0x5d(%rbp)
je 0x2d189
testb $0x1, -0x5e(%rbp)
je 0x2d189
movq -0x3f0(%rbp), %rax
testb $0x1, 0x230(%rax)
je 0x2d189
movb $0x0, -0x18a(%rbp)
leaq -0x359(%rbp), %rdi
movq %rdi, -0x560(%rbp)
callq 0x6630
movq -0x560(%rbp), %rdx
leaq 0xa5f3(%rip), %rsi      # 0x374e6
leaq -0x358(%rbp), %rdi
callq 0x64f0
jmp 0x2cf01
movq -0x3f0(%rbp), %rdx
addq $0x1d8, %rdx            # imm = 0x1D8
leaq -0x338(%rbp), %rdi
leaq -0x358(%rbp), %rsi
callq 0x211d0
jmp 0x2cf24
leaq 0xa5bd(%rip), %rdx      # 0x374e8
leaq -0x318(%rbp), %rdi
leaq -0x338(%rbp), %rsi
callq 0x168d0
jmp 0x2cf40
movq -0x3f0(%rbp), %rcx
movl 0x210(%rcx), %eax
movl 0x220(%rcx), %ecx
subl %ecx, %eax
movl %eax, %edx
xorl %eax, %eax
movl %eax, %ecx
leaq -0x2f8(%rbp), %rdi
leaq -0x318(%rbp), %rsi
callq 0x2d3c0
jmp 0x2cf70
leaq -0x318(%rbp), %rdi
callq 0x61f0
leaq -0x338(%rbp), %rdi
callq 0x61f0
leaq -0x358(%rbp), %rdi
callq 0x61f0
leaq -0x359(%rbp), %rdi
callq 0x6390
leaq -0x2f8(%rbp), %rax
movq %rax, -0x2e0(%rbp)
movq -0x2e0(%rbp), %rdi
callq 0x13da0
movq %rax, -0x368(%rbp)
movq -0x2e0(%rbp), %rdi
callq 0x14490
movq %rax, -0x370(%rbp)
leaq -0x368(%rbp), %rdi
leaq -0x370(%rbp), %rsi
callq 0x16010
testb $0x1, %al
jne 0x2d067
leaq -0x2f8(%rbp), %rdi
callq 0x13c70
jmp 0x2d187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d056
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d04a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d03e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x318(%rbp), %rdi
callq 0x61f0
leaq -0x338(%rbp), %rdi
callq 0x61f0
leaq -0x358(%rbp), %rdi
callq 0x61f0
leaq -0x359(%rbp), %rdi
callq 0x6390
jmp 0x2d342
leaq -0x368(%rbp), %rdi
callq 0x152b0
movq %rax, %rcx
movq -0x3f0(%rbp), %rax
movq %rcx, -0x378(%rbp)
movq -0x10(%rbp), %rcx
movq %rcx, -0x578(%rbp)
movl 0x220(%rax), %eax
movq %rax, -0x570(%rbp)
leaq -0x399(%rbp), %rdi
movq %rdi, -0x568(%rbp)
callq 0x6630
movq -0x570(%rbp), %rsi
movq -0x568(%rbp), %rcx
leaq -0x398(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2d0d0
movq -0x578(%rbp), %rdi
leaq -0x398(%rbp), %rsi
callq 0x62d0
movq %rax, -0x580(%rbp)
jmp 0x2d0ec
movq -0x580(%rbp), %rdi
movq -0x378(%rbp), %rsi
callq 0x62d0
movq %rax, -0x588(%rbp)
jmp 0x2d108
movq -0x588(%rbp), %rdi
movl $0xa, %esi
callq 0x63c0
jmp 0x2d11b
leaq -0x398(%rbp), %rdi
callq 0x61f0
leaq -0x399(%rbp), %rdi
callq 0x6390
leaq -0x368(%rbp), %rdi
callq 0x15120
jmp 0x2cfd4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d16a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x398(%rbp), %rdi
callq 0x61f0
leaq -0x399(%rbp), %rdi
callq 0x6390
leaq -0x2f8(%rbp), %rdi
callq 0x13c70
jmp 0x2d342
jmp 0x2d189
testb $0x1, -0x18a(%rbp)
jne 0x2d1a6
movq -0x10(%rbp), %rdi
leaq 0xa347(%rip), %rsi      # 0x374e4
callq 0x6320
jmp 0x2d1a4
jmp 0x2d1a6
leaq -0x50(%rbp), %rax
movq %rax, -0x3a8(%rbp)
movq -0x3a8(%rbp), %rdi
callq 0x20620
movq %rax, -0x3b0(%rbp)
movq -0x3a8(%rbp), %rdi
callq 0x20650
movq %rax, -0x3b8(%rbp)
leaq -0x3b0(%rbp), %rdi
leaq -0x3b8(%rbp), %rsi
callq 0x20680
testb $0x1, %al
jne 0x2d1f3
jmp 0x2d306
leaq -0x3b0(%rbp), %rdi
callq 0x206c0
movq %rax, %rcx
movq -0x3f0(%rbp), %rax
movq %rcx, -0x3c0(%rbp)
movq -0x10(%rbp), %rcx
movq %rcx, -0x5a0(%rbp)
movl 0x21c(%rax), %eax
movq %rax, -0x598(%rbp)
leaq -0x3e1(%rbp), %rdi
movq %rdi, -0x590(%rbp)
callq 0x6630
movq -0x598(%rbp), %rsi
movq -0x590(%rbp), %rcx
leaq -0x3e0(%rbp), %rdi
movl $0x20, %edx
callq 0x6220
jmp 0x2d25c
movq -0x5a0(%rbp), %rdi
leaq -0x3e0(%rbp), %rsi
callq 0x62d0
movq %rax, -0x5a8(%rbp)
jmp 0x2d278
movq -0x5a8(%rbp), %rdi
movq -0x3c0(%rbp), %rsi
callq 0x62d0
movq %rax, -0x5b0(%rbp)
jmp 0x2d294
movq -0x5b0(%rbp), %rdi
leaq 0xa242(%rip), %rsi      # 0x374e4
callq 0x6320
jmp 0x2d2a9
leaq -0x3e0(%rbp), %rdi
callq 0x61f0
leaq -0x3e1(%rbp), %rdi
callq 0x6390
leaq -0x3b0(%rbp), %rdi
callq 0x206e0
jmp 0x2d1d7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x2d2f8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x3e0(%rbp), %rdi
callq 0x61f0
leaq -0x3e1(%rbp), %rdi
callq 0x6390
jmp 0x2d342
leaq -0xd0(%rbp), %rdi
callq 0x13c70
leaq -0x90(%rbp), %rdi
callq 0x13c70
leaq -0x78(%rbp), %rdi
callq 0x13c70
leaq -0x50(%rbp), %rdi
callq 0x13c70
leaq -0x38(%rbp), %rdi
callq 0x13c70
addq $0x5b0, %rsp            # imm = 0x5B0
popq %rbp
retq
leaq -0xd0(%rbp), %rdi
callq 0x13c70
leaq -0x90(%rbp), %rdi
callq 0x13c70
leaq -0x78(%rbp), %rdi
callq 0x13c70
leaq -0x50(%rbp), %rdi
callq 0x13c70
leaq -0x38(%rbp), %rdi
callq 0x13c70
movq -0x58(%rbp), %rdi
callq 0x6620
nop