Реферат: Как ломать программы Windows C EDSON UCF, перевод Mr.BocoTCP
Нажмем F5 или Ctrl-D чтобы вернуться в программу и попробуем еще раз, но на этот раз с правильным кодом (в десятичной форме). Работает!
4. СОЗДАНИЕ ГЕНЕРАТОРА КЛЮЧЕЙ ДЛЯ COMMAND LINE 95
Взглянем на алгоритм генерации кода и попробуем перевести его на язык Си. Вот очень простая формула, по которой подсчитывается ключ:
code = ((uppercase_first_char * length_of_string) << 0x0A) + 0x2f8cc;
Замечание #1: Не следует забывать, что все символы в окне ввода имени были приведены к верхнему регистру, поэтому мы должны сделать то же.
Замечание #2: "<< 0x0A" означает "умножние на 2 в степени 10"
Целиком программа на Си выглядит так:
#include <string.h>
#include <stdio.h>
int main()
unsigned long code;
unsigned char buffer[0x1e];
printf("CommandLine95 Keymaker by ED!SON '96\n"); printf("Enter name: ");
gets(buffer);
strupr(buffer);
code = ( ((unsigned long)buffer[0] *
(unsigned long)strlen(buffer))
<< 0x0A) + 0x2f8cc;
printf("Your code is: %lu", code);
return 0;
Приятных сновидений!
4. КАК РАБОТАЮТ PUSH И CALL КОГДА ПРОГРАММА ВЫЗЫВАЕТ ФУНКЦИЮ
Снова |
взглянем PUSH PUSH PUSH PUSH CALL |
на кусок кода из Task Lock'а: К-во Просмотров: 913
Бесплатно скачать Реферат: Как ломать программы Windows C EDSON UCF, перевод Mr.BocoTCP
|