Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых) |
eXeL@B —› Основной форум —› 16 битный код, блин |
Посл.ответ | Сообщение |
|
Создано: 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 |
|
Создано: 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 |
|
Создано: 25 декабря 2004 09:01 · Личное сообщение · #3 |
eXeL@B —› Основной форум —› 16 битный код, блин |