Сообщение от ErikPshat
Для запуска приложений, использующих kernel-режим, требуется внедрение rebootex модуля, что пока лично мной не изучено. Если кто-то имеет информацию по данному вопросу, то можете поделиться ей. Например неплохо было бы заставить работать PSPident на официальных прошивках...
|
Ну во-первых rebootex не есть модуль. Чтобы досконально изучить это дело можешь посмотреть Davee's Downgrader. Схема работы такая.
1. Использование kernel-эксплоита под определённую прошивку.
2. rebootex по сути это код с kernel правами, который так и так выполняется каждый раз при перезагрузке или смене режима (VSH, GAME...).
Так вот он внедряется. Он патчатит необходимые модули: LoadExec в первую очередь. И только потом можно уже стандартно загрузить модуль с правами ядра.
Что мы сейчас написали? Угу, прошивку. Поэтому, предположение было в корне неправильное
Что насчет енкриптера. Я не совсем понял о чем ты говоришь. То есть тебя смущает что заголовок подбирается под несжатый файл, а только потом жмется?
P.S. Если ты хочешь чтобы подборка хедера работала корректно, то их нужно располагать в строгом порядке возрастания размера подписи, т.к. этого требует алгоритм. Он буквально берет первый подходящий, а не самый оптимальный из списка. Нужно или переписать алгоритм или располагать в порядке возрастания.
Header_List *get_header_list(int size)
{
int i;
int h_size;
for(i=0; i<sizeof(header_list)/sizeof(header_list[i]); i++) {
h_size = get_kirk_size(header_list[i].kirkHeader);
h_size -= 0x150;
if( h_size >= size ) {
return &header_list[i];
}
}
return NULL;
}