Сейчас на форуме: bartolomeo, johnniewalker, NIKOLA, vasilevradislav (+6 невидимых) |
![]() |
eXeL@B —› Софт, инструменты —› ReflexiveArcade unpacker |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 21 марта 2006 05:19 · Поправил: PE_Kill · Личное сообщение · #1 Попросили меня игруху поламать, скаченую с _www.reflexivearcade.com Посмотрел анализатором - си. Ну думаю наконецто что то без прота. Ан нет. В общем вот, что накопал: Прот есть - самописный. Wrapper называется. Оригинальный exe пошифрован и расшифровывается этим враппером. Остальное в ридми. Самое главное, что все игры с этого сайта этим враппером покриптованы. Вот я и накатал тулзу по его снятию. Натравливаем тулзу на враппер и вот у нас оригинальный exe как до защиты. Попробовал игру, которую 1.5 года назад с этого сайта брал - сняла wrapper! ( А сайт этот конкурент ALWAR ) ![]() ----- Yann Tiersen best and do not fuck ![]() |
|
Создано: 26 июля 2006 17:47 · Личное сообщение · #2 PE_Kill Мне из рефлексива довелось ковырять "Clash N Slash", ""Clash N Slash: Worlds Away" " и "Kennys Adventure" . Я так понимаю, что ты дампируешь запущенный процесс из памяти, я делал тоже самое, это нормально прокатило с "Kennys Adventure", но вот дампы с остальных двух игр получаются мёртвыми... ![]() ![]() Есть другое предложение... Оригинальная функция распаковки выглядела так: call ds:CreateProcessA ; останавливает процесс ... call ds:OpenProcess ... call ds:ReadProcessMemory ; читает блок памяти (обычно начинает с точки входа) ... call fnDecoder ; Дешифрует его, не меня размера(!) ... call ds:WriteProcessMemory ; записывает на тоже место ... call ds:CloseHandle ... call ds:ResumeThread 0. Запускаем основной файл защиты, перехватываем в импорте CreateProcessA, OpenProcess, ReadProcessMemory и WriteProcessMemory. 1. Ждём вызова CreateProcessA, запоминаем путь к файлу. 2. Ждём вызова OpenProcess. 3. Ждём вызова ReadProcessMemory, запоминаем размер считываемой памяти и первые 32 байта этой памяти. 4. Ждём вызова WriteProcessMemory, сохраняем данные из переданного этой функции буфера. 5. Убиваем процесс, он больше не нужен. 6. Открываем файл по пути из пункта 1. 7. Ищем последовательность из 32 байт из пункта 3. 8. На найденное место пишем данные из сохранённого буфера, пункт 4. Мы получим полностью рабочий exe-шник, точно(!) соответствующий оригинальному. Надо учесть, что расстояние межу этими вызовами не должно превышать 150 - 200 байт, это надо т.к. эти функции вызываются и в других местах. Кстати "Clash N Slash" и "Clash N Slash: Worlds Away!" также имею ещё и простую встроенную защиту. ![]() |
|
Создано: 27 июля 2006 01:16 · Личное сообщение · #3 |
|
Создано: 27 июля 2006 02:20 · Личное сообщение · #4 |
|
Создано: 28 июля 2006 19:03 · Личное сообщение · #5 |
|
Создано: 28 июля 2006 21:31 · Личное сообщение · #6 |
|
Создано: 29 июля 2006 12:19 · Личное сообщение · #7 |
|
Создано: 02 августа 2006 15:27 · Личное сообщение · #8 Мне starix тут анврапер от FFF кинул (прилогается), я его на игре "AfterTheEnd" потестил, распакованный файл до байта совпадает с тем что я по описанному выше алгоритму в отладчике ручками сделал, тоесть вместо дампирования они тоже патчат файл *.RWG, IMHO так надёжнее чем его из памяти заново собирать. ![]() ![]() |
|
Создано: 02 августа 2006 15:28 · Личное сообщение · #9 |
|
Создано: 03 августа 2006 01:33 · Личное сообщение · #10 |
|
Создано: 03 августа 2006 02:29 · Личное сообщение · #11 |
|
Создано: 03 августа 2006 07:53 · Личное сообщение · #12 |
|
Создано: 21 августа 2006 18:27 · Личное сообщение · #13 Извиняюсь, за задержку с ответом, в отпуске был ![]() Z0oMiK На моей выборке где-то из 20 игрушек он отработал идеально, за исключением "Clash N Slash" и "Clash N Slash: Worlds Away!", где, как я уже писал выше, помимо стандартной, есть ещё и простая дополнительная защита. Если у тебя не получилось обрезать какую-то игрушку, так где её название? PE_Kill Извеняюсь, если чем обидел, как утверждает Z0oMiK, я только помочь хотел ![]() Вот ссылка на игрушку "Clash N Slash: Worlds Away!", весит 15 мб: www.reflexive.com/PAGE=game_detail&AID=566 ![]() |
|
Создано: 22 августа 2006 15:43 · Личное сообщение · #14 |
|
Создано: 16 декабря 2006 00:42 · Поправил: gegter · Личное сообщение · #15 |
|
Создано: 09 мая 2007 14:12 · Поправил: s2003r · Личное сообщение · #16 |
|
Создано: 10 мая 2007 02:47 · Личное сообщение · #17 Х3 что там обновили, но то что пекиловский анврапер и раньше косячил на играх с протом - это факт(2 штуки видел, ниодну не распаковал). У этой правда на оригинальный экзешник ничего не навешано, но игруля написана на FreeBasic 0.14(Die), так возможно из-за этого он не взял. Кста анвраппер Styx'а спокойно распаковал. ----- Я ещё не волшебник, я только учусь... ![]() |
|
Создано: 17 мая 2007 22:38 · Личное сообщение · #18 Я наверное 50 игр пекилловским анпакером проверил - не сработало только 2. Это были игры в которых регистрация вшита внутрь, т.е. при запуске не появляется окошко с просьбой зарегить. Все остальные распаковывались на ура. h**p://arcade.reflexive.com/downloadgame.aspx?AID=662&CID=4381 с этой гамой имеем следующее: [ 2,16] Load file persia.exe... [ ok ] [ ---- ] Header info: ImageBase: 00400000, EP: 0001CC8F [ 3,14] Start debug session... [ ok ] [ ---- ] PID: 0000029C [ 29,46] Wait EP... [ ok ] [ ---- ] Real ImageBase: 00400000 [196,38] Fix father process... [ ok ] [ ---- ] Create child process... [ error ] ![]() |
|
Создано: 18 мая 2007 03:57 · Поправил: Soft_Ice · Личное сообщение · #19 Нужен Универсальный Кейген для всех игр Рефлексива (старые и новые) 1.кейген для всех защит от Рефлекса (и новых и старых) с автораспознованием ID игры и генерацией серийника по нему. 2. Должна быть поддержка 3х алго генерации (старые+новые) 3. Опционально - занесение серийника в реестр автоматически, чтение ID автоматически 4. Красивая оболочка , поиск игр (установленных на винте) от Рефлексива автоматически (опционально) ВНИМАНИЕ ! - Объявляется награда - 1ДВД с мини-играми (по темам, на выбор) из моей коллекции мини игр в 30ГБ ! Вышлю бесплатно только по России... По странам СНГ - с оплатой пересылке. ![]() |
<< . 1 . 2 . |
![]() |
eXeL@B —› Софт, инструменты —› ReflexiveArcade unpacker |