Посл.ответ |
Сообщение |
Ранг: 13.0 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 14 мая 2007 23:30 · Личное сообщение · #1
Написал кейген на асме но такая беда - допустим пользователь введет имя из восьми символов - пароль тоже будет из восьми, а если потом из пяти(имя) то пароль будет из пяти + 3 последние цифры от прошлого! Как мне обнулить тот участок памяти?
| Сообщение посчитали полезным: |
|
Ранг: 12.9 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 14 мая 2007 23:50 · Личное сообщение · #2
после генерирования пасса прописуй 00, по моему должно сработать
| Сообщение посчитали полезным: |
Ранг: 105.9 (ветеран), 1thx Активность: 0.09↘0 Статус: Участник
|
Создано: 15 мая 2007 00:02 · Поправил: Sturgeon · Личное сообщение · #3
А ты буфер для пароля и имени какого размера задаешь?
Хотя этоя чего то гоню. Это совершенно не причем.
Попробуй перед каждым новым рассчетом серийника очищать поле "Edit"
invoke SetWindowText, hEdit, ADDR Erase
где "Erase" это строка с пробелами (пробелов 30, чтоб наверняка)
а еще интересно получится ли очистить эдит если послать в качестве адреса строки NULL
invoke SetWindowText, Edit2, NULL
| Сообщение посчитали полезным: |
Ранг: 284.8 (наставник), 6thx Активность: 0.15↘0 Статус: Участник
|
Создано: 23 мая 2007 09:48 · Личное сообщение · #4
Sturgeon это не поможет! ему именно надо очистить строку а не EDIT, так как сказал Ze0S
satana
Просто при нажатии на кнопку генерации вставь код вначале своей функции (например такой):
lea edi, [serial]
mov byte[edi],00h
| Сообщение посчитали полезным: |
Ранг: 284.8 (наставник), 6thx Активность: 0.15↘0 Статус: Участник
|
Создано: 23 мая 2007 09:54 · Личное сообщение · #5
Чет я запарился, такой тож работать не будет
Если на то пошло и ты знаешь длину выводимой строки то, лучше так:
lea edi, [serial]
mov ecx, str_lenght
mov byte[edi + ecx ],00h
Ну а если не знаешь, тогда:
xor ecx,ecx
lea edi, [serial]
start:
mov byte[edi + ecx ],00h
inc ecx
cmp ecx,20h -> 32 символа очистим
jnz start
| Сообщение посчитали полезным: |
Ранг: 3.4 (гость) Активность: 0=0 Статус: Участник
|
Создано: 23 мая 2007 19:25 · Личное сообщение · #6
Используй вызов API функции перед генерацией пароля
VOID ZeroMemory(
PVOID Destination, // address of block to fill with zeros
DWORD Length // size, in bytes, of block to fill with zeros
);
invoke ZeroMemory, offset VarKey, SizeVarKey
| Сообщение посчитали полезным: |
 Ранг: 85.4 (постоянный) Активность: 0.08↘0 Статус: Участник
|
Создано: 23 мая 2007 19:52 · Личное сообщение · #7
Блин.. Длина пароля=длина ключа? Тогда lstrlen определяй длину пароля. А вообще в алгоритме генерации нельзя дописать строку добавляющую 00h в конец строки?
----- radio uno in ibisa ... | Сообщение посчитали полезным: |
Ранг: 138.7 (ветеран), 135thx Активность: 0.11↘0 Статус: Участник
|
Создано: 25 мая 2007 08:27 · Личное сообщение · #8
Извините за оффтоп, не удержался.
Товарисч satana создал топ с вопросом. Ему ответили пять человек, а он ушел в партизаны
Думаю топик надо закрывать, а таких товарисчей конкретно банить, ибо нефиг
| Сообщение посчитали полезным: |
Ранг: 203.3 (наставник) Активность: 0.22↘0 Статус: Участник UPX Killer -d
|
Создано: 25 мая 2007 20:05 · Личное сообщение · #9
Я думаю что тов. satana следует прочитать что-нибудь по программированию на АСМ, хотя бы посмотреть примеры из комплектации пакетов.
----- Я медленно снимаю с неё UPX... *FF_User* | Сообщение посчитали полезным: |