// File: /workspace/github_cpp_makefile_star2_O3/jovermann[P]streplace/src/CommandLineParser.cpp
// Function: ut1::CommandLineParser::getUsageStr[abi:cxx11]() const
std::string CommandLineParser::getUsageStr() const
{
    std::stringstream ret;

    // Get usage header.
    std::vector<std::string> lines = ut1::splitLines(usage, 80);
    ret << ut1::joinStrings(lines, "\n") << "\n"; // ut1::splitLines() swallows the last LF.

    // Get maximum longOption[=argName] string len.
    size_t maxHelpNameLen = 0;
    for (const auto& opt: options)
    {
        maxHelpNameLen = std::max(maxHelpNameLen, opt.second.getHelpNameLen());
    }

    // Get width/wrap column of help text.
    size_t helpStartCol = maxHelpNameLen + 8;
    size_t helpWidth    = std::max(helpStartCol + 80, size_t(79));
    size_t helpWrapCol  = helpWidth - helpStartCol;

    // Print option list.
    for (const auto& name: optionList)
    {
        // Print option header.
        if (ut1::hasPrefix(name, HEADER_PREFIX))
        {
            ret << name.substr(strlen(HEADER_PREFIX));
            continue;
        }

        const Option* option = getOption(name);
        ret << "  ";
        if (option->shortOption)
        {
            ret << "-" << option->shortOption;
        }
        else
        {
            ret << "  ";
        }
        std::string nameEqArg = option->longOption;
        if (!option->argName.empty())
        {
            nameEqArg += "=" + option->argName;
        }
        ret << " --" << nameEqArg;
        size_t pad = std::max(size_t(0), maxHelpNameLen - nameEqArg.length()) + 1;
        ret << std::string(pad, ' ');
        lines = ut1::splitLines(option->help, helpWrapCol);
        ret << ut1::joinStrings(lines, "\n" + std::string(helpStartCol, ' '));
        std::vector<std::string> braceItems;
        if (option->shortOptionAlias)
        {
            braceItems.push_back("alias=-" + std::string(1, option->shortOptionAlias));
        }
        if (option->isList)
        {
            braceItems.emplace_back("list");
        }
        if (!option->defaultValue.empty())
        {
            braceItems.push_back("default=" + option->defaultValue);
        }
        if (option->value != option->defaultValue)
        {
            if (option->argName.empty())
            {
                braceItems.emplace_back("set");
            }
            else
            {
                braceItems.push_back("value=" + option->value);
            }
        }
        if (option->count > 1)
        {
            braceItems.push_back("count=" + std::to_string(option->count));
        }
        if (!braceItems.empty())
        {
            ret << " (" + ut1::joinStrings(braceItems, ", ") + ")";
        }
        ret << "\n";
    }

    // Get usage footer.
    ret << footer;

    std::string u = ret.str();
    ut1::replaceStringInPlace(u, "$programName", programName);
    ut1::replaceStringInPlace(u, "$version", version);

    return u;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x298, %rsp            # imm = 0x298
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x110(%rsp), %rdi
callq 0x52f0
movq %r14, 0x68(%rsp)
leaq 0xb8(%r14), %rsi
leaq 0xb0(%rsp), %rdi
movl $0x50, %edx
callq 0xacf1
leaq 0x10(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x19b97(%rip), %rsi     # 0x210a9
leaq 0x19b91(%rip), %rdx     # 0x210aa
movq %rsp, %rdi
callq 0x9172
leaq 0x48(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
movq %rsp, %rdx
callq 0xb03e
leaq 0x120(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
callq 0x54b0
leaq 0x19b55(%rip), %rsi     # 0x210a9
movl $0x1, %edx
movq %rax, %rdi
callq 0x54b0
leaq 0x58(%rsp), %r12
movq -0x10(%r12), %rdi
cmpq %r12, %rdi
je 0x757d
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x7593
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x68(%rsp), %rcx
movq 0x18(%rcx), %rax
leaq 0x8(%rcx), %r14
cmpq %r14, %rax
movq %rbx, 0xc8(%rsp)
je 0x75de
xorl %ecx, %ecx
movq 0x90(%rax), %rdx
movq 0x50(%rax), %rbx
addq %rdx, %rbx
cmpq $0x1, %rdx
sbbq $-0x1, %rbx
cmpq %rbx, %rcx
cmovaq %rcx, %rbx
movq %rax, %rdi
callq 0x54d0
movq %rbx, %rcx
cmpq %r14, %rax
jne 0x75af
jmp 0x75e0
xorl %ebx, %ebx
movq %r14, 0x100(%rsp)
leaq 0x58(%rbx), %rax
cmpq $0x50, %rax
movl $0x4f, %ecx
cmovaeq %rax, %rcx
movq %rcx, 0xd0(%rsp)
movq 0x68(%rsp), %rax
movq 0x30(%rax), %r13
movq 0x38(%rax), %rax
movq %rax, 0x108(%rsp)
cmpq %rax, %r13
je 0x7e89
leaq 0x8(%rbx), %rax
movq %rax, 0xf8(%rsp)
subq %rax, 0xd0(%rsp)
incq %rbx
leaq 0x48(%rsp), %r14
movq %r12, 0x48(%rsp)
movq %r14, %rdi
leaq 0x19a15(%rip), %rsi     # 0x2105f
leaq 0x19a15(%rip), %rdx     # 0x21066
callq 0x9172
movq %r13, %rdi
movq %r14, %r15
movq %r14, %rsi
callq 0xa358
movl %eax, %r14d
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x767e
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
testb %r14b, %r14b
je 0x76bb
movl $0x7, %edx
movq %r15, %rdi
movq %r13, %rsi
movq $-0x1, %rcx
callq 0x5450
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
leaq 0x120(%rsp), %rdi
callq 0x54b0
movq 0x48(%rsp), %rdi
jmp 0x7e62
movq 0x68(%rsp), %rdi
movq %r13, %rsi
callq 0xa310
leaq 0x40(%rax), %rbp
cmpq 0x100(%rsp), %rax
movl $0x0, %eax
cmoveq %rax, %rbp
movl $0x2, %edx
leaq 0x120(%rsp), %rdi
leaq 0x19a86(%rip), %rsi     # 0x21177
callq 0x54b0
cmpb $0x0, (%rbp)
je 0x7733
movl $0x1, %edx
leaq 0x120(%rsp), %rdi
leaq 0x19ba6(%rip), %rsi     # 0x212b6
callq 0x54b0
movb (%rbp), %al
movb %al, 0x48(%rsp)
movl $0x1, %edx
leaq 0x120(%rsp), %rdi
movq %r15, %rsi
callq 0x54b0
jmp 0x774c
movl $0x2, %edx
leaq 0x120(%rsp), %rdi
leaq 0x19a30(%rip), %rsi     # 0x21177
callq 0x54b0
movq %r12, 0x48(%rsp)
movq 0x8(%rbp), %rsi
movq 0x10(%rbp), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x90dc
cmpq $0x0, 0x50(%rbp)
je 0x77aa
leaq 0x48(%rbp), %rdx
movq %rsp, %rdi
leaq 0x19a20(%rip), %rsi     # 0x21199
callq 0x89cc
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %r15, %rdi
callq 0x5100
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x77aa
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movl $0x3, %edx
leaq 0x120(%rsp), %r14
movq %r14, %rdi
leaq 0x19a31(%rip), %rsi     # 0x211f2
callq 0x54b0
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
movq %r14, %rdi
callq 0x54b0
movq %rbx, %rsi
subq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %rdi
movl $0x20, %edx
callq 0x54e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x120(%rsp), %rdi
callq 0x54b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7827
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
leaq 0x28(%rbp), %rsi
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq 0xd0(%rsp), %rdx
callq 0xacf1
movq 0xc0(%rsp), %rax
movaps 0x20(%rsp), %xmm0
movq 0x30(%rsp), %rcx
movq %rcx, 0xc0(%rsp)
movaps 0xb0(%rsp), %xmm1
movaps %xmm0, 0xb0(%rsp)
movaps %xmm1, (%rsp)
movq %rax, 0x10(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
movq %rsp, %r12
movq %r12, %rdi
callq 0x896e
movq %r14, %rdi
callq 0x896e
leaq 0xa0(%rsp), %rax
movq %rax, 0x90(%rsp)
leaq 0x90(%rsp), %r14
movq %r14, %rdi
movq 0xf8(%rsp), %rsi
movl $0x20, %edx
callq 0x54e0
movl $0x1, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x197d1(%rip), %rcx     # 0x210a9
callq 0x5490
leaq 0x30(%rsp), %r14
movq %r14, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7905
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x790c
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r12, %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x20(%rsp), %rdx
callq 0xb03e
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x120(%rsp), %rdi
callq 0x54b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x796a
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x7981
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x79a6
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5410
xorps %xmm0, %xmm0
movaps %xmm0, 0x70(%rsp)
movq $0x0, 0x80(%rsp)
movb 0x1(%rbp), %al
testb %al, %al
je 0x7a7e
movq %r14, 0x20(%rsp)
movsbl %al, %edx
movl $0x1, %esi
leaq 0x20(%rsp), %r12
movq %r12, %rdi
callq 0x54e0
movl $0x7, %r8d
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x19787(%rip), %rcx     # 0x2117a
callq 0x5490
movq %rsp, %r8
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7a21
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7a27
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x70(%rsp), %rdi
movq %r8, %rsi
callq 0x9efa
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7a67
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x7a7e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
cmpb $0x1, 0x88(%rbp)
jne 0x7a98
leaq 0x70(%rsp), %rdi
leaq 0x196ef(%rip), %rsi     # 0x21182
callq 0x8d50
cmpq $0x0, 0x70(%rbp)
je 0x7b0b
leaq 0x68(%rbp), %r14
movq %rsp, %r12
movq %r12, %rdi
leaq 0x196d7(%rip), %rsi     # 0x21187
movq %r14, %rdx
callq 0x89cc
leaq 0x70(%rsp), %rdi
movq %r12, %rsi
callq 0x9efa
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7ae0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x70(%rbp), %rdx
leaq 0x90(%rbp), %r12
cmpq %rdx, 0x98(%rbp)
jne 0x7b1c
testq %rdx, %rdx
je 0x7b73
movq (%r14), %rsi
movq (%r12), %rdi
callq 0x5440
testl %eax, %eax
jne 0x7b1c
jmp 0x7b73
cmpq $0x0, 0x98(%rbp)
je 0x7b73
leaq 0x90(%rbp), %r12
cmpq $0x0, 0x50(%rbp)
je 0x7b62
movq %rsp, %r14
movq %r14, %rdi
leaq 0x19664(%rip), %rsi     # 0x21194
movq %r12, %rdx
callq 0x89cc
leaq 0x70(%rsp), %rdi
movq %r14, %rsi
callq 0x9efa
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7b73
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x7b73
leaq 0x70(%rsp), %rdi
leaq 0x19622(%rip), %rsi     # 0x21190
callq 0x8dae
movl 0xb0(%rbp), %r14d
cmpl $0x2, %r14d
leaq 0x30(%rsp), %r12
jb 0x7c9c
movl $0x1, %eax
cmpl $0xa, %r14d
jb 0x7bd9
movl $0x4, %eax
movl %r14d, %ecx
cmpl $0x63, %ecx
jbe 0x7bd2
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x7bd7
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x7bd9
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x7b9c
addl $-0x3, %eax
jmp 0x7bd9
addl $-0x2, %eax
jmp 0x7bd9
decl %eax
movl %eax, %esi
movq %r12, 0x20(%rsp)
leaq 0x20(%rsp), %rbp
movq %rbp, %rdi
xorl %edx, %edx
callq 0x54e0
movq 0x20(%rsp), %rdi
movl 0x28(%rsp), %esi
movl %r14d, %edx
callq 0x8ef1
movl $0x6, %r8d
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x19587(%rip), %rcx     # 0x2119b
callq 0x5490
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7c3f
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7c45
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x70(%rsp), %rdi
movq %rsp, %rsi
callq 0x9efa
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7c85
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x7c9c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x70(%rsp), %rax
cmpq 0x78(%rsp), %rax
je 0x7e35
leaq 0xe8(%rsp), %rax
movq %rax, 0xd8(%rsp)
leaq 0xd8(%rsp), %rbp
movq %rbp, %rdi
leaq 0x194d7(%rip), %rsi     # 0x211a5
leaq 0x194d2(%rip), %rdx     # 0x211a7
callq 0x9172
leaq 0x90(%rsp), %r14
movq %r14, %rdi
leaq 0x70(%rsp), %rsi
movq %rbp, %rdx
callq 0xb03e
movl $0x2, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x1949c(%rip), %rcx     # 0x211a2
callq 0x5490
movq %r12, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7d2e
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x7d36
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x20(%rsp), %rdi
leaq 0x1950e(%rip), %rsi     # 0x21268
callq 0x57c0
leaq 0x10(%rsp), %rsi
movq %rsi, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7d85
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x7d8b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
leaq 0x120(%rsp), %rdi
callq 0x54b0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7dd4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x7deb
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x7e10
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0xd8(%rsp), %rdi
leaq 0xe8(%rsp), %rax
cmpq %rax, %rdi
je 0x7e35
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x5410
movl $0x1, %edx
leaq 0x120(%rsp), %rdi
leaq 0x19260(%rip), %rsi     # 0x210a9
callq 0x54b0
leaq 0x70(%rsp), %rdi
callq 0x896e
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %r12
cmpq %r12, %rdi
je 0x7e74
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
addq $0x20, %r13
cmpq 0x108(%rsp), %r13
movq %r15, %r14
jne 0x763b
movq 0x68(%rsp), %rax
movq 0xd8(%rax), %rsi
movq 0xe0(%rax), %rdx
leaq 0x120(%rsp), %rdi
callq 0x54b0
movq 0xc8(%rsp), %rbx
leaq 0x128(%rsp), %rsi
movq %rbx, %rdi
callq 0x5660
leaq 0x48(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x192d8(%rip), %rsi     # 0x211a8
leaq 0x192dd(%rip), %rdx     # 0x211b4
callq 0x9172
movq 0x68(%rsp), %rax
leaq 0x98(%rax), %rdx
leaq 0x48(%rsp), %rsi
movq %rbx, %rdi
callq 0xa3cb
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x7f0c
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
leaq 0x48(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x1929a(%rip), %rsi     # 0x211b5
leaq 0x1929b(%rip), %rdx     # 0x211bd
callq 0x9172
movq 0x68(%rsp), %rdx
addq $0xf8, %rdx
leaq 0x48(%rsp), %rsi
movq %rbx, %rdi
callq 0xa3cb
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x7f57
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
leaq 0xb0(%rsp), %rdi
callq 0x896e
movq 0x25ff5(%rip), %rsi     # 0x2df60
leaq 0x110(%rsp), %rdi
callq 0x5320
leaq 0x190(%rsp), %rdi
callq 0x5130
movq %rbx, %rax
addq $0x298, %rsp            # imm = 0x298
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x7f9e
jmp 0x7fba
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x7fbd
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x7fbd
movq %rax, %rbx
movq 0xc8(%rsp), %rcx
movq (%rcx), %rdi
addq $0x10, %rcx
cmpq %rcx, %rdi
je 0x8229
movq (%rcx), %rsi
jmp 0x8215
movq %rax, %rbx
jmp 0x8012
jmp 0x8226
movq %rax, %rbx
jmp 0x8236
jmp 0x8226
movq %rax, %rbx
leaq 0x58(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x8012
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8229
movq 0x10(%rsp), %rsi
jmp 0x8215
jmp 0x8058
jmp 0x81f4
jmp 0x80a1
jmp 0x80e2
jmp 0x81f4
jmp 0x81f4
jmp 0x815a
movq %rax, %rbx
jmp 0x8127
jmp 0x8182
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x81f7
movq 0x10(%rsp), %rsi
jmp 0x8148
jmp 0x81f4
jmp 0x81f4
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x80c4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x80c4
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x80e5
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x80e5
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x8102
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x8102
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x81f7
movq 0x30(%rsp), %rsi
jmp 0x8148
movq %rax, %rbx
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x8127
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0xd8(%rsp), %rdi
leaq 0xe8(%rsp), %rax
cmpq %rax, %rdi
je 0x81f7
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x81f7
jmp 0x8226
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x8201
movq 0x10(%rsp), %rsi
jmp 0x81e8
jmp 0x8182
movq %rax, %rbx
jmp 0x81af
jmp 0x8221
movq %rax, %rbx
jmp 0x8201
jmp 0x8221
movq %rax, %rbx
jmp 0x81cb
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x81af
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x81cb
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x5410
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x8201
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x8201
jmp 0x8226
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x896e
leaq 0x58(%rsp), %r12
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x8229
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x5410
jmp 0x8229
jmp 0x8226
movq %rax, %rbx
jmp 0x8206
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0x896e
movq 0x25d23(%rip), %rsi     # 0x2df60
leaq 0x110(%rsp), %rdi
callq 0x5320
leaq 0x190(%rsp), %rdi
callq 0x5130
movq %rbx, %rdi
callq 0x5720
nop