예제 #1
0
error_or<uint64_t> image_entry_macho(const MachOObjectFile& obj) {
    auto it =
        std::find_if(obj.begin_load_commands(), obj.end_load_commands(), is_main);
    if (it == obj.end_load_commands())
        return failure("LC_MAIN not found, binary version < 10.8");
    const MachO::entry_point_command *entry_cmd =
        reinterpret_cast<const MachO::entry_point_command*>(it->Ptr);
    return success(entry_cmd->entryoff);
}