// File: /workspace/github_cpp_makefile_star2_O3/davmac314[P]dinit/src/dinitcheck.cc
// Function: load_service(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, service_record*, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, service_record*>>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::vector<dir_entry, std::allocator<dir_entry>> const&)
service_record *load_service(service_set_t &services, const std::string &name,
        const service_dir_pathlist &service_dirs)
{
    using namespace std;
    using namespace dinit_load;
    using ::string_view;

    auto found = services.find(name);
    if (found != services.end()) {
        return found->second;
    }

    string_view base_name = name;

    string service_arg;
    auto at_pos = name.find('@');
    if (at_pos != string::npos) {
    	service_arg = name.substr(at_pos + 1);
    	base_name = string_view(name.data(), at_pos);
    }

    string service_wdir;
    string service_filename;
    dio::istream service_file;
    fd_holder sdf_parent_dir_fd;

    int fail_load_errno = 0;
    std::string fail_load_path;

    // Couldn't find one. Have to load it.
    for (auto &service_dir : service_dirs) {
        service_filename = service_dir.get_dir();
        service_wdir = service_filename;
        if (*(service_filename.rbegin()) != '/') {
            service_filename += '/';
        }
        service_filename += base_name;

        auto sdf_fds = open_with_dir(service_dir.get_dir(), ((std::string)base_name).c_str());
        if (sdf_fds.first != -1) {
            // Found
            sdf_parent_dir_fd = sdf_fds.first;
            service_file.set_fd(sdf_fds.second);
            break;
        }

        if (sdf_fds.second != ENOENT && fail_load_errno == 0) {
            fail_load_errno = sdf_fds.second;
            fail_load_path = std::move(service_filename);
        }
    }

    if (!service_file) {
        if (fail_load_errno == 0) {
            throw service_not_found(name);
        }
        else {
            throw service_load_error(name, std::move(fail_load_path), fail_load_errno);
        }
    }

    bool issued_var_subst_warning = false;

    environment::env_map renvmap = menv.build();

    auto resolve_var = [&](const string &name) {
        if (offline_operation && !issued_var_subst_warning) {
            report_general_warning("Variable substitution performed by dinitcheck "
                    "for file paths may not match dinit daemon (environment may differ); "
                    "use --online to avoid this warning");
            issued_var_subst_warning = true;
        }
        return resolve_env_var(name, renvmap);
    };

    service_settings_wrapper<prelim_dep> settings;

    file_input_stack input_stack;
    input_stack.push(std::move(service_filename), std::move(service_file), sdf_parent_dir_fd.release());

    try {
        process_service_file(name, input_stack,
                [&](string &line, file_pos_ref input_pos, string &setting, setting_op_t op,
                        string_iterator &i, string_iterator &end) -> void {

                    auto process_dep_dir_n = [&](std::list<prelim_dep> &deplist,
                    		const std::string &waitsford,
                            dependency_type dep_type) -> void {
                        const string &service_filename = input_stack.current_file_name();
                        process_dep_dir(name.c_str(), service_filename, deplist, waitsford, dep_type);
                    };

                    auto load_service_n = [&](const string &dep_name) -> const string & {
                        return dep_name;
                    };

                    try {
                        process_service_line(settings, name.c_str(), service_arg.c_str(), line,
                        		input_pos, setting, op, i, end, load_service_n, process_dep_dir_n,
								resolve_var);
                    }
                    catch (service_description_exc &exc) {
                        if (exc.service_name.empty()) {
                            exc.service_name = name;
                        }
                        report_service_description_exc(exc);
                    }
                },
                service_arg.c_str(), resolve_var);
    }
    catch (std::system_error &sys_err)
    {
        report_error(sys_err, name);
        throw service_load_exc(name, input_stack.current_file_name() + ": error while reading service description");
    }

    auto report_err = [&](const char *msg) {
        report_service_description_err(name, msg);
    };

    environment srv_env{};

    // Fill user vars before reading env file
    if (settings.export_passwd_vars) {
        try {
            fill_environment_userinfo(settings.run_as_uid, name, srv_env);
        }
        catch (service_load_exc &load_exc) {
            report_service_description_err(name, load_exc.exc_description);
        }
    }

    // Set service name in environment if desired
    if (settings.export_service_name) {
        std::string envname = "DINIT_SERVICE=";
        envname += name;
        srv_env.set_var(std::move(envname));
    }

    if (!settings.env_file.empty()) {
        try {
            std::string fullpath = combine_paths(service_wdir, settings.env_file.c_str());

            auto log_inv_env_setting = [&](int line_num) {
                report_service_description_err(name,
                        std::string("Invalid environment variable setting in environment file " + fullpath
                                + " (line ") + std::to_string(line_num) + ")");
            };
            auto log_bad_env_command = [&](int line_num) {
                report_service_description_err(name,
                        std::string("Bad command in environment file ") + fullpath + " (line " + std::to_string(line_num) + ")");
            };

            read_env_file_inline(fullpath.c_str(), false, srv_env, true, log_inv_env_setting, log_bad_env_command);
        } catch (const std::system_error &se) {
            report_service_description_err(name, std::string("could not load environment file: ") + se.what());
        }
    }

    renvmap = srv_env.build(menv);

    settings.finalise(report_err, nullptr, report_err, resolve_var);

    if (!settings.working_dir.empty()) {
        service_wdir = settings.working_dir;
    }
    int oflags = O_DIRECTORY;
#ifdef O_PATH
    oflags |= O_PATH;
#else
    oflags |= O_RDONLY;
#endif
    int dirfd = open(service_wdir.c_str(), oflags);
    if (dirfd < 0) {
        report_service_description_err(name,
                std::string("could not open service working directory: ") + strerror(errno));
        dirfd = AT_FDCWD;
    }

    auto check_command = [&](const char *setting_name, const char *command) {
        struct stat command_stat;
        if (command[0] != '/') {
            report_service_description_err(name,
                    std::string("executable '") + command + "' is not an absolute path");
        }
        else if (fstatat(dirfd, command, &command_stat, 0) == -1) {
            report_service_description_err(name,
                    std::string("could not stat ") + setting_name + " executable '" + command
                    + "': " + strerror(errno));
        }
        else {
            if ((command_stat.st_mode & S_IFMT) != S_IFREG) {
                report_service_description_err(name, std::string(setting_name) + " executable '"
                        + command + "' is not a regular file.");
            }
            else if ((command_stat.st_mode & S_IXUSR) == 0) {
                report_service_description_err(name, std::string(setting_name) + " executable '" + command
                        + "' is not executable by owner.");
            }
        }
    };

    if (!settings.command.empty()) {
        int offset_start = settings.command_offsets.front().first;
        int offset_end = settings.command_offsets.front().second;
        check_command("command", settings.command.substr(offset_start, offset_end - offset_start).c_str());
    }
    if (!settings.stop_command.empty()) {
        int offset_start = settings.stop_command_offsets.front().first;
        int offset_end = settings.stop_command_offsets.front().second;
        check_command("stop command",
                settings.stop_command.substr(offset_start, offset_end - offset_start).c_str());
    }

    if (settings.log_type == log_type_id::LOGFILE && !settings.logfile.empty()) {
        string logfile_dir = parent_path(settings.logfile);
        if (!logfile_dir.empty()) {
            struct stat logfile_dir_stat;
            if (fstatat(dirfd, logfile_dir.c_str(), &logfile_dir_stat, 0) == -1) {
                report_service_description_err(name,
                        std::string("could not access logfile directory '") + logfile_dir + "': " + strerror(errno));
            }
            else {
                if ((logfile_dir_stat.st_mode & S_IFDIR) == 0) {
                    report_service_description_err(name, std::string("logfile directory '")
                            + logfile_dir + "' exists but is not a directory.");
                }
            }
        }
    }

    if (dirfd != AT_FDCWD) {
        close(dirfd);
    }

    return new service_record(name, settings.service_type, settings.chain_to_name, settings.depends,
            settings.before_svcs, settings.after_svcs, settings.consumer_of_name, settings.log_type);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8e8, %rsp            # imm = 0x8E8
movq %rdx, %r12
movq %rsi, %r14
movq %rdi, %rbx
callq 0x16836
addq $0x8, %rbx
cmpq %rbx, %rax
je 0x6f97
movq 0x40(%rax), %rbx
jmp 0x9ba6
movq (%r14), %rbp
movq 0x8(%r14), %r15
leaq 0x278(%rsp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq %r14, %rdi
movl $0x40, %esi
xorl %edx, %edx
callq 0x44b0
cmpq $-0x1, %rax
movq %r14, 0x30(%rsp)
je 0x7030
movq %rax, %rbx
leaq 0x1(%rax), %rdx
leaq 0x5e0(%rsp), %rdi
movq %r14, %rsi
movq $-0x1, %rcx
callq 0x43c0
leaq 0x268(%rsp), %rdi
leaq 0x5e0(%rsp), %r14
movq %r14, %rsi
callq 0x4480
movq (%r14), %rdi
leaq 0x5f0(%rsp), %rax
cmpq %rax, %rdi
je 0x7025
movq 0x5f0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x30(%rsp), %rax
movq (%rax), %rbp
movq %rbx, %r15
leaq 0x228(%rsp), %rax
movq %rax, -0x10(%rax)
xorl %ecx, %ecx
movq %rcx, -0x8(%rax)
movb %cl, (%rax)
leaq 0x180(%rsp), %rax
movq %rax, -0x10(%rax)
movq %rcx, -0x8(%rax)
movb %cl, (%rax)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, 0x200(%rsp)
movq %rcx, 0x208(%rsp)
movq %rcx, 0x20e(%rsp)
movl %eax, 0x6c(%rsp)
leaq 0x368(%rsp), %rax
movq %rax, -0x10(%rax)
movq %rcx, -0x8(%rax)
movq $0x0, 0x100(%rsp)
movb %cl, (%rax)
movq (%r12), %r13
movq 0x8(%r12), %rax
movq %rax, 0x108(%rsp)
cmpq %rax, %r13
je 0x7220
leaq 0x5f0(%rsp), %r14
movq %rbp, 0x148(%rsp)
addq %rbp, %r15
leaq 0x170(%rsp), %r12
movq (%r13), %rbx
movq 0x178(%rsp), %rbp
movq %rbx, %rdi
callq 0x4190
movq %r12, %rdi
xorl %esi, %esi
movq %rbp, %rdx
movq %rbx, %rcx
movq %rax, %r8
callq 0x45a0
leaq 0x218(%rsp), %rdi
movq %r12, %rsi
callq 0x4230
movq 0x170(%rsp), %rax
movq 0x178(%rsp), %rcx
cmpb $0x2f, -0x1(%rax,%rcx)
je 0x7124
movq %r12, %rdi
movl $0x2f, %esi
callq 0x4330
movq %r14, 0x5e0(%rsp)
leaq 0x5e0(%rsp), %rdi
movq 0x148(%rsp), %rbp
movq %rbp, %rsi
movq %r15, %rdx
callq 0x129da
movq 0x5e0(%rsp), %rsi
movq 0x5e8(%rsp), %rdx
movq %r12, %rdi
callq 0x4130
movq 0x5e0(%rsp), %rdi
cmpq %r14, %rdi
je 0x717c
movq 0x5f0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq (%r13), %rbx
movq %r14, 0x5e0(%rsp)
leaq 0x5e0(%rsp), %rdi
movq %rbp, %rsi
movq %r15, %rdx
callq 0x129da
movq 0x5e0(%rsp), %rsi
movq %rbx, %rdi
movl $0xffffff9c, %edx       # imm = 0xFFFFFF9C
callq 0x10d9c
movq %rax, %rbp
movq 0x5e0(%rsp), %rdi
cmpq %r14, %rdi
je 0x71d0
movq 0x5f0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq %rbp, %rbx
shrq $0x20, %rbx
cmpl $-0x1, %ebp
jne 0x7236
cmpl $0x2, %ebx
setne %al
cmpl $0x0, 0x100(%rsp)
sete %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x720c
leaq 0x358(%rsp), %rdi
movq %r12, %rsi
callq 0x4480
movq %rbx, 0x100(%rsp)
addq $0x10, %r13
cmpq 0x108(%rsp), %r13
jne 0x70c9
jmp 0x7257
leaq 0x200(%rsp), %rdi
callq 0x1b80c
testb %al, %al
jne 0x726c
jmp 0x9f55
movl 0x6c(%rsp), %edi
cmpl $-0x1, %edi
je 0x7244
callq 0x46b0
movl %ebp, 0x6c(%rsp)
leaq 0x200(%rsp), %rdi
movl %ebx, %esi
callq 0x1a426
leaq 0x200(%rsp), %rdi
callq 0x1b80c
testb %al, %al
je 0x9f4b
movb $0x0, 0x3f(%rsp)
leaq 0x1f4a0(%rip), %rsi     # 0x26718
leaq 0x890(%rsp), %rbx
movq %rbx, %rdi
callq 0x112a6
leaq 0x3f(%rsp), %rax
movq %rax, 0x258(%rsp)
xorps %xmm0, %xmm0
leaq 0x5f0(%rsp), %rax
movaps %xmm0, -0x10(%rax)
movq %rax, 0x8(%rax)
movq %rax, (%rax)
leaq 0x618(%rsp), %rcx
movaps %xmm0, -0x18(%rcx)
xorl %eax, %eax
movq %rax, -0x8(%rcx)
movq %rcx, 0x8(%rcx)
movq %rcx, (%rcx)
movq %rax, 0x10(%rcx)
leaq 0x640(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x660(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x680(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movw $0x0, 0x10(%rcx)
movl $0x4, 0x14(%rcx)
leaq 0x698(%rsp), %rcx
movq %rcx, 0x8(%rcx)
movq %rcx, (%rcx)
movq %rax, 0x10(%rcx)
leaq 0x6b0(%rsp), %rcx
movq %rcx, 0x8(%rcx)
movq %rcx, (%rcx)
movq %rax, 0x10(%rcx)
leaq 0x6c8(%rsp), %rcx
movq %rcx, 0x8(%rcx)
movq %rcx, (%rcx)
movq %rax, 0x10(%rcx)
movl $0x0, 0x18(%rcx)
leaq 0x6f8(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movaps 0x14cbc(%rip), %xmm1    # 0x1c020
movups %xmm1, 0x10(%rcx)
movl $0x1000, 0x20(%rcx)     # imm = 0x1000
andw $0xe000, 0x24(%rcx)     # imm = 0xE000
movq %rbx, 0x260(%rsp)
movabsq $0x10000000f, %rdx      # imm = 0x10000000F
movq %rdx, 0x28(%rcx)
movb %al, 0x30(%rcx)
leaq 0x740(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movaps 0x14c89(%rip), %xmm1    # 0x1c030
movaps %xmm1, 0x10(%rcx)
movl $0xa, %edx
movq %rdx, 0x20(%rcx)
movq %rax, 0x28(%rcx)
movl $0x3, 0x30(%rcx)
movq %rax, 0x38(%rcx)
movq $0xbebc200, 0x40(%rcx)  # imm = 0xBEBC200
movq %rdx, 0x48(%rcx)
movq %rax, 0x50(%rcx)
movq $0x3c, 0x58(%rcx)
movaps %xmm0, 0x70(%rcx)
movaps %xmm0, 0x60(%rcx)
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl %edx, 0x80(%rcx)
leaq 0x7d8(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movq $-0x1, 0x10(%rcx)
movl %edx, 0x18(%rcx)
movb %al, 0x1c(%rcx)
leaq 0x810(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x830(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0x850(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movb %al, 0x10(%rcx)
movq %rax, 0x30(%rcx)
movups %xmm0, 0x22(%rcx)
movups %xmm0, 0x12(%rcx)
leaq 0x190(%rsp), %rdi
movaps %xmm0, 0x40(%rdi)
movaps %xmm0, 0x30(%rdi)
movaps %xmm0, 0x20(%rdi)
movaps %xmm0, 0x10(%rdi)
movaps %xmm0, (%rdi)
xorl %esi, %esi
callq 0x13dce
leaq 0x390(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq 0x170(%rsp), %rax
leaq 0x180(%rsp), %rcx
cmpq %rcx, %rax
je 0x74b0
movq %rax, 0x380(%rsp)
movq 0x180(%rsp), %rax
movq %rax, 0x390(%rsp)
jmp 0x74b6
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x178(%rsp), %rax
leaq 0x380(%rsp), %rsi
movq %rax, 0x8(%rsi)
movq %rcx, 0x170(%rsp)
movq $0x0, 0x178(%rsp)
movb $0x0, 0x180(%rsp)
movl 0x6c(%rsp), %ecx
movl $0xffffffff, 0x6c(%rsp) # imm = 0xFFFFFFFF
leaq 0x190(%rsp), %rdi
leaq 0x200(%rsp), %rdx
callq 0x112f2
movq 0x380(%rsp), %rdi
cmpq %rbx, %rdi
je 0x7524
movq 0x390(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x1f0(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x30(%rsp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
leaq 0x1e0(%rsp), %rdi
callq 0x15318
movq 0x268(%rsp), %rax
movq %rax, 0x100(%rsp)
leaq 0x80(%rsp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
leaq 0x3b0(%rsp), %r14
leaq 0x18(%rsp), %r13
leaq 0x190(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x16a34
testb %al, %al
je 0x7f78
movq 0x1c0(%rsp), %rcx
cmpq 0x1c8(%rsp), %rcx
jne 0x75c4
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rcx
movl $0x200, %eax            # imm = 0x200
addq %rax, %rcx
movq 0x78(%rsp), %rax
testq %rax, %rax
je 0x7584
movl -0x8(%rcx), %ebp
movq 0x70(%rsp), %rbx
cmpb $0x5c, -0x1(%rbx,%rax)
jne 0x783f
leaq (%rbx,%rax), %rcx
decq %rcx
cmpq %rbx, %rcx
je 0x7615
movl %ebx, %edx
notl %edx
leal (%rcx,%rdx), %esi
movb $0x1, %dl
movq %rcx, %rdi
cmpb $0x5c, -0x1(%rdi)
jne 0x760c
decq %rdi
xorb $0x1, %dl
cmpq %rbx, %rdi
jne 0x75f9
movl %esi, %edx
testb $0x1, %dl
je 0x76f8
movq %r14, 0x3a0(%rsp)
movq $0x0, 0x3a8(%rsp)
movb $0x0, 0x3b0(%rsp)
movb $0xa, (%rcx)
leaq 0x190(%rsp), %rdi
leaq 0x3a0(%rsp), %rsi
callq 0x16ab0
testb %al, %al
je 0x9bf5
movq 0x3a8(%rsp), %r15
testq %r15, %r15
je 0x9bbb
movq 0x3a0(%rsp), %rbx
leaq (%rbx,%r15), %r12
movzbl (%rbx), %r13d
callq 0x44f0
movq %rax, %rdi
callq 0x4180
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r13,2)
je 0x7696
incq %rbx
decq %r15
jne 0x766e
movq %r12, %rbx
movq 0x3a0(%rsp), %rsi
cmpq %rsi, %rbx
leaq 0x80(%rsp), %r12
je 0x9bbb
movq 0x3a8(%rsp), %rdx
leaq 0x70(%rsp), %rdi
callq 0x4130
movq 0x3a0(%rsp), %rdi
cmpq %r14, %rdi
je 0x76de
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x70(%rsp), %rbx
movq 0x78(%rsp), %rax
leaq (%rbx,%rax), %rcx
decq %rcx
cmpb $0x5c, (%rcx)
je 0x75e8
movq %rbx, 0x110(%rsp)
leaq (%rbx,%rax), %r12
movq %r12, 0x28(%rsp)
testq %rax, %rax
jne 0x7852
movq %rbx, 0x110(%rsp)
cmpq %r12, %rbx
je 0x7ee2
movzbl (%rbx), %eax
cmpl $0x23, %eax
je 0x7ee2
cmpl $0x40, %eax
jne 0x7891
incq %rbx
movq %rbx, 0x110(%rsp)
callq 0x44f0
leaq 0x3b0(%rsp), %rbx
leaq 0x8(%rsp), %r13
movq %rax, %rdi
callq 0x4180
movq %rax, %r15
movq %rbx, 0x3a0(%rsp)
movq $0x0, 0x3a8(%rsp)
movb $0x0, 0x3b0(%rsp)
movq 0x110(%rsp), %rax
cmpq %r12, %rax
leaq 0x50(%rsp), %r14
je 0x7987
movzbl (%rax), %ecx
leal -0x2d(%rcx), %edx
cmpb $0x2, %dl
jb 0x7987
movq 0x30(%r15), %rdx
testb $0x8, 0x1(%rdx,%rcx,2)
jne 0x7987
movzbl (%rax), %eax
movl %eax, %ecx
addl $-0x2d, %ecx
cmpl $0x32, %ecx
ja 0x77cd
movabsq $0x4000000000003, %rdx  # imm = 0x4000000000003
btq %rcx, %rdx
jb 0x77dd
movq 0x30(%r15), %rcx
movzwl (%rcx,%rax,2), %ecx
testl $0x2006, %ecx           # imm = 0x2006
jne 0x7805
movsbl %al, %esi
leaq 0x3a0(%rsp), %rdi
callq 0x4330
movq 0x110(%rsp), %rax
incq %rax
movq %rax, 0x110(%rsp)
cmpq %r12, %rax
jne 0x77b0
movq 0x3a0(%rsp), %rax
leaq 0x18(%rsp), %rcx
movq %rcx, 0x8(%rsp)
leaq 0x3b0(%rsp), %rdx
cmpq %rdx, %rax
je 0x7efc
movq %rax, 0x8(%rsp)
movq 0x3b0(%rsp), %rax
movq %rax, 0x18(%rsp)
jmp 0x7f02
addq %rbx, %rax
movq %rbx, 0x110(%rsp)
movq %rax, 0x28(%rsp)
movq %rax, %r12
movzbl (%rbx), %r15d
xorl %r13d, %r13d
cmpq $0xa, %r15
sete %r14b
callq 0x44f0
movq %rax, %rdi
callq 0x4180
movb %r14b, %r13b
addl %r13d, %ebp
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r15,2)
je 0x7712
incq %rbx
cmpq %r12, %rbx
jne 0x7852
jmp 0x7ee2
callq 0x44f0
leaq 0x3b0(%rsp), %r14
movq %rax, %rdi
callq 0x4180
movq %r14, 0x3a0(%rsp)
movq $0x0, 0x3a8(%rsp)
movb $0x0, 0x3b0(%rsp)
movq 0x110(%rsp), %rbx
cmpq %r12, %rbx
je 0x7b73
movq %rax, %r15
movzbl (%rbx), %eax
leal -0x2d(%rax), %ecx
cmpb $0x2, %cl
jb 0x7b73
movq 0x30(%r15), %rcx
testb $0x8, 0x1(%rcx,%rax,2)
jne 0x7b73
movzbl (%rbx), %eax
movl %eax, %ecx
addl $-0x2d, %ecx
cmpl $0x32, %ecx
ja 0x7911
movabsq $0x4000000000003, %rdx  # imm = 0x4000000000003
btq %rcx, %rdx
jb 0x7921
movq 0x30(%r15), %rcx
movzwl (%rcx,%rax,2), %ecx
testl $0x2006, %ecx           # imm = 0x2006
jne 0x7949
movsbl %al, %esi
leaq 0x3a0(%rsp), %rdi
callq 0x4330
movq 0x110(%rsp), %rbx
incq %rbx
movq %rbx, 0x110(%rsp)
cmpq %r12, %rbx
jne 0x78f4
movq 0x3a0(%rsp), %rax
leaq 0x298(%rsp), %rcx
movq %rcx, 0x288(%rsp)
cmpq %r14, %rax
je 0x7f14
movq %rax, 0x288(%rsp)
movq 0x3b0(%rsp), %rax
movq %rax, 0x298(%rsp)
jmp 0x7f1b
leaq 0x18(%rsp), %rax
movq %rax, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
movb $0x0, 0x18(%rsp)
movq %r13, %rdi
leaq 0x1538a(%rip), %rsi     # 0x1cd33
callq 0x4110
movl %eax, %r15d
testl %eax, %eax
je 0x79cc
movq %r13, %rdi
leaq 0x15380(%rip), %rsi     # 0x1cd3f
callq 0x4110
testl %eax, %eax
jne 0x9de0
movq 0x1c0(%rsp), %rcx
cmpq 0x1c8(%rsp), %rcx
jne 0x79f2
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rcx
movl $0x200, %eax            # imm = 0x200
addq %rax, %rcx
addq $-0x28, %rcx
movl %ebp, 0x238(%rsp)
movq %rcx, 0x240(%rsp)
movq %r14, 0x40(%rsp)
xorl %edx, %edx
movq %rdx, 0x48(%rsp)
movb $0x0, 0x50(%rsp)
leaq 0x150(%rsp), %rax
movq %rax, 0x158(%rsp)
movq %rax, 0x150(%rsp)
movq %rdx, 0x160(%rsp)
leaq 0x40(%rsp), %rdi
xorl %esi, %esi
movl %ebp, %edx
leaq 0x110(%rsp), %r8
movq %r12, %r9
movq %rax, %r12
pushq $0x20
pushq %rax
callq 0x16e34
addq $0x10, %rsp
cmpq $0x1, 0x160(%rsp)
jne 0x9d70
leaq 0x3a0(%rsp), %r13
movq %r13, 0x3a8(%rsp)
movq %r13, 0x3a0(%rsp)
movq $0x0, 0x3b0(%rsp)
movq 0x48(%rsp), %rbx
movl $0x18, %edi
callq 0x4390
movl $0x0, 0x10(%rax)
movl %ebx, 0x14(%rax)
movq %rax, %rdi
movq %r13, %rsi
callq 0x4070
incq 0x3b0(%rsp)
movq 0x8(%rsp), %rdi
leaq 0x40(%rsp), %rsi
movq %r13, %rdx
leaq 0x258(%rsp), %rcx
movq 0x100(%rsp), %r8
callq 0xb838
movq 0x3a0(%rsp), %rdi
cmpq %r13, %rdi
je 0x7afc
movq (%rdi), %rbx
movl $0x18, %esi
callq 0x43a0
movq %rbx, %rdi
cmpq %r13, %rbx
jne 0x7ae7
movq 0x150(%rsp), %rdi
cmpq %r12, %rdi
je 0x7b1e
movq (%rdi), %rbx
movl $0x18, %esi
callq 0x43a0
movq %rbx, %rdi
cmpq %r12, %rbx
jne 0x7b09
movq 0x40(%rsp), %rdi
xorl %eax, %eax
leaq 0x128(%rsp), %r13
leaq 0x1(%rax), %rcx
movzbl -0x1(%rdi,%rcx), %edx
testl %edx, %edx
je 0x7b49
cmpl $0x2f, %edx
je 0x7b44
incq %rcx
jmp 0x7b31
movq %rcx, %rax
jmp 0x7b2d
leaq (%rdi,%rax), %rsi
movq $-0x1, %r12
testq %rax, %rax
je 0x7c3e
cmpq $0x1, %rax
jne 0x7c47
leaq 0x14f02(%rip), %rdi     # 0x1ca70
jmp 0x7c55
leaq 0x298(%rsp), %rax
movq %rax, 0x288(%rsp)
movq $0x0, 0x290(%rsp)
movb $0x0, 0x298(%rsp)
xorl %eax, %eax
cmpq %r12, %rbx
je 0x7be7
movzbl (%rbx), %r15d
xorl %r13d, %r13d
cmpq $0xa, %r15
sete %r14b
callq 0x44f0
movq %rax, %rdi
callq 0x4180
movb %r14b, %r13b
addl %r13d, %ebp
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r15,2)
je 0x7bd7
incq %rbx
cmpq %r12, %rbx
jne 0x7b9e
movq %r12, %rbx
movq 0x290(%rsp), %rax
leaq 0x3b0(%rsp), %r14
movq %rbx, 0x110(%rsp)
testq %rax, %rax
je 0x9d11
movzbl (%rbx), %eax
cmpl $0x3d, %eax
je 0x7da1
cmpl $0x3a, %eax
je 0x7d99
cmpl $0x2b, %eax
jne 0x9d11
incq %rbx
movq %rbx, 0x110(%rsp)
cmpq %r12, %rbx
je 0x9d11
movl $0x2, %r13d
cmpb $0x3d, (%rbx)
je 0x7da4
jmp 0x9d11
leaq 0x14925(%rip), %rdi     # 0x1c56a
jmp 0x7c55
movq %rdi, %r12
notq %r12
addq %rsi, %r12
movb $0x0, (%rdi,%r12)
movq 0x1c0(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x7c7b
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rax
movl $0x200, %ecx            # imm = 0x200
addq %rcx, %rax
movl -0x4(%rax), %edx
callq 0x10d9c
movq %rax, %rbx
cmpq $-0x1, %r12
je 0x7c96
movq 0x40(%rsp), %rax
movb $0x2f, (%rax,%r12)
movq %rbx, %rbp
shrq $0x20, %rbp
cmpl $-0x1, %ebx
je 0x7d53
leaq 0x3b0(%rsp), %rax
movw $0x0, 0x4(%rax)
movl $0x0, (%rax)
movl %ebp, 0x3a0(%rsp)
movl $0x4008, %edi           # imm = 0x4008
movq 0x1e273(%rip), %rsi     # 0x25f40
callq 0x46c0
testq %rax, %rax
leaq 0x138(%rsp), %r15
leaq 0x3a0(%rsp), %r12
je 0x7cf2
movq $0x0, 0x4000(%rax)
movq %rax, 0x3a8(%rsp)
movq %r15, 0x128(%rsp)
movq 0x40(%rsp), %rsi
movq 0x48(%rsp), %rdx
addq %rsi, %rdx
movq %r13, %rdi
callq 0x15318
leaq 0x190(%rsp), %rdi
movq %r13, %rsi
movq %r12, %rdx
movl %ebx, %ecx
callq 0x112f2
movq 0x128(%rsp), %rdi
cmpq %r15, %rdi
je 0x7d49
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
movq %r12, %rdi
callq 0x1b832
jmp 0x7d65
testl %r15d, %r15d
jne 0x9ed8
cmpl $0x2, %ebp
jne 0x9ed8
movq 0x40(%rsp), %rdi
cmpq %r14, %rdi
je 0x7d7c
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x7ee2
movq 0x18(%rsp), %rsi
jmp 0x7eda
movl $0x1, %r13d
jmp 0x7da4
xorl %r13d, %r13d
incq %rbx
movq %rbx, 0x110(%rsp)
cmpq %r12, %rbx
je 0x7dfd
movl %r13d, 0x108(%rsp)
movzbl (%rbx), %r15d
xorl %r13d, %r13d
cmpq $0xa, %r15
sete %r14b
callq 0x44f0
movq %rax, %rdi
callq 0x4180
movb %r14b, %r13b
addl %r13d, %ebp
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r15,2)
je 0x7df5
incq %rbx
cmpq %r12, %rbx
jne 0x7dbc
movq %r12, %rbx
movl 0x108(%rsp), %r13d
movq %rbx, 0x110(%rsp)
movq 0x1c0(%rsp), %r15
cmpq 0x1c8(%rsp), %r15
movq 0x30(%rsp), %rax
leaq 0x298(%rsp), %r12
jne 0x7e3d
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %r15
movq 0x30(%rsp), %rax
movl $0x200, %ecx            # imm = 0x200
addq %rcx, %r15
addq $-0x28, %r15
movq (%rax), %rbx
movq %rbx, %rdi
movq %rax, %r14
callq 0x4190
movq 0x268(%rsp), %rcx
movl %ebp, 0x8(%rsp)
movq %r15, 0x10(%rsp)
subq $0x40, %rsp
movups 0x48(%rsp), %xmm0
movups %xmm0, (%rsp)
leaq 0x298(%rsp), %rdx
movq %rdx, 0x30(%rsp)
movq %r14, 0x28(%rsp)
leaq 0x1d0(%rsp), %rdx
movq %rdx, 0x20(%rsp)
leaq 0x68(%rsp), %rdx
movq %rdx, 0x18(%rsp)
leaq 0x150(%rsp), %rdx
movq %rdx, 0x10(%rsp)
leaq 0x620(%rsp), %rdi
movq %rbx, %rsi
movq %rax, %rdx
leaq 0x2c8(%rsp), %r8
movl %r13d, %r9d
callq 0xc5b3
addq $0x40, %rsp
movq 0x288(%rsp), %rdi
cmpq %r12, %rdi
je 0x7ee2
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x18(%rsp), %r13
leaq 0x80(%rsp), %r12
leaq 0x3b0(%rsp), %r14
jmp 0x7584
movups (%rdx), %xmm0
movups %xmm0, (%rcx)
movq 0x3a8(%rsp), %rax
movq %rax, 0x10(%rsp)
jmp 0x799f
movups (%r14), %xmm0
movups %xmm0, (%rcx)
movq 0x3a8(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x7b99
movq %rdx, %rbp
movq %rax, %r13
cmpl $0x4, %ebp
jne 0xa717
movq %r13, %rdi
callq 0x4170
movq %rax, %rbx
cmpq $0x0, 0x8(%rax)
jne 0x7f5e
movq %rbx, %rdi
movq 0x30(%rsp), %rsi
callq 0x4230
movq %rbx, %rdi
callq 0xf76c
leaq 0x298(%rsp), %r12
callq 0x4600
jmp 0x7ec5
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x7f92
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x1e0(%rsp), %rdi
leaq 0x1f0(%rsp), %rax
cmpq %rax, %rdi
je 0x7fb7
movq 0x1f0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x288(%rsp), %rbx
xorl %r14d, %r14d
movl $0xc0, %edx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x4240
movb $0x1, (%rbx)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%rbx)
movups %xmm0, 0x20(%rbx)
movq %r14, 0x30(%rbx)
movups %xmm0, 0x40(%rbx)
movups %xmm0, 0x50(%rbx)
movq %r14, 0x60(%rbx)
movups %xmm0, 0x70(%rbx)
movups %xmm0, 0x80(%rbx)
movq %r14, 0x90(%rbx)
leaq 0x350(%rsp), %rax
movq %rax, -0x30(%rax)
movq $0x1, -0x28(%rax)
movups %xmm0, -0x20(%rax)
movl $0x3f800000, -0x10(%rax) # imm = 0x3F800000
movups %xmm0, -0x8(%rax)
cmpb $0x0, 0x690(%rsp)
je 0x8051
movl 0x7e8(%rsp), %edi
leaq 0x288(%rsp), %rdx
movq 0x30(%rsp), %rsi
callq 0x11442
cmpb $0x1, 0x691(%rsp)
leaq 0x3b0(%rsp), %rbx
jne 0x80ce
leaq 0x3a0(%rsp), %rdi
movq %rbx, (%rdi)
leaq 0x14887(%rip), %rsi     # 0x1c8fc
leaq 0x1488e(%rip), %rdx     # 0x1c90a
callq 0x129da
movq 0x30(%rsp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
leaq 0x3a0(%rsp), %rdi
callq 0x4130
leaq 0x288(%rsp), %rdi
leaq 0x3a0(%rsp), %rsi
xorl %edx, %edx
callq 0x118e8
movq 0x3a0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x80ce
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x678(%rsp)
je 0x86df
movq 0x218(%rsp), %rsi
movq 0x220(%rsp), %rdx
movq 0x670(%rsp), %rcx
leaq 0x128(%rsp), %rdi
callq 0x119e6
movq 0x128(%rsp), %rsi
leaq 0x3a0(%rsp), %rdi
movl $0x8, %edx
callq 0x4650
movq 0x3a0(%rsp), %rax
movq -0x18(%rax), %rax
movl 0x3c0(%rsp,%rax), %esi
testb $0x5, %sil
jne 0x9f78
leaq (%rsp,%rax), %rdi
addq $0x3a0, %rdi            # imm = 0x3A0
movl $0x1, 0x1c(%rdi)
callq 0x4610
callq 0x44f0
movq %rax, %r13
leaq 0x70(%rsp), %rax
movq %r12, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r13, 0x108(%rsp)
movq 0x3a0(%rsp), %rax
movq -0x18(%rax), %rdi
leaq 0x3a0(%rsp), %rbx
addq %rbx, %rdi
movl $0xa, %esi
callq 0x4370
leaq 0x70(%rsp), %rsi
movsbl %al, %edx
movq %rbx, %rdi
callq 0x4660
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
movq 0x70(%rsp), %rdi
jne 0x868b
movq 0x78(%rsp), %r14
movq %rdi, %rbx
testq %r14, %r14
je 0x81fa
movq %r14, %rbp
movq %rdi, %r12
movq %rdi, %rbx
movzbl (%rbx), %r15d
movq %r13, %rdi
callq 0x4180
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r15,2)
je 0x81f4
incq %rbx
decq %r14
jne 0x81d2
jmp 0x8174
movq %r12, %rdi
movq %rbp, %r14
movq %rdi, 0x148(%rsp)
movq %r14, 0x378(%rsp)
leaq (%rdi,%r14), %rbp
cmpq %rbp, %rbx
je 0x8174
movzbl (%rbx), %eax
cmpl $0x21, %eax
je 0x82cb
cmpl $0x23, %eax
je 0x8174
cmpl $0x3d, %eax
je 0x8174
movl $0x2, %eax
movq %rbx, %r12
movq %r12, %rcx
incq %r12
cmpq %rbp, %r12
je 0x8174
movq %rax, %r14
movq %rcx, 0x100(%rsp)
movzbl (%r12), %r15d
cmpq $0x3d, %r15
je 0x827a
movq %r13, %rdi
callq 0x4180
movq 0x30(%rax), %rcx
leaq 0x1(%r14), %rax
testb $0x20, 0x1(%rcx,%r15,2)
je 0x823d
xorl %r15d, %r15d
movq 0x100(%rsp), %rcx
movq %r13, %rdi
movzbl 0x1(%rcx,%r15), %r13d
callq 0x4180
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r13,2)
je 0x8526
movq 0x100(%rsp), %rcx
leaq (%rcx,%r15), %rax
addq $0x2, %rax
incq %r15
incq %r14
cmpq %rbp, %rax
movq 0x108(%rsp), %r13
jne 0x8285
jmp 0x8174
leaq 0x1(%rbx), %r12
addq $0x2, %rbx
cmpq %rbp, %rbx
je 0x83a6
movzbl (%rbx), %r14d
movq %r13, %rdi
callq 0x4180
movq 0x30(%rax), %rax
incq %rbx
testb $0x20, 0x1(%rax,%r14,2)
je 0x82d3
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
decq %rbx
movq %rbx, %r14
movzbl (%r14), %r15d
movq %r13, %rdi
callq 0x4180
movq 0x30(%rax), %rax
testb $0x20, 0x1(%rax,%r15,2)
jne 0x8348
movq %r14, %r15
cmpq %rbp, %r14
je 0x8352
movsbl (%r15), %edi
callq 0x4080
testl %eax, %eax
jne 0x8343
incq %r15
cmpq %rbp, %r15
jne 0x832e
movq %r15, %r13
jmp 0x8355
incq %r14
cmpq %rbp, %r14
jne 0x830e
jmp 0x83a1
movq %r14, %r13
subq %r14, %r15
movq %r14, 0x8(%rsp)
movq %r15, 0x10(%rsp)
movq 0x48(%rsp), %rsi
cmpq 0x50(%rsp), %rsi
je 0x837e
movups 0x8(%rsp), %xmm0
movups %xmm0, (%rsi)
addq $0x10, 0x48(%rsp)
jmp 0x838d
leaq 0x40(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x1592e
movq %r13, %r14
cmpq %rbp, %r13
movq 0x108(%rsp), %r13
jne 0x830e
movq %rbx, %rbp
jmp 0x83b7
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movq $0x0, 0x50(%rsp)
subq %r12, %rbp
movb $0x63, %cl
xorl %eax, %eax
leaq 0x1483f(%rip), %rdx     # 0x1cc04
leaq 0x1483e(%rip), %rsi     # 0x1cc0a
cmpb (%r12,%rax), %cl
jne 0x83f7
movb 0x1(%rax,%rdx), %cl
incq %rax
cmpq $0x5, %rax
jne 0x83cc
cmpq $0x5, %rbp
jne 0x83f7
leaq 0x288(%rsp), %rdi
callq 0x10b7c
jmp 0x8503
movb $0x75, %cl
xorl %eax, %eax
cmpb (%r12,%rax), %cl
jne 0x847f
movb 0x1(%rax,%rsi), %cl
incq %rax
cmpq $0x5, %rax
jne 0x83fb
cmpq $0x5, %rbp
jne 0x847f
movq 0x40(%rsp), %rbx
movq 0x48(%rsp), %r14
cmpq %r14, %rbx
je 0x8508
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
addq %rsi, %rdx
leaq 0x18(%rsp), %r15
movq %r15, 0x8(%rsp)
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x129da
leaq 0x288(%rsp), %rdi
movq %r12, %rsi
xorl %edx, %edx
callq 0x15784
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8471
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
addq $0x10, %rbx
cmpq %r14, %rbx
jne 0x8427
jmp 0x8503
movb $0x69, %cl
xorl %eax, %eax
cmpb (%r12,%rax), %cl
jne 0x8503
leaq 0x14780(%rip), %rcx     # 0x1cc10
movb 0x1(%rax,%rcx), %cl
incq %rax
cmpq $0x6, %rax
jne 0x8483
cmpq $0x6, %rbp
jne 0x8503
movq 0x40(%rsp), %rbx
movq 0x48(%rsp), %r14
cmpq %r14, %rbx
je 0x8508
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
addq %rsi, %rdx
leaq 0x18(%rsp), %r15
movq %r15, 0x8(%rsp)
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x129da
leaq 0x288(%rsp), %rdi
movq %r12, %rsi
callq 0x1586c
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x84fa
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
addq $0x10, %rbx
cmpq %r14, %rbx
jne 0x84b2
movq 0x40(%rsp), %rbx
testq %rbx, %rbx
je 0x8174
movq 0x50(%rsp), %rsi
subq %rbx, %rsi
movq %rbx, %rdi
callq 0x43a0
jmp 0x8174
movq 0x100(%rsp), %rcx
leaq (%rcx,%r15), %rax
incq %rax
cmpq %rbp, %rax
movq 0x108(%rsp), %r13
je 0x8174
cmpb $0x3d, 0x1(%rcx,%r15)
jne 0x8174
testq %r15, %r15
jne 0x8582
cmpq 0x70(%rsp), %rbx
jne 0x8582
leaq 0x70(%rsp), %rbx
movq %rbx, %rdi
callq 0x4250
leaq 0x288(%rsp), %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0x118e8
jmp 0x8174
leaq 0x18(%rsp), %r13
movq %r13, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
movb $0x0, 0x18(%rsp)
movq 0x148(%rsp), %rsi
addq 0x378(%rsp), %rsi
subq %rbx, %rsi
movq %rsi, 0x148(%rsp)
subq %r15, %rsi
leaq 0x8(%rsp), %rbp
movq %rbp, %rdi
callq 0x45b0
leaq 0x70(%rsp), %rsi
subq %rbx, %r12
subq 0x70(%rsp), %rbx
leaq 0x40(%rsp), %r13
movq %r13, %rdi
movq %rbx, %rdx
movq %r12, %rcx
callq 0x43c0
movq %rbp, %rdi
movq %r13, %rsi
callq 0x4480
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x860c
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x10(%rsp), %rsi
movl $0x1, %ecx
movq %rbp, %rdi
xorl %edx, %edx
movl $0x3d, %r8d
callq 0x4670
movq 0x100(%rsp), %rax
leaq (%rax,%r15), %rcx
addq $0x2, %rcx
movq 0x148(%rsp), %r8
subq %r14, %r8
movq 0x10(%rsp), %rsi
movq %rbp, %rdi
xorl %edx, %edx
callq 0x4400
leaq 0x288(%rsp), %rdi
movq %rbp, %rsi
xorl %edx, %edx
callq 0x118e8
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x867e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x108(%rsp), %r13
jmp 0x8174
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x86a8
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x3a0(%rsp), %rdi
callq 0x40f0
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
leaq 0x18(%rsp), %r13
je 0x86df
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x1e032(%rip), %rdx     # 0x26718
leaq 0x70(%rsp), %rdi
leaq 0x288(%rsp), %rsi
callq 0x11c16
movq 0x890(%rsp), %rdi
movq 0x8a0(%rsp), %rsi
movaps 0x70(%rsp), %xmm0
movaps %xmm0, 0x890(%rsp)
movq 0x80(%rsp), %rax
movq %rax, 0x8a0(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x70(%rsp)
movq $0x0, 0x80(%rsp)
testq %rdi, %rdi
je 0x8746
subq %rdi, %rsi
callq 0x43a0
leaq 0x8a8(%rsp), %rdi
leaq 0x88(%rsp), %rbx
movq %rbx, %rsi
callq 0x46e0
movq %rbx, %rdi
callq 0x14ed4
movq 0x70(%rsp), %rdi
testq %rdi, %rdi
je 0x8780
movq 0x80(%rsp), %rsi
subq %rdi, %rsi
callq 0x43a0
movq $0x0, 0x40(%rsp)
movl 0x694(%rsp), %eax
leal -0x1(%rax), %ecx
cmpl $0x2, %ecx
ja 0x8821
cmpq $0x0, 0x5e8(%rsp)
jne 0x8821
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x20, (%rsi)
xorl %edx, %edx
callq 0x4640
leaq 0x70(%rsp), %rsi
movq %rax, (%rsi)
movq 0x8(%rsp), %rcx
movq %rcx, 0x10(%rsi)
movups 0x14ec9(%rip), %xmm0    # 0x1d6a8
movups %xmm0, 0x10(%rax)
movups 0x14eae(%rip), %xmm0    # 0x1d698
movups %xmm0, (%rax)
movq %rcx, 0x8(%rsi)
movq (%rsi), %rax
movb $0x0, (%rax,%rcx)
movq %rbx, %rdi
callq 0xadcf
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x881a
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movl 0x694(%rsp), %eax
andl $-0x2, %eax
cmpl $0x4, %eax
jne 0x8f33
cmpq $0x0, 0x5e8(%rsp)
je 0x88b6
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x4d, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14e46(%rip), %rsi     # 0x1d6b9
movl $0x4d, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x88b6
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x610(%rsp)
je 0x893f
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x52, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14e0b(%rip), %rsi     # 0x1d707
movl $0x52, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x893f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x638(%rsp)
je 0x89c8
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x51, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14dd5(%rip), %rsi     # 0x1d75a
movl $0x51, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x89c8
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x848(%rsp)
je 0x8a51
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x53, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14d9e(%rip), %rsi     # 0x1d7ac
movl $0x53, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8a51
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $-0x1, 0x7e8(%rsp)
je 0x8ad9
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x4c, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14d6a(%rip), %rsi     # 0x1d800
movl $0x4c, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8ad9
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x738(%rsp)
je 0x8b62
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x54, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14d2e(%rip), %rsi     # 0x1d84d
movl $0x54, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8b62
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movb 0x868(%rsp), %al
orb 0x864(%rsp), %al
je 0x8bf0
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x62, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14cf5(%rip), %rsi     # 0x1d8a2
movl $0x62, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8bf0
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movzwl 0x71c(%rsp), %eax
testl $0x280, %eax            # imm = 0x280
je 0x8c89
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x57, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14cc7(%rip), %rsi     # 0x1d905
movl $0x57, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8c81
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movzwl 0x71c(%rsp), %eax
testb $0x40, %al
je 0x8d17
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x5b, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14c91(%rip), %rsi     # 0x1d95d
movl $0x5b, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8d0f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movzwl 0x71c(%rsp), %eax
btl $0x8, %eax
jae 0x8d9b
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x5a, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14c61(%rip), %rsi     # 0x1d9b9
movl $0x5a, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8d9b
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x0, 0x6e0(%rsp)
je 0x8e23
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x59, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14c34(%rip), %rsi     # 0x1da14
movl $0x59, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8e23
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpb $0x1, 0x7f4(%rsp)
jne 0x8eab
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x55, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14c06(%rip), %rsi     # 0x1da6e
movl $0x55, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8eab
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpb $0x1, 0x860(%rsp)
jne 0x8f33
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x5e, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14bd4(%rip), %rsi     # 0x1dac4
movl $0x5e, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8f33
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x1, 0x6e0(%rsp)
movq 0x6f0(%rsp), %rax
jne 0x8f53
testq %rax, %rax
jne 0x907d
jmp 0x8ff7
testq %rax, %rax
je 0x907d
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x43, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14b8c(%rip), %rsi     # 0x1db23
movl $0x43, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x8fda
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x1, 0x6e0(%rsp)
jne 0x907d
cmpq $0x0, 0x6f0(%rsp)
jne 0x907d
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x39, (%rsi)
xorl %edx, %edx
callq 0x4640
leaq 0x70(%rsp), %rsi
movq %rax, (%rsi)
movq 0x8(%rsp), %rcx
movq %rcx, 0x10(%rsi)
movups 0x14b61(%rip), %xmm0    # 0x1db90
movups %xmm0, 0x29(%rax)
movups 0x14b4d(%rip), %xmm0    # 0x1db87
movups %xmm0, 0x20(%rax)
movups 0x14b32(%rip), %xmm0    # 0x1db77
movups %xmm0, 0x10(%rax)
movups 0x14b17(%rip), %xmm0    # 0x1db67
movups %xmm0, (%rax)
movq %rcx, 0x8(%rsi)
movb $0x0, (%rax,%rcx)
movq %rbx, %rdi
callq 0xadcf
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x907d
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x2, 0x694(%rsp)
jne 0x91a7
cmpq $0x0, 0x658(%rsp)
jne 0x9114
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x41, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14ad0(%rip), %rsi     # 0x1dba1
movl $0x41, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x9114
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $-0x1, 0x7c0(%rsp)
jne 0x9129
cmpq $0x0, 0x7d0(%rsp)
je 0x91a7
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x56, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14a7f(%rip), %rsi     # 0x1dbe3
movl $0x56, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x91a7
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
testb $0x8, 0x71d(%rsp)
je 0x9242
movl 0x694(%rsp), %eax
addl $-0x3, %eax
cmpl $0x2, %eax
jb 0x9242
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x42, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x14a3b(%rip), %rsi     # 0x1dc3a
movl $0x42, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x9242
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x70(%rsp), %rdi
leaq 0x258(%rsp), %rax
movq %rax, (%rdi)
leaq 0x40(%rsp), %rax
movq %rax, 0x8(%rdi)
leaq 0x28(%rsp), %rax
movq %rax, 0x10(%rdi)
leaq 0x14a12(%rip), %rsi     # 0x1dc7d
leaq 0x730(%rsp), %rdx
callq 0xfce4
leaq 0x14a0c(%rip), %rsi     # 0x1dc8b
leaq 0x70(%rsp), %rdi
leaq 0x6e8(%rsp), %rdx
callq 0xfce4
leaq 0x149fb(%rip), %rsi     # 0x1dc93
leaq 0x70(%rsp), %rdi
leaq 0x630(%rsp), %rdx
callq 0xfce4
leaq 0x149ee(%rip), %rsi     # 0x1dc9f
leaq 0x70(%rsp), %rdi
leaq 0x650(%rsp), %rdx
callq 0xfce4
cmpl $-0x1, 0x75c(%rsp)
jne 0x92db
movl 0x758(%rsp), %eax
movl %eax, 0x75c(%rsp)
cmpl $-0x1, 0x70c(%rsp)
jne 0x92f1
callq 0x41d0
movl %eax, 0x70c(%rsp)
cmpl $-0x1, 0x714(%rsp)
jne 0x931a
movl 0x710(%rsp), %eax
movl %eax, 0x714(%rsp)
cmpl $-0x1, %eax
jne 0x931a
callq 0x43e0
movl %eax, 0x714(%rsp)
cmpl $-0x1, 0x7ec(%rsp)
jne 0x933a
cmpl $-0x1, 0x7f0(%rsp)
jne 0x933a
callq 0x43e0
movl %eax, 0x7f0(%rsp)
cmpl $0x1, 0x6e0(%rsp)
je 0x935b
movq $0x0, 0x6f0(%rsp)
movq 0x6e8(%rsp), %rax
movb $0x0, (%rax)
movl 0x694(%rsp), %eax
decl %eax
cmpl $0x2, %eax
jb 0x93f6
cmpq $0x0, 0x828(%rsp)
je 0x93f6
movq 0x28(%rsp), %rbx
leaq 0x70(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x8(%rsp), %rsi
movq $0x5a, (%rsi)
xorl %edx, %edx
callq 0x4640
movq %rax, %r14
leaq 0x70(%rsp), %r15
movq %rax, (%r15)
movq 0x8(%rsp), %r12
movq %r12, 0x10(%r15)
leaq 0x148f5(%rip), %rsi     # 0x1dca8
movl $0x5a, %edx
movq %rax, %rdi
callq 0x4310
movq %r12, 0x8(%r15)
movb $0x0, (%r14,%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0xadcf
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
je 0x93f6
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x638(%rsp)
je 0x9416
leaq 0x218(%rsp), %rdi
leaq 0x630(%rsp), %rsi
callq 0x4230
movq 0x218(%rsp), %rdi
movl $0x210000, %esi         # imm = 0x210000
xorl %eax, %eax
callq 0x42e0
movl %eax, 0x124(%rsp)
testl %eax, %eax
jns 0x94fd
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x134e5(%rip), %rsi     # 0x1c92d
leaq 0x13508(%rip), %rdx     # 0x1c957
callq 0x129da
callq 0x4060
movl (%rax), %edi
callq 0x4140
leaq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0x46a0
movq %r12, 0x70(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9493
movq %rdx, 0x70(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x80(%rsp)
jmp 0x949b
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x70(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x30(%rsp), %rdi
callq 0xadcf
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x94db
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x94f2
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
movl $0xffffff9c, 0x124(%rsp) # imm = 0xFFFFFF9C
movq 0x30(%rsp), %rax
movq %rax, 0x110(%rsp)
leaq 0x124(%rsp), %rax
movq %rax, 0x118(%rsp)
cmpq $0x0, 0x5e8(%rsp)
je 0x9579
leaq 0x5e0(%rsp), %rsi
movq 0x10(%rsi), %rax
movslq 0x10(%rax), %rdx
movslq 0x14(%rax), %rcx
subq %rdx, %rcx
leaq 0x70(%rsp), %rdi
callq 0x11f98
movq 0x70(%rsp), %rdx
leaq 0x1380e(%rip), %rsi     # 0x1cd60
leaq 0x110(%rsp), %rdi
callq 0xae4c
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x9579
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpq $0x0, 0x610(%rsp)
je 0x95d8
leaq 0x608(%rsp), %rsi
movq 0x10(%rsi), %rax
movslq 0x10(%rax), %rdx
movslq 0x14(%rax), %rcx
subq %rdx, %rcx
leaq 0x70(%rsp), %rdi
callq 0x11f98
movq 0x70(%rsp), %rdx
leaq 0x133a7(%rip), %rsi     # 0x1c958
leaq 0x110(%rsp), %rdi
callq 0xae4c
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x95d8
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x1, 0x6e0(%rsp)
jne 0x99a2
movq 0x6f0(%rsp), %rax
testq %rax, %rax
je 0x99a2
movq 0x6e8(%rsp), %rcx
leaq 0x70(%rsp), %rdi
movq %rcx, (%rdi)
movq %rax, 0x8(%rdi)
movl $0x2f, %esi
callq 0x14f44
cmpq $-0x1, %rax
je 0x9634
testq %rax, %rax
leaq 0x138(%rsp), %r12
jne 0x9642
movl $0x1, %eax
movq 0x70(%rsp), %rsi
jmp 0x9668
xorl %esi, %esi
xorl %eax, %eax
leaq 0x138(%rsp), %r12
jmp 0x9668
movq 0x70(%rsp), %rsi
leal -0x1(%rax), %ecx
cmpb $0x2f, (%rsi,%rcx)
jne 0x965c
decq %rax
jne 0x9647
movl $0x1, %eax
jmp 0x9668
movq 0x78(%rsp), %rcx
cmpq %rax, %rcx
cmovbq %rcx, %rax
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
addq %rsi, %rax
movq %rax, %rdx
callq 0x129da
cmpq $0x0, 0x10(%rsp)
je 0x998b
movl 0x124(%rsp), %edi
movq 0x8(%rsp), %rsi
leaq 0x70(%rsp), %rdx
xorl %ecx, %ecx
callq 0x4120
cmpl $-0x1, %eax
je 0x973a
testb $0x40, 0x89(%rsp)
jne 0x998b
leaq 0x160(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x132ad(%rip), %rsi     # 0x1c976
leaq 0x132b9(%rip), %rdx     # 0x1c989
leaq 0x150(%rsp), %rdi
callq 0x129da
leaq 0x128(%rsp), %rdi
leaq 0x150(%rsp), %rsi
leaq 0x8(%rsp), %rdx
callq 0x12017
leaq 0x1328c(%rip), %rsi     # 0x1c98a
leaq 0x128(%rsp), %rdi
callq 0x46a0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9909
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x990f
leaq 0x248(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x13218(%rip), %rsi     # 0x1c965
leaq 0x13235(%rip), %rdx     # 0x1c989
leaq 0x238(%rsp), %rdi
callq 0x129da
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
leaq 0x238(%rsp), %rdi
callq 0x4130
leaq 0x160(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97a8
movq %rdx, 0x150(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x160(%rsp)
jmp 0x97af
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x150(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x12f7a(%rip), %rsi     # 0x1c74f
callq 0x46a0
movq %r12, 0x128(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9806
movq %rdx, 0x128(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x138(%rsp)
jmp 0x980e
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x128(%rsp), %rbx
movq %rdx, 0x8(%rbx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x4060
movl (%rax), %edi
callq 0x4140
movq %rbx, %rdi
movq %rax, %rsi
callq 0x46a0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x986c
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x9872
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x40(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x30(%rsp), %rdi
callq 0xadcf
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x98b4
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x128(%rsp), %rdi
cmpq %r12, %rdi
je 0x98d1
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x150(%rsp), %rdi
cmpq %r15, %rdi
je 0x98ee
movq 0x160(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x238(%rsp), %rdi
cmpq %r14, %rdi
je 0x998b
movq 0x248(%rsp), %rsi
jmp 0x9983
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x40(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x30(%rsp), %rdi
callq 0xadcf
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x9951
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x128(%rsp), %rdi
cmpq %r12, %rdi
je 0x996e
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x150(%rsp), %rdi
cmpq %rbx, %rdi
je 0x998b
movq 0x160(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x99a2
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
movl 0x124(%rsp), %edi
cmpl $-0x64, %edi
je 0x99b3
callq 0x46b0
movl $0xb8, %edi
callq 0x4390
movq %rax, %rbx
movl 0x694(%rsp), %ebp
leaq 0x5c8(%rsp), %rdi
leaq 0x698(%rsp), %rsi
callq 0x12072
leaq 0x5b8(%rsp), %r13
movq %r13, -0x10(%r13)
movq 0x820(%rsp), %rsi
movq 0x828(%rsp), %rdx
addq %rsi, %rdx
leaq 0x5a8(%rsp), %r14
movq %r14, %rdi
callq 0x15318
movl 0x6e0(%rsp), %eax
subq $0x8, %rsp
leaq 0x5d0(%rsp), %r8
movq %rbx, %rdi
movq 0x38(%rsp), %rsi
movl %ebp, %edx
leaq 0x808(%rsp), %rcx
leaq 0x6b8(%rsp), %r9
pushq %rax
pushq %r14
leaq 0x6e0(%rsp), %rax
pushq %rax
callq 0x120ae
addq $0x20, %rsp
leaq 0x298(%rsp), %r14
leaq 0x2c8(%rsp), %r15
leaq 0x2f8(%rsp), %r12
leaq 0x320(%rsp), %rbp
movq 0x5a8(%rsp), %rdi
cmpq %r13, %rdi
je 0x9a8a
movq 0x5b8(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x5c8(%rsp), %rdi
callq 0x15154
movq %rbp, %rdi
callq 0x123a0
movq %r12, %rdi
callq 0x12410
movq %r15, %rdi
callq 0x12410
movq %r14, %rdi
callq 0x12410
leaq 0x190(%rsp), %rdi
callq 0x1519a
leaq 0x5e0(%rsp), %rdi
callq 0x121d2
leaq 0x8a8(%rsp), %rdi
callq 0x14ed4
movq 0x890(%rsp), %rdi
testq %rdi, %rdi
je 0x9afb
movq 0x8a0(%rsp), %rsi
subq %rdi, %rsi
callq 0x43a0
movq 0x358(%rsp), %rdi
leaq 0x368(%rsp), %rax
cmpq %rax, %rdi
je 0x9b20
movq 0x368(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x6c(%rsp), %rdi
callq 0x12388
leaq 0x200(%rsp), %rdi
callq 0x1b832
movq 0x170(%rsp), %rdi
leaq 0x180(%rsp), %rax
cmpq %rax, %rdi
je 0x9b5c
movq 0x180(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x9b81
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x268(%rsp), %rdi
leaq 0x278(%rsp), %rax
cmpq %rax, %rdi
je 0x9ba6
movq 0x278(%rsp), %rsi
incq %rsi
callq 0x43a0
movq %rbx, %rax
addq $0x8e8, %rsp            # imm = 0x8E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x70, %edi
callq 0x41c0
movq %rax, %rbx
movq 0x1c0(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x9c33
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rax
leaq 0x1f8(%rax), %rcx
addq $0x200, %rax            # imm = 0x200
jmp 0x9c37
movl $0x70, %edi
callq 0x41c0
movq %rax, %rbx
movq 0x1c0(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x9ca2
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rax
leaq 0x1f8(%rax), %rcx
addq $0x200, %rax            # imm = 0x200
jmp 0x9ca6
leaq -0x8(%rax), %rcx
movl (%rcx), %ecx
movl %ecx, 0x8(%rsp)
addq $-0x28, %rax
movq %rax, 0x10(%rsp)
leaq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
movq %rax, (%rdi)
leaq 0x13079(%rip), %rsi     # 0x1ccd9
leaq 0x130cb(%rip), %rdx     # 0x1cd32
callq 0x129da
movb $0x1, %r14b
leaq 0x8(%rsp), %rsi
leaq 0x288(%rsp), %rdx
movq %rbx, %rdi
callq 0x16b06
xorl %r14d, %r14d
leaq 0x1bf92(%rip), %rsi     # 0x25c20
leaq 0xcf11(%rip), %rdx      # 0x16ba6
movq %rbx, %rdi
callq 0x4620
jmp 0xa13e
leaq -0x8(%rax), %rcx
movl (%rcx), %ecx
movl %ecx, 0x8(%rsp)
addq $-0x28, %rax
movq %rax, 0x10(%rsp)
leaq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
movq %rax, (%rdi)
leaq 0x12fd5(%rip), %rsi     # 0x1cca4
leaq 0x13002(%rip), %rdx     # 0x1ccd8
callq 0x129da
movb $0x1, %r14b
leaq 0x8(%rsp), %rsi
leaq 0x288(%rsp), %rdx
movq %rbx, %rdi
callq 0x16b06
xorl %r14d, %r14d
leaq 0x1bf23(%rip), %rsi     # 0x25c20
leaq 0xcea2(%rip), %rdx      # 0x16ba6
movq %rbx, %rdi
callq 0x4620
jmp 0xa13e
movl $0x70, %edi
callq 0x41c0
movq %rax, %rbx
leaq 0x3a0(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x13038(%rip), %rsi     # 0x1cd68
leaq 0x13043(%rip), %rdx     # 0x1cd7a
callq 0x129da
movq 0x1c0(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x9e8a
movq 0x1d8(%rsp), %rax
movq -0x8(%rax), %rax
leaq 0x1f8(%rax), %rcx
addq $0x200, %rax            # imm = 0x200
jmp 0x9e8e
movl $0x70, %edi
callq 0x41c0
movq %rax, %rbx
leaq 0x12ff7(%rip), %rsi     # 0x1cd7b
leaq 0x288(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x171ce
leaq 0x12fe1(%rip), %rsi     # 0x1cd7e
leaq 0x288(%rsp), %rdi
callq 0x46a0
leaq 0x3b0(%rsp), %rcx
movq %rcx, 0x3a0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x9ffc
movups (%rcx), %xmm0
leaq 0x3b0(%rsp), %rdx
movups %xmm0, (%rdx)
jmp 0xa00f
movq 0x1c0(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x9e03
movq 0x1d8(%rsp), %rcx
movl $0x200, %eax            # imm = 0x200
addq -0x8(%rcx), %rax
addq $-0x28, %rax
movl %ebp, 0x288(%rsp)
movq %rax, 0x290(%rsp)
movl $0x70, %edi
callq 0x41c0
movq %rax, %rbx
leaq 0x3a0(%rsp), %rdi
leaq 0x3b0(%rsp), %rax
movq %rax, (%rdi)
leaq 0x12f1a(%rip), %rsi     # 0x1cd57
leaq 0x12f23(%rip), %rdx     # 0x1cd67
callq 0x129da
movb $0x1, %r14b
leaq 0x1e0(%rsp), %rsi
leaq 0x3a0(%rsp), %rdx
leaq 0x288(%rsp), %rcx
movq %rbx, %rdi
callq 0x16d7c
xorl %r14d, %r14d
leaq 0x1bdaa(%rip), %rsi     # 0x25c20
leaq 0xcd29(%rip), %rdx      # 0x16ba6
movq %rbx, %rdi
callq 0x4620
jmp 0xa13e
leaq -0x8(%rax), %rcx
movl (%rcx), %edx
leaq 0x8(%rsp), %rcx
movl %edx, (%rcx)
addq $-0x28, %rax
movq %rax, 0x8(%rcx)
movb $0x1, %r14b
leaq 0x1e0(%rsp), %rsi
leaq 0x3a0(%rsp), %rdx
movq %rbx, %rdi
callq 0x16d7c
xorl %r14d, %r14d
leaq 0x1bd5c(%rip), %rsi     # 0x25c20
leaq 0xccdb(%rip), %rdx      # 0x16ba6
movq %rbx, %rdi
callq 0x4620
jmp 0xa13e
movl $0x40, %edi
callq 0x41c0
movq %rax, %rbx
leaq 0x12e5b(%rip), %rdx     # 0x1cd47
leaq 0x288(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x1134c
movl %ebp, %edi
callq 0x4140
leaq 0x288(%rsp), %rdi
movq %rax, %rsi
callq 0x46a0
leaq 0x3b0(%rsp), %rcx
movq %rcx, 0x3a0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0xa062
movups (%rcx), %xmm0
leaq 0x3b0(%rsp), %rdx
movups %xmm0, (%rdx)
jmp 0xa075
cmpl $0x0, 0x100(%rsp)
jne 0x9fbc
movl $0x40, %edi
callq 0x41c0
movq %rax, %r14
movq %rax, %rdi
movq 0x30(%rsp), %rsi
callq 0x110fa
leaq 0x1bc4a(%rip), %rsi     # 0x25bc0
jmp 0x9fed
movl $0x20, %edi
callq 0x41c0
movq %rax, %r14
callq 0x4060
movl (%rax), %ebx
callq 0x41e0
movq %r14, %rdi
movl %ebx, %esi
movq %rax, %rdx
callq 0x156f2
movq 0x1bfa3(%rip), %rsi     # 0x25f48
movq 0x1bfcc(%rip), %rdx     # 0x25f78
movq %r14, %rdi
leaq 0x80(%rsp), %r12
callq 0x4620
movl $0x40, %edi
callq 0x41c0
movq %rax, %r14
leaq 0x358(%rsp), %rdx
movq %rax, %rdi
movq 0x30(%rsp), %rsi
movq 0x100(%rsp), %rcx
callq 0x11184
leaq 0x1bbeb(%rip), %rsi     # 0x25bd8
leaq 0x7418(%rip), %rdx      # 0x1140c
movq %r14, %rdi
callq 0x4620
movq %rdx, 0x3a0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x3b0(%rsp)
movq 0x8(%rax), %rsi
leaq 0x3a0(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movb $0x1, %r14b
leaq 0x1e0(%rsp), %rsi
leaq 0x238(%rsp), %rcx
movq %rbx, %rdi
callq 0x16d7c
xorl %r14d, %r14d
leaq 0x1bbcd(%rip), %rsi     # 0x25c20
leaq 0xcb4c(%rip), %rdx      # 0x16ba6
movq %rbx, %rdi
callq 0x4620
movq %rdx, 0x3a0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x3b0(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x3a8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
movq 0x1e0(%rsp), %rsi
movq 0x1e8(%rsp), %rdx
addq %rsi, %rdx
movb $0x1, %r14b
movq %rbx, %rdi
callq 0x15318
movq %rbx, %rax
addq $0x30, %rax
movq %rax, 0x20(%rbx)
movq 0x3a0(%rsp), %rcx
leaq 0x3b0(%rsp), %rdx
cmpq %rdx, %rcx
jne 0xa0e5
leaq 0x3b0(%rsp), %rcx
movups (%rcx), %xmm0
movups %xmm0, (%rax)
jmp 0xa0f5
movq %rcx, 0x20(%rbx)
movq 0x3b0(%rsp), %rax
movq %rax, 0x30(%rbx)
movq 0x3a8(%rsp), %rax
movq %rax, 0x28(%rbx)
leaq 0x3b0(%rsp), %rax
movq %rax, 0x3a0(%rsp)
movq $0x0, 0x3a8(%rsp)
movb $0x0, 0x3b0(%rsp)
xorl %r14d, %r14d
leaq 0x1ba81(%rip), %rsi     # 0x25bb0
leaq 0x72d6(%rip), %rdx      # 0x1140c
movq %rbx, %rdi
callq 0x4620
movq %rdx, %rbp
movq %rax, %r13
jmp 0xa717
movq %rdx, %rbp
movq %rax, %r13
callq 0x4600
jmp 0xa717
jmp 0xad18
movq %rax, %rbp
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0xa182
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa182
movq %rax, %rbp
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
je 0xa1ac
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa1ac
movq %rax, %rbp
movq 0x150(%rsp), %rdi
cmpq %rbx, %rdi
je 0xa3be
movq 0x160(%rsp), %rsi
jmp 0xa3b1
jmp 0xa3bb
movq %rax, %rbp
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0xa1f3
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa1f3
movq %rax, %rbp
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
je 0xa21d
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa21d
movq %rax, %rbp
movq 0x150(%rsp), %rdi
cmpq %r15, %rdi
je 0xa23f
movq 0x160(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa23f
movq %rax, %rbp
movq 0x238(%rsp), %rdi
cmpq %r14, %rdi
je 0xa3be
movq 0x248(%rsp), %rsi
jmp 0xa3b1
jmp 0xa3bb
jmp 0xa3e0
jmp 0xa97d
jmp 0xad18
jmp 0xa38c
jmp 0xa419
jmp 0xa87a
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
leaq 0x3b0(%rsp), %rax
cmpq %rax, %rdi
je 0xa2ab
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa2d0
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
jne 0xa40c
jmp 0xa7a1
movq %rdx, %rbp
movq %rax, %r13
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa40c
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa40c
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa858
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
jmp 0xa419
movq %rdx, %rbx
movq %rax, %rbp
movq %r14, %rdi
callq 0x42d0
leaq 0x18(%rsp), %r13
leaq 0x80(%rsp), %r12
jmp 0xa9aa
jmp 0xa52a
movq %rax, %r13
movq %r14, %rdi
callq 0x42d0
jmp 0xac61
movq %rax, %rbp
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0xa3be
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa3be
movq %rax, %rbp
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0xa85b
movq 0x18(%rsp), %rsi
jmp 0xa543
jmp 0xa858
movq %rdx, %rbx
movq %rax, %rbp
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0xa983
movq 0x18(%rsp), %rsi
incq %rsi
jmp 0xa8a9
movq %rdx, %rbp
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
jmp 0xa7a1
movq %rax, %rbp
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
jne 0xa53b
jmp 0xa85b
jmp 0xa52a
jmp 0xa858
movq %rax, %rbp
cmpl $0x2, %edx
jne 0xa85b
movq %rbp, %rdi
callq 0x4170
leaq 0x20(%rax), %rsi
movq 0x30(%rsp), %rdi
callq 0xadcf
callq 0x4600
leaq 0x18(%rsp), %r13
leaq 0x80(%rsp), %r12
jmp 0x8051
jmp 0xa858
movq %rax, %rbp
callq 0x4600
jmp 0xa85b
jmp 0xa87a
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
leaq 0x3b0(%rsp), %rax
cmpq %rax, %rdi
je 0xa4bc
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa4e1
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
jne 0xa688
jmp 0xa777
movq %rdx, %rbp
movq %rax, %r13
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa688
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa688
jmp 0xa52a
jmp 0xa858
movq %rax, %rbp
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0xa85b
movq 0x80(%rsp), %rsi
incq %rsi
jmp 0xa607
jmp 0xa858
jmp 0xa5b8
movq %rdx, %rbx
movq %rax, %rbp
jmp 0xa9b7
movq %rdx, %rbx
movq %rax, %rbp
jmp 0xa9dc
movq %rax, %r13
jmp 0xace7
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
leaq 0x3b0(%rsp), %rax
cmpq %rax, %rdi
je 0xa59b
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
jne 0xa5ab
jmp 0xa7bd
movq %rdx, %rbp
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
jmp 0xa7bd
movq %rdx, %rbx
movq %rax, %rbp
leaq 0x18(%rsp), %r13
jmp 0xa9aa
movq %rax, %rbp
movq 0x5a8(%rsp), %rdi
cmpq %r13, %rdi
je 0xa5ed
movq 0x5b8(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa5ed
movq %rax, %rbp
leaq 0x5c8(%rsp), %rdi
callq 0x15154
jmp 0xa5ff
movq %rax, %rbp
movl $0xb8, %esi
movq %rbx, %rdi
callq 0x43a0
jmp 0xa85b
jmp 0xa858
jmp 0xad18
jmp 0xa858
movq %rax, %rbp
movq 0x3a0(%rsp), %rdi
cmpq %rbx, %rdi
je 0xa85b
movq 0x3b0(%rsp), %rsi
jmp 0xa543
movq %rdx, %rbp
movq %rax, %r13
jmp 0xab64
movq %rax, %r13
movq 0x380(%rsp), %rdi
cmpq %rbx, %rdi
je 0xac3a
movq 0x390(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xac3a
movq %rax, %r13
jmp 0xac47
jmp 0xa87a
movq %rdx, %rbp
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
jmp 0xa777
jmp 0xa858
movq %rdx, %rbp
movq %rax, %r13
jmp 0xa6c5
movq %rdx, %rbp
movq %rax, %r13
movq 0x128(%rsp), %rdi
cmpq %r15, %rdi
je 0xa6c5
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x3a0(%rsp), %rdi
callq 0x1b832
jmp 0xa7a1
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
leaq 0x3b0(%rsp), %rax
cmpq %rax, %rdi
je 0xa702
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
jne 0xa70f
jmp 0xa717
movq %rdx, %rbp
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa7d9
movq 0x298(%rsp), %rsi
jmp 0xa7d1
jmp 0xa73f
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
leaq 0x3a0(%rsp), %r14
cmpq %r14, %rdi
je 0xa777
movq (%rdi), %rbx
movl $0x18, %esi
callq 0x43a0
movq %rbx, %rdi
cmpq %r14, %rbx
jne 0xa75a
jmp 0xa777
movq %rdx, %rbp
movq %rax, %r13
movq 0x150(%rsp), %rdi
leaq 0x150(%rsp), %r14
cmpq %r14, %rdi
je 0xa7a1
movq (%rdi), %rbx
movl $0x18, %esi
callq 0x43a0
movq %rbx, %rdi
cmpq %r14, %rbx
jne 0xa78c
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0xa7bd
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0xa7d9
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x80(%rsp), %r12
jmp 0xab25
jmp 0xad18
jmp 0xad18
jmp 0xa7fc
jmp 0xa88d
jmp 0xa88d
movq %rdx, %rbx
movq %rax, %rbp
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0xa893
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xa893
jmp 0xa88d
jmp 0xad18
jmp 0xad18
movq %rax, %r13
movq 0x5e0(%rsp), %rdi
cmpq %r14, %rdi
je 0xac61
movq 0x5f0(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xac61
jmp 0xa87a
jmp 0xa87a
movq %rax, %rbp
leaq 0x288(%rsp), %rdi
callq 0xff9c
movq %rbp, %r13
jmp 0xac3a
jmp 0xa97d
jmp 0xa97d
movq %rax, %r13
jmp 0xac61
movq %rdx, %rbp
movq %rax, %r13
jmp 0xab25
movq %rdx, %rbx
movq %rax, %rbp
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0xa983
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x43a0
jmp 0xa983
jmp 0xa97d
jmp 0xa97d
jmp 0xad18
jmp 0xad18
movq %rdx, %rbp
movq %rax, %r13
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa8f2
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
leaq 0x80(%rsp), %r12
leaq 0x3b0(%rsp), %r14
jne 0xa922
jmp 0xab08
movq %rdx, %rbp
movq %rax, %r13
leaq 0x80(%rsp), %r12
leaq 0x3b0(%rsp), %r14
jmp 0xa970
movq %rdx, %rbp
movq %rax, %r13
movq 0x288(%rsp), %rdi
leaq 0x298(%rsp), %rax
cmpq %rax, %rdi
je 0xa94f
movq 0x298(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %r14b, %r14b
leaq 0x80(%rsp), %r12
leaq 0x3b0(%rsp), %r14
je 0xab08
jmp 0xa970
movq %rdx, %rbp
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
jmp 0xab08
movq %rdx, %rbx
movq %rax, %rbp
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %r12
cmpq %r12, %rdi
leaq 0x18(%rsp), %r13
je 0xa9aa
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x3a0(%rsp), %rdi
callq 0x40f0
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
je 0xa9dc
movq 0x138(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x1, %ebx
jne 0xa85b
movq %rbp, %rdi
callq 0x4170
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x11f0c(%rip), %rsi     # 0x1c90b
leaq 0x11f26(%rip), %rdx     # 0x1c92c
callq 0x129da
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0x46a0
movq %r12, 0x70(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0xaa47
movq %rdx, 0x70(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x80(%rsp)
jmp 0xaa4f
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x70(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x30(%rsp), %rdi
callq 0xadcf
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0xaa8f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0xaaa6
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
callq 0x4600
jmp 0x86df
jmp 0xa858
movq %rax, %rbp
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0xaad7
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xaad7
movq %rax, %rbp
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0xaaf8
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0xaaf8
movq %rax, %rbp
callq 0x4600
jmp 0xa85b
movq %rdx, %rbp
movq %rax, %r13
movq 0x3a0(%rsp), %rdi
cmpq %r14, %rdi
je 0xab25
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0xab3f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x1e0(%rsp), %rdi
leaq 0x1f0(%rsp), %rax
cmpq %rax, %rdi
je 0xab64
movq 0x1f0(%rsp), %rsi
incq %rsi
callq 0x43a0
cmpl $0x1, %ebp
jne 0xac3a
movq %r13, %rdi
callq 0x4170
movq %rax, %rdi
movq 0x30(%rsp), %rsi
callq 0xad20
movl $0x40, %edi
callq 0x41c0
movq %rax, %rbx
movq 0x1c0(%rsp), %rsi
cmpq 0x1c8(%rsp), %rsi
jne 0xabb2
movq 0x1d8(%rsp), %rax
movl $0x200, %esi            # imm = 0x200
addq -0x8(%rax), %rsi
addq $-0x28, %rsi
leaq 0x11d15(%rip), %rdx     # 0x1c8d2
leaq 0x3a0(%rsp), %rdi
callq 0x1134c
movb $0x1, %bpl
leaq 0x3a0(%rsp), %rdx
movq %rbx, %rdi
movq 0x30(%rsp), %rsi
callq 0x113a2
xorl %ebp, %ebp
leaq 0x1afc5(%rip), %rsi     # 0x25bb0
leaq 0x681a(%rip), %rdx      # 0x1140c
movq %rbx, %rdi
callq 0x4620
movq %rax, %r13
leaq 0x3b0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xac1e
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x43a0
testb %bpl, %bpl
jne 0xac28
jmp 0xac35
movq %rax, %r13
movq %rbx, %rdi
callq 0x42d0
jmp 0xac35
movq %rax, %r13
callq 0x4600
leaq 0x190(%rsp), %rdi
callq 0x1519a
leaq 0x5e0(%rsp), %rdi
callq 0x121d2
leaq 0x890(%rsp), %rdi
callq 0x11f74
movq 0x358(%rsp), %rdi
leaq 0x368(%rsp), %rax
cmpq %rax, %rdi
je 0xac86
movq 0x368(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x6c(%rsp), %rdi
callq 0x12388
leaq 0x200(%rsp), %rdi
callq 0x1b832
movq 0x170(%rsp), %rdi
leaq 0x180(%rsp), %rax
cmpq %rax, %rdi
je 0xacc2
movq 0x180(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0xace7
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x43a0
movq 0x268(%rsp), %rdi
leaq 0x278(%rsp), %rax
cmpq %rax, %rdi
je 0xad0c
movq 0x278(%rsp), %rsi
incq %rsi
callq 0x43a0
movq %r13, %rdi
callq 0x4630
jmp 0xad18
jmp 0xad18
movq %rax, %rdi
callq 0x1002f