|
PSP хакинг и девелопмент Взгляд изнутри |
24.05.2020, 18:01
|
Сообщение: #1 (1214565)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Как пожать, упаковать и зашифровать исполняемый ELF-файл для PSP
Привет. Я Dedok179, разработчик новых версий трейнеров для Sony консолей. Возникла такая проблема что для данной платформы из упаковщиков исполняемых файлов нашел только psp-packer, но файлы запакованные через него не желают запускаться ни на эмуляторе ни на консоли. Сжатие мне важно так как оригинальный исполняемый входит в состав чит-лоадера и заменяет оригинальный в образе, чтобы хватило места для замены. Может кто предложить чего по этому поводу?
Примеры работ для PS1/PS2
Последний раз редактировалось ErikPshat; 26.05.2020 в 05:00.
|
|
|
24.05.2020, 18:23
|
Сообщение: #2 (1214566)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Dedok179, если игры не ISO, то исполняемый ELF пакуется как DATA.PSP в EBOOT.PBP как цифровоая версия игра с карты памяти. Для этого лучше подойдёт вот это: PrxEncrypter Mod v1.0.0.1
Он максимально сжимает файлы 7Zip-ом и такие игры работают на OFW.
Если EBOOT.BIN из ISO-образа, тогда SEBOOT, про него имеется ссылка в той же теме в описании. Но по-моему он не сжимает, не помню точно.
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
24.05.2020, 18:34
|
Сообщение: #3 (1214567)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
EBOOT.BIN из ISO-образа
|
Мне нужно что-то что сможет запаковать так его, чтобы он сам распаковался в памяти (как UPX например). Так как сам метод загрузки подразумевает наличие бутабельного elf файла. PSP-Packer казалось бы идеальное решение для меня, если бы сжатые им файлы запустились.
|
|
|
24.05.2020, 18:59
|
Сообщение: #4 (1214569)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от ErikPshat
Он максимально сжимает файлы 7Zip-ом и такие игры работают на OFW.
|
|
|
|
24.05.2020, 19:49
|
Сообщение: #5 (1214572)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Результат работы psp-packer
Мне нужно получить именно пожатый бутабельный elf, ибо схема загрузки такая - Загружается elf трейнера->выбираются нужные коды->в память записывается пожатый elf->цепляется чит-загрузчик->запускается пожатый elf с последующей его самораспаковкой.
Последний раз редактировалось ErikPshat; 26.05.2020 в 05:05.
|
|
|
24.05.2020, 21:06
|
Сообщение: #6 (1214575)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от Dedok179
Мне нужно получить именно пожатый бутабельный elf
|
Ну а я вам что предлагаю? По-ходу вы вообще не читаете что я вам пишу. Как будто бывает какой-то небутабельный ELF. Мы же говорим о загрузчике игры, а не о каких-то вспомогательных модулях.
ELF всегда работает таким образом - сначала он компилируется разработчиками как непожатый ELF, затем он сжимается в gz-архив или в zlib, либо в lzma, ну и ещё есть методы сжатия, потом к пожатому файлу прикрепляется заголовок ~PSP, записывается размер пожатого файдла, размер расжатого декриптованного файла и контрольные суммы блоков, называемые общим словом KIRK, ну и тело пожатого файла шифруется этим кирком.
Затем, когда вы запускаете этот ~PSP, он первым делом декриптуется, затем расжимается из архива и запускается чистый ELF. После этого он загружается в память и начинают работать читы и программа.
На PSP этот ELF в цифровых играх и программах называется DATA.PSP, который пакуется в EBOOT.PBP. В вашем случае для дебаг-тестов не обязательно его паковать, а просто взять пожатый и подписанный из папки ENCRYPT, в другой папке будет лежать упакованный EBOOT.PBP, но вам он не нужен. Вам просто нужно дать файлу правильное название, там программа сама даёт подсказку, какого вида надо файл подсунуть и какие можно дополнительные файлы подкинуть для упаковки.
Последний раз редактировалось ErikPshat; 25.05.2020 в 06:21.
|
|
|
24.05.2020, 22:38
|
Сообщение: #7 (1214577)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
Мы же говорим о загрузчике игры
|
Возможно я немного не так прочитал сначала. Попробовал утилиту, да жмет (Хуже чем psp-packer но жмет). Но, эмуль наглухо выдает ошибку "не удалось загрузить игру: файл поврежден". На консоли еще не проверял. Или я где-то косячу, или хрен его знает. Обычно в случае как с PS2 я к загрузчику всегда прикомпилирую уже пожатый исполняемый файл игры, а не пережимаю сам загрузчик. Думал что тут будет уместен этот же метод, но видимо немного ошибся.
|
|
|
25.05.2020, 06:52
|
Сообщение: #8 (1214582)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от Dedok179
Попробовал утилиту, да жмет (Хуже чем psp-packer но жмет).
|
Dedok179, я так понимаю, вы используете psp-packer от 4.01 SDK от Dark_Alex Это же просто кастомная утилита для упаковки в фейковый ~PSP, где тело от 0x150 жмётся в GZ-архив и вставляется фейковый заголовок. Я так понимаю, вы сами не понимаете механизма сжатия, судя по вашим объяснениям вот почитайте про GZIP-сжатие: Декриптовка - Русификация - Запаковка. Там вас должна интересовать последняя секция III) Запаковка с новой криптовкой., да и начало тоже.
На самом деле никакой psp-packer вообще не нужен, я им и не пользовался никогда. Всё делается элементарно ручками. И да, psp-packer не может жать в GZIP лучше, чем моя утилита, т.к. она жмёт с помощью 7-Zip, который явно жмёт лучше. Ну бывают некоторые исключения.
В принципе, разница между psp-packer и PrxEncrypter Mod небольшая. Первый жмёт ELF в кастомный ~PSP, который работает только на кастомных прошивках, второй жмёт в официальный ~PSP, который работает на официальных прошивках. Ну а жмут они файл в одинаковые архивы, просто первый жмёт с помощью модуля GZIP, а второй с помощью 7-Zip.
По-идее и то и другое должны работать на PPSSPP в обычном режиме загрузки игры, как и любой другой официальной игры, но не в дебаг-режиме, ибо в этом режиме работают только голые ELF, если не ошибаюсь.
|
|
|
25.05.2020, 08:27
|
Сообщение: #9 (1214585)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
Dedok179, я так понимаю, вы используете psp-packer от 4.01 SDK от Dark_Alex Это же просто кастомная утилита для упаковки в фейковый ~PSP, где тело от 0x150 жмётся в GZ-архив и вставляется фейковый заголовок. Я так понимаю, вы сами не понимаете механизма сжатия, судя по вашим объяснениям вот почитайте про GZIP-сжатие: Декриптовка - Русификация - Запаковка. Там вас должна интересовать последняя секция III) Запаковка с новой криптовкой., да и начало тоже.
На самом деле никакой psp-packer вообще не нужен, я им и не пользовался никогда. Всё делается элементарно ручками. И да, psp-packer не может жать в GZIP лучше, чем моя утилита, т.к. она жмёт с помощью 7-Zip, который явно жмёт лучше. Ну бывают некоторые исключения.
В принципе, разница между psp-packer и PrxEncrypter Mod небольшая. Первый жмёт ELF в кастомный ~PSP, который работает только на кастомных прошивках, второй жмёт в официальный ~PSP, который работает на официальных прошивках. Ну а жмут они файл в одинаковые архивы, просто первый жмёт с помощью модуля GZIP, а второй с помощью 7-Zip.
По-идее и то и другое должны работать на PPSSPP в обычном режиме загрузки игры, как и любой другой официальной игры, но не в дебаг-режиме, ибо в этом режиме работают только голые ELF, если не ошибаюсь.
|
Я бы и рад был для начала чтобы хоть что-то после сжатия работало. Мне не нужно понимать механизм, мне нужно чтобы оно сжалось и все, чтобы с этим можно было работать дальше. Не знаю поняли мы друг друга или нет. Конечный готовый трейнер заменяет в образе оригинальный исполняемый файл, но так как он содержит в себе и оригинальный файл и загрузчик, нужно сжать или итоговый файл или файл игры прикомпилируемый к загрузчику, чтобы все это добро нормально зашло в образ без надобности лопатить его.
Последний раз редактировалось ErikPshat; 26.05.2020 в 05:11.
|
|
|
25.05.2020, 09:08
|
Сообщение: #10 (1214591)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Dedok179, я не пойму, что вы там мутите? Вы суёте образ игры для PSP через CDMage для PS1 образов? А потом образ PS1 пытаетесь запустить в PPSSPP для PSP?
А кто вас такому трюку научил? Может лучше собирать образ PSP через родную для неё программу UMDGen v4.00
?
|
|
|
25.05.2020, 09:45
|
Сообщение: #11 (1214601)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
я не пойму, что вы там мутите?
|
Посмотрите видео в начале поста если не смотрели, пояснее будет зачем вообще нужно сжать файл.
Сообщение от ErikPshat
Вы суёте образ игры для PSP через CDMage для PS1 образов?
|
Функция замены в нем не только с PS1 образами работает..PS..заменил (ох..пересобрал) через UMDGEN и проблема не делать никуда ни на сантиметр.
Сообщение от ErikPshat
А потом образ PS1 пытаетесь запустить в PPSSPP для PSP?
|
А я его и не сохранял как PS1 образ. Только заменил блок байт и все, это там именно так работает (будет тоже самое если просто через hex изменить этот блок), а не как все привыкли через пересохранение полной структуры.
Сообщение от ErikPshat
Может лучше собирать образ PSP через родную для неё программу UMDGen v4.00?
|
Собирать естественно через него
Сообщение от ErikPshat
А кто вас такому трюку научил?
|
Оно со временем само приходит
Последний раз редактировалось ErikPshat; 26.05.2020 в 05:11.
|
|
|
25.05.2020, 10:19
|
Сообщение: #12 (1214607)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от Dedok179
А я его и не сохранял как PS1 образ. Только заменил блок байт и все, это там именно так работает (будет тоже самое если просто через hex изменить этот блок), а не как все привыкли через пересохранение полной структуры.
|
Спасибо, не знал, что он просто как хекс-редактор работает Но всё равно, для сборки ISO для PSP существуют специальные программы.
Dedok179, а вообще что я говорил про EBOOT.BIN? В этом энкрипторе собирают декриптованный EBOOT.BIN только для цифровых игр и программ для карты памяти, которые работают из EBOOT.PBP, а не для дисковых ISO-образов, там метод упаковки и шифрования другой, только через SEBOOT.
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
25.05.2020, 10:40
|
Сообщение: #13 (1214614)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
там метод упаковки и шифрования другой, только через SEBOOT.
|
Ну тогда на этом все, ибо SEBOOT не предоставляет сжатия от слова совсем, что значит место никак не освободить. Спасибо вам за консультацию по этому вопросу.
|
|
|
25.05.2020, 11:34
|
Сообщение: #14 (1214621)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от Dedok179
Ну тогда на этом все, ибо SEBOOT не предоставляет сжатия от слова совсем, что значит место никак не освободить.
|
Ну существуют и другие методы, там разница лишь в том, что заголовок ~PSP немного с другими тегами шифрования. Можно паковать тем же PrxEncrypter-ом, но тогда из исходников собирать пакер с Кирком другим, от EBOOT.BIN, но про это долго рассказывать.
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
25.05.2020, 17:07
|
Сообщение: #15 (1214653)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
Ну существуют и другие методы, там разница лишь в том, что заголовок ~PSP немного с другими тегами шифрования. Можно паковать тем же PrxEncrypter-ом, но тогда из исходников собирать пакер с Кирком другим, от EBOOT.BIN, но про это долго рассказывать.
|
Можно было бы попробовать собрать, правда он после сборки начинает требовать неведомые библы, после подсовывания которых в ошибку 7b уходит. Исходник брал отсюда
|
|
|
25.05.2020, 18:18
|
Сообщение: #16 (1214656)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Dedok179, это немного не то, вернее совсем не то. У вас наверное MSYS не установлен. В паблике PrxEncrypter не кастомный, а обычный от PRO-Team, он у них в исходниках лежит. Но он не может сжать до исходного размера, поэтому мы тут немного помучались и модифицировали как надо, получается файл точно такого же размера как исходный оригинальный. Залил исходники сюда во вложение: https://www.pspx.ru/forum/showthread.php?t=103580
Я же говорю, потом ещё долго объяснять как шифровать и как кирк доставать.
Проще бы давно скинули мне свой кастомный EBOOT.BIN с читами и нужен ещё оригинальный не декриптованный. Я бы вам просто давно бы переподписал за 5 минут. А то вы тут на несколько дней застрянете
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
25.05.2020, 18:33
|
Сообщение: #17 (1214658)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
Я же говорю, потом ещё долго объяснять как шифровать и как кирк доставать.
Проще бы давно скинули мне свой кастомный EBOOT.BIN с читами и нужен ещё оригинальный не декриптованный. Я бы вам просто давно бы переподписал за 5 минут. А то вы тут на несколько дней застрянете
|
Тут такой момент что инструмент формирующий сжатие должен входить в состав билдера который будет эти трейнеры собирать. И собираться они будут не 100 и менее раз (не учитывая тестовые процедуры). И каждый раз стучать за подписью через каждый промежуток времени думаю будет не очень. Времени на разбор у меня предостаточно, так как этот проект должен быть закончен.
Кстати именно ваш исходник на удивление без проблем собрался, в отличие от предыдущего.
|
|
|
25.05.2020, 18:51
|
Сообщение: #18 (1214660)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Сообщение от Dedok179
Кстати именно ваш исходник на удивление без проблем собрался, в отличие от предыдущего.
|
Ну вот и отлично! Ну у меня время есть, тогда придётся вам объяснять долго и нудно...
Вам теперь нужно скачать для PSP вот это: PRXdecrypter_27a_fix_mod.zip
Не знаю, есть ли у вас PSP вообще А то думаю в PPSSPP не заработает.
Вам надо будет им декриптовать оригинальный EBOOT.BIN, который вы декриптовали и модифицировали.
Кидаете его в корень карты памяти в папку enc и декриптуете программой.
Потом там будет лежать декриптованный файл и рядом kirk.16 или kirk.144 - он нам и понадобится.
И ещё вам нужно будет вот это: Hex Workshop v6.8.0.5419.
Потом дам следующие указания...
Последний раз редактировалось ErikPshat; 26.05.2020 в 04:16.
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
25.05.2020, 19:10
|
Сообщение: #19 (1214661)
|
Модель консоли: PSP-1000
Прошивка: 6.60 PROMOD
Другие консоли: PS1 (SCPH-7502 x2, SCPH-9002, SCPH-102 x2), PS2 (SCPH-50008, SCPH-90008), PS3 (CECH-2008B)
Регистрация: 24.05.2020
Адрес: Тула
Сообщений: 24
Вы сказали Спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
Сила репутации: 0Репутация: 0 
(пока ничем не отличился)
|
Сообщение от ErikPshat
Ну вот и отлично! Ну у меня время есть, тогда придётся вам объяснять долго и нудно...
Вам теперь нужно скачать для PSP вот это: PRXdecrypter_27a_fix_mod.zip
Не знаю, есть ли у вас PSP вообще А то думаю в PPSSPP не заработает.
Вам надо будет им декриптовать оригинальный EBOOT.BIN, который вы декриптовали и модифицировали.
Кидаете его в корень карты памяти в папку enc и декриптуете программой.
Потом там будет лежать декриптованный файл и рядом kirk16.bin или kirk144.bin - он нам и понадобится.
И ещё вам нужно будет вот это: Hex Workshop v6.8.0.5419.
Потом дам следующие указания...
|
Да, kirk появился, исполняемый файл принял стандартный вид с elf заголовком.
|
|
|
25.05.2020, 20:09
|
Сообщение: #20 (1214663)
|
Модель консоли: PSP-1004
Прошивка: 6.60 PROMOD
Другие консоли: iPad 3 WiFi
Регистрация: 18.12.2006
Адрес: Москва
Возраст: 57
Сообщений: 46,672
Вы сказали Спасибо: 27,297
Поблагодарили 42,821 раз(а) в 12,237 сообщениях
Сила репутации: 10Репутация: 42016 
(репутация неоспорима)
|
Ну хорошо, что у вас всё быстро делается без лишних вопросов
В Hex Workshop закройте все лишние окна справа, слева, внизу, они пока не нужны.
- Короче, откройте в хекс-редакторе kirk.16, он занимает ровно 272 байта (0x110)
- Выберите в меню File -> Export -> С Source (*.c, *.cpp).
- У вас сохранится файл kirk.c
- Теперь откройте его в Notepad++ и так же откройте в исходниках файл main.c - вы должны увидеть сходство кирка с исходным кодом в этом месте:
unsigned char kirkHeader[272] = {
0x8B, 0x5D, 0xC0, 0x96, 0x38, 0x77, 0x54, 0x6D, 0x2E, 0x40, 0x07, 0x42, 0x8D, 0x5A, 0xAE, 0xEF,
0x11, 0x34, 0x0F, 0x5D, 0xF8, 0x57, 0x7A, 0x7A, 0x06, 0xDA, 0xE2, 0xB1, 0x4F, 0x5A, 0x3D, 0x84,
0x99, 0xC4, 0xF4, 0x95, 0x61, 0xDF, 0x88, 0xBA, 0xB3, 0x60, 0x09, 0x90, 0x5A, 0x94, 0xD8, 0x58,
0xC5, 0x3A, 0x33, 0x3E, 0xD7, 0x30, 0x20, 0xED, 0xCC, 0xA8, 0x7B, 0x90, 0x46, 0x9B, 0x0C, 0xFC,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x06, 0x2F, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x7E, 0x50, 0x53, 0x50, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x4D, 0x6F, 0x64, 0x65, 0x6C, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x48, 0x06, 0x2F, 0x00, 0xA0, 0x07, 0x2F, 0x00,
0x24, 0x01, 0x00, 0x00, 0x44, 0xDD, 0x1E, 0x00, 0x5C, 0x46, 0x2D, 0x00, 0x40, 0x00, 0x40, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xCA, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x4C, 0xCA, 0x20, 0x00, 0x84, 0x2A, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x06, 0x06, 0x09, 0x00, 0x00, 0x00,
};
- Вот эта строка указывает на количество байт: unsigned char kirkHeader[272] - по этому количеству вы должны ориентироваться, чтобы не спутать блоки и там и там.
- Из kirk.c выделяете движением мышки слева весь цифровой код сверху вниз, не затрагивая скобки { и };, копируете, затем выделяете в исходнике main.c такой же код и заменяете.
- Теперь открываете оригинальный шифрованный не декриптованный EBOOT.BIN (~PSP). Выделяете с самомго начала заголовок, размером 336 байт (0x150).
- И делаете всё тоже самое File -> Export -> С Source (*.c, *.cpp).
- У вас сохранится файл EBOOT.c
- Теперь откройте его в Notepad++ и так же откройте в исходниках файл main.c - вы должны увидеть сходство в EBOOT.c размером 336 байт с исходным кодом в этом месте: unsigned char pspHeader[336]
- Точно так же копируете, вставляете, сохраняете main.c и компилируете новый PrxEncrypter.
- Ну вот и всё, у вас есть энкриптер именно для этого вашего файла.
- Берёте ваш кастомный файл, который надо упаковать как оригинал, кидаете рядом с программой или прямо на программу, либо в консоли натравливаете команду
PrxEncrypter.exe EBOOT.BIN
- На выходе вы должны получить файл DATA.ENC - это и есть ваш пожатый и подписанный EBOOT.BIN, переименовываете его потом и пакуете в ISO.
- У него будет тот же заголовок как у оригинала, точно такой же размер, как и записано в хедере и он будет работать на любой OFW, как и оригинал.
P.S. Я ухожу сегодня, нужно освобождать комп. Завтра с утра зайду проверить как дела
Последний раз редактировалось ErikPshat; 26.05.2020 в 06:44.
|
|
|
Этот пользователь сказал Спасибо ErikPshat за это полезное сообщение:
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Текущее время: 20:04. Часовой пояс GMT +3.
Powered by vBulletin® Version 3.8.7 Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.
|
|
|