Сейчас на форуме: _MBK_, ManHunter, Magister Yoda, rtsgreg1989 (+9 невидимых)

 eXeL@B —› Основной форум —› Не подходит 100% верный ключ.
Посл.ответ Сообщение

Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 14:03
· Личное сообщение · #1

Программе (игре) для регистрации требуется ввести имя и номер.
Ввожу имя iddqd, серийник 1234567 в Ольке вижу, что он сравнивает мой серийник с 7AGB2167UQ3PQACMMHYEELHLSO5HPOLWZA4RAE8YTOFUXMBYVNNAWMREKIDSJV9Iiddqd пытаюсь вводить этот серийник (и без слова iddqd), но ничего не помогает. Может его надо преобразовать в какую-то другую систему ? Но в какую ? В 10-ную я пробывала.
Помогите пожалуйста.

Игра называется Invasion Waves.
Скачать можно здесь: _http://www.topshareware.com/WildSnake-Arcade--INVASION-WAVES-download -15516.htm
Platform : Windows 95/98/Me/NT/2000/XP
Price : USD $19.95
File Size : 8.29 MB




Ранг: 209.1 (наставник)
Активность: 0.130
Статус: Участник
программист априори

Создано: 26 августа 2005 14:17
· Личное сообщение · #2

а откуда же ты знаешь что он стопроцентно верный, может дальше ключ еще где -то проверяется



Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 14:40
· Личное сообщение · #3

Да вродь не проверяется нигде. В том-то и проблема. Строки типа cmp eax,esi я не вижу вобще. Просто после строк типа:
push ebp ; ASCII "1234567"
push ecx ; ASCII "7AGB2167UQ3PQACMMHYEELHLSO5HPOLWZA4RAE8YTOFUXMBYVNNAWMREKIDSJV9Iiddqd "
Происходит вывод сообщения о неверном ключе. Между сохранениями регистров в стек нет никаких процедур (call или jmp).

Вот так в W32Dasm выглядит процедура проверки:
* Referenced by a CALL at Addresses:
|:00427933   , :004282F0   , :00428314   
|
:00419069 55                      push ebp
:0041906A 8BEC                    mov ebp, esp
:0041906C 51                      push ecx
:0041906D C70548E4730201000000    mov dword ptr [0273E448], 00000001
:00419077 6A01                    push 00000001
:00419079 E83FC2FFFF              call 004152BD ;здесь также нет никаких процедур проверок.
:0041907E 83C404                  add esp, 00000004
:00419081 837D0800                cmp dword ptr [ebp+08], 00000000
:00419085 7424                    je 004190AB
:00419087 6A00                    push 00000000
:00419089 682E8F4100              push 00418F2E
:0041908E A1E8105700              mov eax, dword ptr [005710E8]
:00419093 50                      push eax

* Possible StringData Ref from Data Obj ->"REGISTERFAIL"
                                  |
:00419094 6854934900              push 00499354
:00419099 8B0D34E47302            mov ecx, dword ptr [0273E434]
:0041909F 51                      push ecx

* Reference To: USER32.DialogBoxParamA, Ord:0093h
                                  |
:004190A0 FF1550A24800            Call dword ptr [0048A250]
:004190A6 8945FC                  mov dword ptr [ebp-04], eax
:004190A9 EB22                    jmp 004190CD

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00419085(C)
|
:004190AB 6A00                    push 00000000
:004190AD 682E8F4100              push 00418F2E
:004190B2 8B15E8105700            mov edx, dword ptr [005710E8]
:004190B8 52                      push edx

* Possible StringData Ref from Data Obj ->"REGISTEROK"




Ранг: 36.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 14:48
· Личное сообщение · #4

iddqd пишет:
:00419079 E83FC2FFFF call 004152BD ;здесь также нет никаких процедур проверок.

Вот именно там и есть, имхо. К тому же проще пропатчить.



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

Создано: 26 августа 2005 14:58
· Личное сообщение · #5

iddqd пишет:
:00419081 837D0800 cmp dword ptr [ebp+08], 00000000

Ищи, откуда взялась эта локаль.
Скорее всего, ты показал процедуры выбора сообщения (хотя может быть и в 004152BD).
Вернись и посмотри, откуда этот параметр (ebp+08).
Прога Дельфовая, посмотри лучше в DeDe по названию функций.

-----
Всем привет, я вернулся




Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 15:08
· Личное сообщение · #6

Bitfry, PEid показываает Microsoft Visual C++ 6.0. DeDe не открывает АВ показывает.

Malice, с патчами, к сожалению, авитоминоз - не приходилось их ещё писать. Из других языков знаю только дельфи.
Как можно поступить по другому, чтоб узнать верный серийник? Посоветуйте плз.



Ранг: 200.3 (наставник)
Активность: 0.090
Статус: Участник

Создано: 26 августа 2005 15:36 · Поправил: DrFits
· Личное сообщение · #7

Находясь в дасме на строке 00419085 7424 je 004190AB
нажми EDIT->QuikEdit и в открывшемся окне замени 74 на EB,а затем Save в этом окошке , может получиться (ИМХО)

-----
Само плывет в pуки только то, что не тонет.




Ранг: 192.3 (ветеран), 18thx
Активность: 0.120
Статус: Участник
stoned machine-gunner

Создано: 26 августа 2005 15:42
· Личное сообщение · #8

Bitfry
вызов api DialogBoxParamA выдает, что это не delphi

-----
once you have tried it, you will never want anything else




Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 15:44
· Личное сообщение · #9

DrFits, нет, не помогло.




Ранг: 69.0 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 26 августа 2005 17:05
· Личное сообщение · #10

iddqd
Это НЕ "правильный 100% ключ" ;) - это какая-то константа, с которой потом идут извращения...

Обрати внимание на процедуру по адресу 431872 : там ниже будет запрос реестра

004318EB |. FF15 08B04800 CALL DWORD PTR DS:[<&ADVAPI32.>; \RegQueryValueExA
и
00431955 |. FF15 08B04800 CALL DWORD PTR DS:[<&ADVAPI32.>; \RegQueryValueExA

Запрашиваются "Registered User" и "License Code"

А по адресу:

004322D6 |. FF15 0CB04800 CALL DWORD PTR DS:[<&ADVAPI32.RegSetValu>; \RegSetValueExA
и
00432309 |. FF15 0CB04800 CALL DWORD PTR DS:[<&ADVAPI32.RegSetValu>; \RegSetValueExA

эти два значения вносятся в реестр в случае удачной проверки...

PS. На работе машина старая - практически подвешивается во время бряка в Ольке - дома мож посмотрю ещё ;)
DrFits пишет:
замени 74 на EB

Этот финт меняет мессагу с неудачной на удачную регитрацию, но DEMO, по ходу, не убирает...



Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 17:19
· Личное сообщение · #11

estet, да, это я видела, но как используя это можно получить ключик ?
Если будет возможность - попробуй пожалуйста.




Ранг: 115.8 (ветеран)
Активность: 0.080
Статус: Участник

Создано: 26 августа 2005 17:38
· Личное сообщение · #12

в Flashget похожая процедура регистрации. Почитай туторы по её взлому.
Чтобы найти пральный ключик надо искать процедуру (call) которая сравнивает данные считанные из реестра. Разберись каким образом происходит сравнение и будет тебе счастие.

-----
Ни одно доброе дело не должно остаться безнаказанным !!!




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

Создано: 26 августа 2005 17:58
· Личное сообщение · #13

gloom пишет:
вызов api DialogBoxParamA выдает, что это не delphi

Угу, проглядел комментарий :s15.
Я на закачку поставил, завтра посмотрю...Наверное.

-----
Всем привет, я вернулся





Ранг: 69.0 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 26 августа 2005 22:22
· Личное сообщение · #14

Какая-то срань!!!

Олька в разных местах брякается, но машина (Пень 2.66ГГц с 512 RAM) уходит почти в завис - только через убитие жертвы из Task Manager удаётся вернуть в нормальное состояние.
В частности, бряк на RegQueryValueExA нормально работает ТОЛЬКО "на подходах", а по адресу 004318EB как раз идёт лажа...
Кажися, какая-то "кракозябра" припрятана



Ранг: 15.1 (новичок)
Активность: 0.010
Статус: Участник

Создано: 26 августа 2005 23:13
· Личное сообщение · #15

estet, я с этой игрой, мягко говоря, мучаюсь уже 4 дня. У меня на ХР выход есть такой.
Сделать у игры минимальное разрешение экрана. Когда сработает бряк игра виснет, затем нажимай Alt+F5 (перевод Ольки в режим поверх всех окон) и Ольку становиться видно. А если потом нажать F9, то игра просто сворачивается, а Олька остаётся, но уже не в 640 на 480, а установленном видео режиме.



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

Создано: 31 августа 2005 01:54
· Личное сообщение · #16

Кто-нибудь, что-нибудь откопал?



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

Создано: 31 августа 2005 07:07
· Личное сообщение · #17

dissas пишет:
Кто-нибудь, что-нибудь откопал?


BlindChaos в запросах на взлом уже давно отметился.

RegName: BC
LicenseCode: AF7UVK7JFD9MZCKH7G267G624

-----
TBR




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

Создано: 31 августа 2005 14:22
· Личное сообщение · #18

Я видел этот ключь. Меня интересует сама проверка этого ключа. Где она в программе?




Ранг: 69.0 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 31 августа 2005 17:49
· Личное сообщение · #19

dissas

Считывание имени и LicenseCode ловятся на GetDlgItemTextA, потом идут подряд три CALL, потом EndDlg и куча вызовов DDRAW. Замена REGISTERFAIL на REGISTEROK (адрес см выше) меняет только template для DlgBoxIndirectParamA - регистрации по настоящему не происходит.

А эта грёбаная огромная константа PUSH-ается неоднократно в разных местах...



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

Создано: 31 августа 2005 18:07
· Личное сообщение · #20

Это я уже проходил. Я уже всю оконую процедуру перелопатил. REGISTERFAIL или REGISTEROK срабатывает по 40А сообщению, посланным PostMessageA! Я уже не знаю!



Ранг: 36.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 01 сентября 2005 09:29
· Личное сообщение · #21

dissas
Точно на 40A ? Я когда смотрел у меня получилось 488-ошибка, 489-ОК. (3b9+7e+1+ 50/51 )



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

Создано: 01 сентября 2005 12:11
· Личное сообщение · #22

Откуда ты взял 7e?
mov edx, 40A
.text:00428CFD sub edx, 3B9h
.text:00428D03 mov [ebp+var_28], edx = 51
.text:00428D06 cmp [ebp+var_28], 5Ch
.text:00428D0A ja loc_42967E не прыгаем
.text:00428D10 mov ecx, [ebp+var_28]
.text:00428D13 xor eax, eax
.text:00428D15 mov al, ds:byte_4297A6[ecx] - 4297A6+51=4297F7 -> 3
.text:00428D1B jmp ds:off_42978A[eax*4] - 42978A+C=429796 -> offset loc_4294E5


.text:004294E5 call sub_43226B - запись ключа в реестр
.text:004294EA push 0
.text:004294EC call sub_419E19 - REGISTEROK т.е. всё ОК!
.text:004294F1 add esp, 4
.text:004294F4 mov dword_4AB228, 0
.text:004294FE mov dword_4ABB20, 3
...................................................................... ..............

А PostMessageA которые посылают 40А сообщение в коде 3 штуки!



Ранг: 36.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 01 сентября 2005 15:12 · Поправил: Malice
· Личное сообщение · #23

dissas пишет:
Откуда ты взял 7e?

Ну вроде отсюда:
00428C4E |> 8B55 D8 MOV EDX,[LOCAL.10]
00428C51 |. 83EA 7E SUB EDX,7E
00428C54 |. 8955 D8 MOV [LOCAL.10],EDX
и
00428C29 |. 8B55 D8 MOV EDX,[LOCAL.10]
00428C2C |. 83EA 01 SUB EDX,1
00428C2F |. 8955 D8 MOV [LOCAL.10],EDX

ps сейчас посмотрел - был не прав 40a надо


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


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