![]() |
eXeL@B —› Вопросы новичков —› Вопрос по ASM |
Посл.ответ | Сообщение |
|
Создано: 26 июня 2007 12:11 · Личное сообщение · #1 |
|
Создано: 26 июня 2007 12:52 · Поправил: Sturgeon · Личное сообщение · #2 invoke SetWindowText, Edit2, ADDR szRegCode Вот внизу ссылочка на исходники кейгена от одного уважаемого товарища. Исходники хорошо закомментированы, думаю разберешься. Если нет, пиши сюда или выкладывай исходник посмотрим ![]() http://biocyborg.narod.ru/soft/src/AsmDrGolova.zip http://biocyborg.narod.ru/soft/src/AsmDrGolova.zip З.Ы. Напрямую из регистра наверное не получится вывести. ![]() |
|
Создано: 26 июня 2007 12:54 · Поправил: Dr3d · Личное сообщение · #3 |
|
Создано: 26 июня 2007 13:15 · Личное сообщение · #4 KyTapKuH пишет: mov Char, eax? Бля, ты проект скомпили и посмотри под отладчиком что получится. Я ж тебе исходник давал lea ecx, Char ; ecx==ADDR Char _@: mov bl, [eax] ; из eax передаем в ecx== ADDR Char сгенеренный ключ mov [ecx], bl inc eax inc ecx cmp bl, 0 jnz _@ invoke SetWindowText, hEdit2, ADDR Char ![]() |
|
Создано: 26 июня 2007 13:50 · Личное сообщение · #5 |
|
Создано: 26 июня 2007 14:09 · Личное сообщение · #6 |
|
Создано: 26 июня 2007 14:52 · Личное сообщение · #7 |
|
Создано: 26 июня 2007 15:41 · Поправил: biffy · Личное сообщение · #8 Вот пример с MessageBox на FASM,
Для перевода в строку используется wsprintf, стек освобождать самому. ![]() |
|
Создано: 27 июня 2007 12:26 · Личное сообщение · #9 |
|
Создано: 27 июня 2007 13:19 · Личное сообщение · #10 |
|
Создано: 27 июня 2007 13:38 · Личное сообщение · #11 Да я не шифруюсь ![]() ![]() ![]() |
|
Создано: 27 июня 2007 15:40 · Личное сообщение · #12 Так... у меня чего-то даже не компилируется. Вернее компилируется, но не запускается ![]() Сразу, что заметил. Директива для определения строковых переменных должна быть db, а у тебя все переменные инициализируютсяdd Char dd 1024 dup(0) ![]() |
|
Создано: 27 июня 2007 16:42 · Личное сообщение · #13 |
|
Создано: 27 июня 2007 17:08 · Личное сообщение · #14 |
|
Создано: 27 июня 2007 17:18 · Личное сообщение · #15 Кидаю все что есть у меня по этому keygen'у. Пишу в rasasm на MASM32 ![]() ![]() |
|
Создано: 27 июня 2007 17:46 · Личное сообщение · #16 KyTapKuH Че ты сразу не сказал что в EAX лежит не адрес сгенерированного ключа, а сам ключ ![]() Тут надо из HEX переводить в ASCII, короче пробуй так pop edi; Вообщем сам ключ лежит в eax lea esi,Char; это я сделал как написали мне на форуме mov ebx, 4h xor ecx, ecx _66: mov cl, al ; разворачиваем ror eax, 8 rol ecx, 8 dec ebx jne _66 ror ecx, 8 mov edx, 4h _55: xor eax,eax ; переводим в ASCII строку mov al, cl mov bl, al shr eax, 4 add al, 90h daa adc al, 40h daa mov [esi], al inc esi mov al, bl and eax, 0Fh add al, 90h daa adc al, 40h daa mov [esi], al inc esi shr ecx, 8h dec edx jne _55 invoke SetWindowText,hEdit2,ADDR Char ![]() |
|
Создано: 27 июня 2007 18:02 · Личное сообщение · #17 Значит так. Как я понял, ключ сначала лежит в ESI, а потом копируетс в EAX _3: add eax,-04h cmp ebx,eax jnb short _5 xor esi,dword ptr [ebx+edi] test bl,040h je short _4 inc ebx _4: inc ebx jmp short _1 _5: mov eax,esi pop esi pop ebx pop edi; Вообщем сам ключ лежит в eax lea ecx,Char; это я сделал как написали мне на форуме _13: mov bl,[eax] Здесь падает mov [ecx],bl inc eax inc ecx cmp bl,0 jnz _13 Падает, в принципе понятно почему. Команда mov bl,[eax] помещает в регистр bl число, которе лежит по адресу eax, а не сам регистр еах. Дальше пока я не соображу. Допустим, лежит в ЕАХ число "2F8C9EF0". Это и есть пароль? Или его нужно переводить в десятичный вид? ![]() |
|
Создано: 28 июня 2007 07:27 · Личное сообщение · #18 |
|
Создано: 28 июня 2007 08:48 · Личное сообщение · #19 KyTapKuH Что то я тебя не пойму. Ты хоть сам логику своего кейгена понимаешь. KyTapKuH пишет: он мне выдает все равно адрес Какой в пи**у адрес. В EAX лежит Dword (к примеру я ввел 1023456789 получил в EAX 56FFE2A5 это рег ключ) дык вот это число 56FFE2A5 нужно преобразовать в ASCII строку и вывести в едит. Ты пытаешься тупо впихнуть в "кейген" куски кода, не разобравшись в алгоритме. Такой подход только для крямисов для детсада прокатит. ИМХО рановато тебе писать кейГены Почитай Bitfry и Калашникова ![]() |
|
Создано: 28 июня 2007 11:12 · Личное сообщение · #20 |
|
Создано: 28 июня 2007 13:18 · Личное сообщение · #21 |
|
Создано: 28 июня 2007 21:58 · Личное сообщение · #22 Ну как? Не разобрался еще? Вот нашел пару ссылок, может поможет чем. В каждой ссылке есть исходники. Ты же на ВАСМе вроде тоже тусуешься? Там полно интересных штук можно найти. www.wasm.ru/forum/viewtopic.php?id=18476 www.wasm.ru/forum/viewtopic.php?id=11937 А вот интересный исходник. Тут с помощью wsprintf только что бабу голую не выводят. (Значения из регистров в том числе) www.wasm.ru/src/9/wsprintf.zip З.Ы. К сожалению конкретным ничем помочь пока не могу. Так сам после долгого перерыва изучаю асм заново. Так что мне со всем этим только предстоит столкнуться. ![]() |
|
Создано: 29 июня 2007 11:23 · Личное сообщение · #23 |
![]() |
eXeL@B —› Вопросы новичков —› Вопрос по ASM |
Эта тема закрыта. Ответы больше не принимаются. |