Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых)

 eXeL@B —› Основной форум —› 16 битный код, блин
Посл.ответ Сообщение

Ранг: 9.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 25 декабря 2004 04:09
· Личное сообщение · #1

есть вобщем одна 16 битная прога ...

защита проста на первый взгляд, надо ввести серийник к сгенерированному ключу. После ввода серйника прога пишет его в файл win.ini. При запуске проги она его оттула достает и начинает проверять ...
только что то я никак не могу нарыть проверку
вот кусок кода из иды

cseg03:0033 call LOADDEFENCE
cseg03:0038 mov al, byte_EDDC
cseg03:003B mov [bp+var_4], al
cseg03:003E push ds
cseg03:003F push offset aSkw ; LPCSTR
cseg03:0042 push ds
cseg03:0043 push offset aConfig ; LPCSTR (вот здесь тот самый параметр с введенным когда серийником)
cseg03:0046 push ss
cseg03:0047 lea ax, [bp+var_4]
cseg03:004A push ax ; LPCSTR
cseg03:004B push ss
cseg03:004C lea ax, [bp+var_41A]
cseg03:0050 push ax ; LPSTR
cseg03:0051 push 400h ; int
cseg03:0054 call GETPROFILESTRING
cseg03:0059 lea di, [bp+var_41A] ;в DI кладется то что у нас там в этом параметре
cseg03:005D push ds
cseg03:005E pop es
cseg03:005F assume es:dseg09
cseg03:005F cld
cseg03:0060 xor ax, ax
cseg03:0062 mov cx, 0FFFFh
cseg03:0065 repne scasb ;после это команды серийник из DI исчезает
cseg03:0067 not cx
cseg03:0069 dec cx
cseg03:006A or cx, cx
cseg03:006C jnz short loc_3CD8 ;здесь проверяется если есть данный параметр в вин.ини то проаг идет дальше, если нету, то выв водит окно мол певрый запуск попробуй зарегиться ...


кароче застрял я ....
непонятно. кто хочет посмoтреть что там может скачать - около 1 Мб
hxxp://astrologer.ru/software/Skyworker/skywrk12.exe



Ранг: 450.1 (мудрец)
Активность: 0.260
Статус: Участник

Создано: 25 декабря 2004 07:40 · Поправил: Asterix
· Личное сообщение · #2

cld
cseg03:0060 xor ax, ax
cseg03:0062 mov cx, 0FFFFh
cseg03:0065 repne scasb ;после это команды серийник из DI исчезает
cseg03:0067 not cx
cseg03:0069 dec cx
cseg03:006A or cx, cx
cseg03:006C jnz short loc_3CD8
Это всего лишь проверка длины серийника, repne scasb сканирует строку в поисках совпадения с байтом, находящимся в al (al=0), длина будет в cx



Ранг: 9.1 (гость)
Активность: 0=0
Статус: Участник

Создано: 25 декабря 2004 09:01
· Личное сообщение · #3

угу
я уже догадался что это проверка длинны ....
спасибо за подсказку

однако дальше тупик блин ...

такое чувство что просто демка .....

и окно для понта там .....
посмотрел бы кто еще


 eXeL@B —› Основной форум —› 16 битный код, блин
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати