MrGreenka, SkyROOT, Вот поэтому я и попросил закончить спор на эту тему... Хватит! Будет результат, потом продолжим. Сейчас нет никакого смысла в этом!
oxyggen, если не в курсе, то эту "дыру" залатали: теперь защита "лично проверяет" все данные(одновременно ещё больше нагружая комп) и теперь ей не скормишь подставную инфу как это делали СРУ в своих последних кряках. Но как сказали "знающие", СРУ вполне могут "отломить" защиту, но почему-то этого не делают - возможно так и поступят в следующий раз А "2 недели" это не показатель. Как выяснилось на взлом уходит минимум 4 часа и СРУ, будь у них время, за пару дней могли бы сломать все игры с денювой. Значит дело не во времени на взлом, а в самом времени: у них тоже есть жизнь, а на теневую её часть просто-напросто не могут найти время.
Хватит блин срача!! Сколько раз повторять!? Или понимаете только после преда? А потом ноете, что я слишком строг. А что еще делать, если по нормальному не понимаете!? Я не попугай по сто раз повторять! Следующий кто не по теме взлома что то отпишет, пойдет отдыхать.
Мой добрый совет,парни, не хватайтесь за всё сразу - ломайте 1.0.524.10 билд DeusEx, который разбирают в мувике Бронко и Пайнтер.
Скрипты из этих двух билдов очень похожи. По скрипту 2.DumpVPage.txt из билда 1.0.524.15 из видео от Bronco (DenuvoSomeStuffMix.mp4) можно восстановить небольшую часть того же скрипта для билда 1.0.524.10. Конкретно этот кусок
С дальнейшим восстановлением второго скрипта (2.DumpVPage.txt) небольшие проблемы. Есть полный лог выполнения этого скрипта (и лог из билда 1.0.524.15). Нужно попытаться как-то восстановить все адреса для скрипта из лога, если это вообще возможно. Есть идеи у кого-нибудь?
Если не получится, то нужно повторить все действия на видео, и понять паттерн, какие именно адреса берутся из exe файла. Пытался сам повторить видео. Насколько я понял, даже первый скрипт без лицензии (которой у меня нет) не отрабатывает.
В общем видимо без полного скрипта 2.DumpVPage будет фигово. Прошел пока 10 минут видео. В целом все более менее идет как надо. Просто надо внимательнее быть :D Во-первых, что заметил, так это косяки как минимум в трех скриптах, которые тут перепечатаны. То строку забыли добавить, то пробел, то слово не то напечатали. Пришлось править. Косяки начались уже при создании дампа с помощью OllyDumpEx. Он вышел у меня даже меньше чем оригинальная игра Не хватает некоторых секций в дампе. Именно они и описаны там, где обрывается скрипт. В логах секции эти не прописаны. Можно что-то подглядеть дальше на видео, в ходе правки секций, но и там не все символы видно. Засада. =( Ну и в дальнейшем отладчик вылетает при отработки третьего скрипта. Тупо на второй строке валится, хотя она вроде вполне безобидная. Из-за нехватки секций это или по другой причине - пока не знаю. Вот такие пироги... P.S. А еще Blackbird1912 не совсем корректно скомпилировал файл. Можешь переделать? Дампы памяти не сохраняются в отдельную папку, а вместо этого к ним приписывается название папки ) Были пропущены слеши. В общем кто сможет скомпилировать такую сборку и скинуть сюда? У меня щас под рукой нет компилятора. http://rgho.st/private/8nBdB6JZ8/34f53f994f4bd0f9735c606bb900ff8f
Изучил повнимательнее скрипт DumpVPage.txt (2-ой) ясно одно, лог выполнения никак не отражает того, что недописано в скрипте после hiader. Однако, если глянуть на это (в десятиричной для наглядности):
[00000001400001F8]=0xE000006000000000 - 504 в десятиричной [0000000140000220]=0xE000006000000000 - 544 в десятиричной (+40) [0000000140000248]=0xE000006000000000 - 584 в десятиричной (+40) [0000000140000270]=0xE000006000000000 - 624 в десятиричной (+40) [0000000140000298]=0xE000006000000000 - 664 в десятиричной (+40) [00000001400002C0]=0xE000006000000000 - 704 в десятиричной (+40) [00000001400002E8]=0xE000006000000000 - 744 в десятиричной (+40) [0000000140000310]=0xE000006000000000 - 784 в десятиричной (+40) [0000000140000318]=0x00000065646F632E - 792 в десятиричной (+8) [0000000140000320]=0x030A900001D21000 - 800 в десятиричной (+8)
То, видна закономерность, частичная, однако с чем связно изменение закономерности, не ясно (возможно с неким условием, до которого шаг был одним, а после совпадения с неким условием изменился на другой). Кстати следующая строка скрипта по виднеющемуся частично кадру из видео: [0000000140000328]=0x030A?00001D?1000 - 808 в десятиричной (+8) (за неимением под рукой отладчика и даже видео не могу посмотреть значения регистров и сам дамп). Что в теории дает нам представление о последующих адресах, не ясно лишь сколько там их и не меняется ли снова интервал.
Что в теории дает нам представление о последующих адресах
Тут прописываются параметры секций для дампа.
Вот например 0x00000065646F632E - это как раз .code и ниже ее параметры (размер и смещение) А ниже (в той части которая не видна) значит должна быть прописана секция .scrm3 с ее характеристиками.
По мойму скрипт не востановить. Если посмотреть на лог то видно что сначало происходит вызов двух точек останова hr3 и hr1 после этого скрипт выводит в лог номер итерации и адрес дампа, после чего ждет вызов точки останова h2, и записывает в лог что произошло сохранение определенного количества байт на диск. Запись последнего сообщения происходит в строках 19, 20, 21. Но я не вижу код который выводит в лог итерацию и адрес, а ведь это наверно не единственный код который отсутствует. Не говоря о том что в 18 строке происходит переход на метку addr (je addr)которой тоже нет. У нас только верхушка айсберга.
Надо попросить Блашковича чтобы он ещё раз взломал игру, только на этот раз медленно и прокручивая все скрипты до конца.
Haoose Ну если весь код есть то рискну предположить что строки в конце скрипта это исправление в дампе ссылок на новые секции. Если можешь посмотри через отладчик что находится по этим адресам. Скорее всего там будут находится безусловные переходы jmp или вызовы функций call.
doomnznj, в первом пропущена строка BPHWD, ну и можно исправить Log на log, для красоты. Во втором, как тут уже написали, надо заменить cmp addr на je addr ну и добавить сам кусок с addr =) Ну а в третьем ты написал edit: а должно быть edit1: и также ниже пробел пропустил после log Следующие скрипты я не смотрел, так как дальше ничего не работает P.S. Там Doom ломанули, кстати.