9 live by DuoMark SETUP

Вот попалась мне эта прога, которая автоматически следит за изменениями в системных файлах и если эти изменения были зделаны несознательно и это, недай бог, привело к каким-то проблемам, то эта программка восстанавливает файлы так, что даже намёка на глюки не будет. Так вот, запустил я инсталяцию (setup.exe) и увидел душераздирающую надпись: «Извините, но триал этого сетапа истёк! сорри!». Ну ни хера себе, подумал я. Мало того, что сама прога триальная, так ещё и установка её триальная. «Я увидел это всё и стал подругам звонить…» Короче говоря, после недолгих раздумий я решил установить таки прогу (судя по виду установки — прога не крепкая). Первым делом я дизассемблировал прогу WDasm’om и начал искать сообщение об ошибке в String Reference, но ничего дельного там не нашел 🙁 Затем по привычке открыл айс и ввёл такой вот бряк:

bpx GetLocalTime

 

 

и соответственно запустил прогу, послен нажатия ОК в первом окне, а как я уже говорил, после этого нажатия выскакивает окно о конце триальности, и выскочил в айсе, после чего нажал F11 (чтобы очутиться не в kernel32.dll, а в setup.exe) и вот что увидел:

call [kernel32!GetLocalTime]

lea ecx, [esp 00]

push ecx

call [kernel32!GetSytemTime]

mov dx, [esp 0A]

….

….

 

Это всё не то, и до процедуры реальной проверки ещё нужно скролить и скролить, поэтому нажимаем F10 до тех пор, пока не увидим это место:

add edx, ecx

cmp edx, -05 ; проверяем результаты проверок

jl 00401589 ; если они негативные — прыгаем

cmp edx, 5A ; опять проверим

jge 00401589 ; опять прыгнем туда же 🙂

cmp edx, 50 ; ещё проверка

jl 00401517 ; ещё прыжок.

 

Я сначала хотел убрать эти проверки, после чего у меня выскакивало таки то окно, но при нажатии ОК, выскакивало другое, что триальная установка ещё действует, но мне смотреть на эти галимые окна не захотелось и я начал думать дальше. Потом я снова проделал шаги, описанные выше и обнаружил, что чуть ниже последнего листинга (около 3 строчек вниз есть четрые подряд call’a:

call 00405470 ;загрузка текста для первого message

call 00405670 ;вызов первого сообщения

call 00405470 ;загрузка текста для второго message

call 00405670 ;вызов второго сообщения

:0040152C mov bl,01

 

я подумал и придумал вот что: а если убрать все проверки, о которых я писал выше, и вместо них зделать прыжок (jmp) сразу за вызовы сообщений об окончании триальной установки и о его волшебном возобновлении 🙂

и правда, когда я заменил первую строку проверок (cmp edx, -05) на (jmp 0040152C), то после этих изменений никаких сообщений не осталось (кроме приветственного) и потом сразу же начиналась установка.

 

На таком простом примере я показал, как бороться с «триальными» Setup’aми (хотя я чесно говоря с таким родом защиты столкнулся впервые, чтобы триальную прогу да ещё и триальным сетапом 🙂

 

А для особо ленивых вот готовый крак:

———-вырезать тут———

9live’s SETUP CRACK by vallkor//PTDS(vallkor@chat.ru)

 

you can install it when you want!

setup.exe

000008EB: 83 EB

000008EC: FA 3F

000008ED: FB 90

———-вырезать тут———

 

Добавить комментарий