Сейчас на форуме: zds, kris_sexy (+7 невидимых)

 eXeL@B —› Крэки, обсуждения —› Ccalc6.80
<< . 1 . 2 . 3 . 4 . 5 . >>
Посл.ответ Сообщение

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

Создано: 27 июня 2006 18:04 · Поправил: 452
· Личное сообщение · #1

Помогите разобратся с программой Ccalc6.80.
Сайт программы www.adgroup.com.ua http://www.adgroup.com.ua/
Всё перепробовал ничево не получается.
Я в етом деле новичок и ничево толком не умею.
Инфа
Программа написана на делфи
Проверяет рег номер при запуске.
При создании файла c:\system.da3 тутже закрывается.
в реестре записей не имеет я не видил с regmoon
restorator-om удалил таймер которий запускает функцыю abcgood появления окна для введения рег кода.




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

Создано: 18 августа 2006 22:48
· Личное сообщение · #2

newborn но сколько я не дебажил прогу с разными серийниками я так и не нашёл то место где толком можно было б сделать подставу. Так надо смотреть где серийник делается. Отталкиваться надо от создания кей-файла. Кажется там есть такое.
Помнится я с этой прогой не спал 5 дней, рекорд даже себе поставил
Ну вот нафик она тебе нужна? Ты ее юзаешь? Или хочешь кряк продать? Я ее бросил, потому что появилась более интересная задачка. Ну и надоело трейсит математику, если честно.

Попробую восстановить архив с прогой. Но ничо не обещаю. Времени совсем нет. Прихожу поздно, устаю как собака. И мозги уже не соображают.
Очень странно что 98% всех крутых (мудрецов, наставников, ветеранов) в эту тему даже неразу не глянули, а даже если и глянули, то они выше того что бы опустится теперь до такого как запустить ольку и немного подебажить, я когда создавал такой же топиг туда тоже некто не отписался.
А чо тут странного. Вот если б вопрос был по какому-нить проту, то ответов было б валом. А защита без прота - это ж каменный век Прот снял - и защита отвалилась: Ты мои посты посмотри,- много ответов?




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

Создано: 19 августа 2006 10:01
· Личное сообщение · #3

Кароч, прогу я восстановил, тока олька отказалась ее принимать. Придется начинать все сначала.
newborn
Твой первый патч. Ты как к ниму пришел. Хочется понять логику.



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

Создано: 19 августа 2006 16:16 · Поправил: 452
· Личное сообщение · #4

stahh пишет:
newborn
Твой первый патч. Ты как к ниму пришел. Хочется понять логику.

Отталкивайся от таймера ABCGood трейсил там и в стеке поменял 00 01 или ноборот непомню и прога запустилась и кнопки работали но счетает неправильно.

Завтра поеду за инфой. Помогите сделать подставу инфы хотябы серийник жесткого попробуйте ввести етот 0012FB08 01B4C510 ASCII "14DD1C29" с етим серийником (5329BE2382184C110B750477FA0D590F609D118261E29E914A708E2BA0F686BE62343 51F34AC92DCF94957B8ADFBAC7B4C3AF2BBD41FBC0E8418C055EBFF99FCEB1F76710FC 72A688A0F0299F92A6CD12232BFDDAECF34A9147CCA35320C37DE) и при печати количество отображается в нормальном виде.

ето адреса инфы моево компа (не под серийник)
0012FAF8 01B44118 ASCII "TRIADA-3DFA8605"
0012FAFC 7C913901 ntdll.7C913901
0012FB00 00393202
0012FB04 775F3201 ole32.775F3201
0012FB08 01B4C510 ASCII "14DD1C29"
0012FB0C 00000001
0012FB10 01B440F8 ASCII "S01RJ10XA09534"
0012FB14 01B440D8 ASCII "SAMSUNG SV0411N"
0012FB18 01B4C528 ASCII "UA100-11"

0012FAF4 00D1E550 ASCII "C:\Program Files\Ccalc6.80\Ccalc_Path_Only_One_byte.exe"
0012FAF8 01B44118 ASCII "TRIADA-3DFA8605"
0012FAFC 7C913901 ntdll.7C913901
0012FB00 00393202
0012FB04 775F3201 ole32.775F3201
0012FB08 01B4C510 ASCII "14DD1C29"
0012FB0C 00000001
0012FB10 01B440F8 ASCII "S01RJ10XA09534"
0012FB14 01B440D8 ASCII "SAMSUNG SV0411N"
0012FB18 01B4C528 ASCII "UA100-11"
водебы вся инфа но проца невижу?



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

Создано: 19 августа 2006 16:20 · Поправил: 452
· Личное сообщение · #5

452 пишет:
трейсил там

кстати сразу сверял с демкой и там увидел разницу.
procedure TForm1.ABCGood(Sender : TObject);
(*
005C2A78 55 push ebp
005C2A79 8BEC mov ebp, esp
005C2A7B 83C4F8 add esp, -$08
005C2A7E 8955F8 mov [ebp-$08], edx
005C2A81 8945FC mov [ebp-$04], eax
005C2A84 33D2 xor edx, edx
* Reference to Form1
|
005C2A86 8B45FC mov eax, [ebp-$04]
* Reference to control TForm1.ABC : TTimer
|
005C2A89 8B80EC050000 mov eax, [eax+$05EC]

* Reference to : TLabeledEdit._PROC_0044CB8C()
|
005C2A8F E8F8A0E8FF call 0044CB8C

* Reference to pointer to GlobalVar_00665F40
|
005C2A94 A180AB6400 mov eax, dword ptr [$0064AB80]
005C2A99 8B00 mov eax, [eax]
* Reference to field GlobalVar_00665F40.OFFS_0024
|
005C2A9B 8B4024 mov eax, [eax+$24]
005C2A9E 80B8B800000000 cmp byte ptr [eax+$00B8], $00
005C2AA5 740F jz 005C2AB6
* Reference to TMyDlg instance
|
005C2AA7 A1F0A76400 mov eax, dword ptr [$0064A7F0]
005C2AAC 8B00 mov eax, [eax]
005C2AAE 8B10 mov edx, [eax]
* Possible reference to virtual method TMyDlg.OFFS_00FC
|
005C2AB0 FF92FC000000 call dword ptr [edx+$00FC]
005C2AB6 59 pop ecx
005C2AB7 59 pop ecx
005C2AB8 5D pop ebp
005C2AB9 C3 ret
*)



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

Создано: 19 августа 2006 16:24 · Поправил: 452
· Личное сообщение · #6

Кстати в проге есть кнопка "Пересчитать заказ" Там есть 2 проверки
* Reference to control TForm1.N6 : TMenuItem
|
005C9EF1 3B8284030000 cmp eax, [edx+$0384] 1 - запускает about
005C9EF7 750F jnz 005C9F08
* Reference to TAboutDlg instance
|
005C9EF9 A110AC6400 mov eax, dword ptr [$0064AC10]
005C9EFE 8B00 mov eax, [eax]
005C9F00 8B10 mov edx, [eax]
* Possible reference to virtual method TAboutDlg.OFFS_00FC
|
005C9F02 FF92FC000000 call dword ptr [edx+$00FC]
005C9F08 8B45F8 mov eax, [ebp-$08]
* Reference to Form1
|
005C9F0B 8B55FC mov edx, [ebp-$04]
* Reference to control TForm1.N63 : TMenuItem
|
005C9F0E 3B82F8080000 cmp eax, [edx+$08F8] 2 - запускает activate
005C9F14 750F jnz 005C9F25
* Reference to TActivateDlg instance
|
005C9F16 A128A96400 mov eax, dword ptr [$0064A928]
005C9F1B 8B00 mov eax, [eax]
005C9F1D 8B10 mov edx, [eax]
* Possible reference to virtual method TActivateDlg.OFFS_00FC
|
005C9F1F FF92FC000000 call dword ptr [edx+$00FC]
Для чево они там?
И для чево в проге Activatedlg если оно нигде ниразу не запускалось.
Подправил вторую проверку запустилось окно активацыи серийник введен а код подтверждения где.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 19 августа 2006 18:55
· Личное сообщение · #7

stahh пишет:
подставу данных, думаю, сделать можно.

Это без проблем.



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

Создано: 19 августа 2006 19:19 · Поправил: 452
· Личное сообщение · #8

tundra37 пишет:
stahh пишет:
подставу данных, думаю, сделать можно.
Это без проблем.

Ето я знаю что можна но как^?
452 пишет:
Помогите сделать подставу инфы хотябы серийник жесткого попробуйте ввести етот 0012FB08 01B4C510 ASCII "14DD1C29" с етим серийником (5329BE2382184C110B750477FA0D590F609D118261E29E914A708E2BA0F686BE62343 51F34AC92DCF94957B8ADFBAC7B4C3AF2BBD41FBC0E8418C055EBFF99FCEB1F76710FC 72A688A0F0299F92A6CD12232BFDDAECF34A9147CCA35320C37DE) и при печати количество отображается в нормальном виде.





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

Создано: 19 августа 2006 23:18
· Личное сообщение · #9

Ну вот так это выглядит у меня
0012FAF8 0137C4E0 ASCII "FUCK-YOU" - имя компа
0012FAFC 7C913001 ntdll.7C913001
0012FB00 00303202
0012FB04 775F3201 ole32.775F3201
0012FB08 0137C4B0 ASCII "14451E20" - это чо?
0012FB0C 00000001
0012FB10 0137C4C8 ASCII "5JV2PLDL" - серийник винта
0012FB14 0137C4F8 ASCII "ST340014A" - модель винта
0012FB18 0137C510 ASCII "3.54" - это какой-то код винта
И адреса в памяти и адреса в стеке - одинаковые. Но это на ХРСП2. А на СП1 - могут быть совсем другие.

00633410 |. E8 93>CALL Ccalc.00632DA8 ; Vint
00633415 |. B2 01 MOV DL, 1
00633417 |. A1 A4>MOV EAX, DWORD PTR DS:[41BFA4]
0063341C |. E8 23>CALL Ccalc.00403E44
Вот после колла получающего данные винта надо сделать колл в дописаную ф-цию, которая запишит по этим адресам правильные данные. Далее генерим ключ, потом вводим правильный ключ. И, по идее, прога должна работать.

А чтоб заюзать такой кряк на любую систему, надо, блин подумать. Я сначала думал лоадер, но скажем имя компа пишет ntdll, а винт - кернел. Если адреса разные, то надо искать. А чо искать, когда не знаешь, какие данные будут записаны. Хотя я в этом мало шарю. Но если есть возможность прочекить каждую запись,то суть лодыря такова. Ждет вызова функции в проге(ну той которая проверяет железо), потом ставит бряк на GetComputerNameA, смотрит куда записалось, и переписывает на свое. И так по всем пунктам. Я кодить не умею ни на одном языке, так что...

ЗЫ. Это если тока эти дела проверяются. А если еще что-то?



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 20 августа 2006 09:38
· Личное сообщение · #10

stahh452
Я, когда трассировал, функцию RegInfo нашел место, где серийник превращается в ASCII.
452 утверждает, что "порченные данные" зависят только от серийника диска. Поэтому, сначала правлю его и проверяю. Потом займусь другими данными.



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

Создано: 20 августа 2006 13:15 · Поправил: 452
· Личное сообщение · #11

tundra37 пишет:
452 утверждает, что "порченные данные" зависят только от серийника диска

Я так не утверждаю! я только говорю что ииии от серийника диска



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

Создано: 20 августа 2006 13:30
· Личное сообщение · #12

Кстати ключик о т с т а р о й версии под ходит к новой



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

Создано: 20 августа 2006 14:27
· Личное сообщение · #13

Вот радости то прям полные штаны
Сижу здесь вдруга на инете проверяю прогу с новой инфой и прога даже считает правильно
Но от етого автора можно ожыдать чево угодно. Буду проверять



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

Создано: 20 августа 2006 15:03 · Поправил: 452
· Личное сообщение · #14

00635748 |. E8 93F9FFFF CALL Ccalc222.006350E0
Здесь вся инфа в зборе готова для замены!

Типа ета инфа
0012FAF8 01A44118 ASCII "TRIADA-3DFA8605"
0012FAFC 7C913901 ntdll.7C913901
0012FB00 00393202
0012FB04 775F3201 ole32.775F3201
0012FB08 01A4C510 ASCII "14DD1C29"
0012FB0C 00000001
0012FB10 01A440F8 ASCII "S01RJ10XA09534"
0012FB14 01A440D8 ASCII "SAMSUNG SV0411N"
0012FB18 01A4C528 ASCII "UA100-11"



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

Создано: 20 августа 2006 15:15 · Поправил: 452
· Личное сообщение · #15

От блин я немогу с такой защити здесь все просто то как мне жаль те 4 недели што я взламывал ету смешную защиту.
Здесь все по алоритму счиается ево я незнаю но могу сказать только одно если правильно 0012FB08 или 0012FAF8 ето то прога работает. Там не нужно всю инфу пихать а только одину из правильных.



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

Создано: 20 августа 2006 15:20
· Личное сообщение · #16

Идем далее щас нужно сделать подставу данных как ето реализировать?
Сам пробывал прога материца. Одним словом нужен опыт а у меня ево целых 6 недель.



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

Создано: 20 августа 2006 18:48
· Личное сообщение · #17

452 пишет:
Там не нужно всю инфу пихать а только одину из правильных

Проверил всю инфу пихать надо.Ато подсчет ведет неправильно.




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

Создано: 20 августа 2006 21:26
· Личное сообщение · #18

452
Хм. Я думаю, ты еще в школе учишься? Ты б на правописание приналег. Я редко это замечаю, но уж очень много у тебя ошибок.
Напиши понятно, чо подставил. Я пробовал подставлять твою инфу - не пашет. То, что ты скинул в личку - куча ненужного хлама. Нужны данные, которые видны в проге при запуске, и нужен рабочий серийник к этим данным. 14DD1C29 - это не номер винта. Я не знаю, чо эт. Надо долго трейсить, может позже.
От блин я немогу с такой защити здесь все просто то как мне жаль те 4 недели што я взламывал ету смешную защиту.
00404EB6 74 09 JE SHORT Ccalc.00404EC1 ; C2_JE - измени на JNE и наслаждайся "тупой защитой". Ключ проверяется при любом клике. Круто?
Если есть возможность, то забей в прогу правильные данные и ключ и сделай скрин. Скрин в личку.
2ALL
Чо делают команды FISTР, FILD ? Чота раньше как-то без них обходилось.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 21 августа 2006 11:23
· Личное сообщение · #19

stahh пишет:
452 Я думаю, ты еще в школе учишься?

Да с Украины он и прога эта украинского разлива
---------------------------------------------
А зачем обязательно курочить ntdll и kernel32 - можно внутри проги все исправить. Для гарантии поставить бряк на все информационные функции и убедится, что они нигде больше не вызываются.
Это проще, хоть и дольше.



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

Создано: 21 августа 2006 12:29
· Личное сообщение · #20

452
выложи программу ту что ты ломаеш версию+ключ, реально работающий+в текстовом файле всё что ты нарыл с твоими данными компа на какойнить нормальный сервис ,кроме рапиды и слил.ру, я качну гляну что там да как.

-----
~ the Power Of Reversing team ~




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

Создано: 21 августа 2006 12:45
· Личное сообщение · #21

newborn пишет:
какойнить нормальный сервис ,кроме рапиды и слил.ру,

webfile.ru podoudet.?
Cherez chas ili 2 vulogu a schs vremeni net.




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

Создано: 21 августа 2006 20:52
· Личное сообщение · #22

Та версия, что у меня - 6.98.34, другую не вытяну. Не знаю, как у вас, но у меня прога запускается с ошибками, потом показывает главное окно, а потом вылазит окно регистрации. Если убить таймер, то прога запускается полу-рабочая. Так шо - или от версии зависит, или исчо чота юзается.
А зачем обязательно курочить ntdll и kernel32 - можно внутри проги все исправить. Я и имел ввиду внутри проги, но лоадер должен будет трейсить прогу в кернел до записи числа или имени. Потому что запись в стек происходит не в проге. И исчо одно, не знаю от чего это зависит, но прога иногда пишет не по тем адресам, что всегда. Вчера, например, писала на 100 байт дальше, а седня - там где и раньше.

И хто-нить ответит, чо делают команды FISTР, FILD? А чтоб не было скучно отвечать, ставьте бряк по адресу 63122а и трейсите по Ф7. Или, если адреса не совпадают вот кусок кода
006311DA |. B9 7C1B6300 MOV ECX, Ccalc.00631B7C ; ASCII "Ccalc.ini"
006311DF |. E8 DC3EDDFF CALL Ccalc.004050C0
006311E4 |. 8B8D E4FEFF>MOV ECX, [LOCAL.71]
006311EA |. B2 01 MOV DL, 1
006311EC |. A1 3CBB4200 MOV EAX, DWORD PTR DS:[4>
006311F1 |. E8 FEA9DFFF CALL Ccalc.0042BBF4
006311F6 |. 8945 F8 MOV [LOCAL.2], EAX
006311F9 |. 6A 01 PUSH 1
006311FB |. B9 901B6300 MOV ECX, Ccalc.00631B90 ; ASCII "CurLanguageId"
00631200 |. BA A81B6300 MOV EDX, Ccalc.00631BA8 ; ASCII "Common"
00631205 |. 8B45 F8 MOV EAX, [LOCAL.2] ; kernel32.7C816D58
00631208 |. 8B18 MOV EBX, DWORD PTR DS:[E>
0063120A |. FF53 08 CALL NEAR DWORD PTR DS:[E>; Ccalc.00400000
0063120D |. 8BD0 MOV EDX, EAX
0063120F |. 8B45 FC MOV EAX, [LOCAL.1]
00631212 |. E8 910F0000 CALL Ccalc.006321A8
00631217 |. 6A 00 PUSH 0
00631219 |. 8D85 E0FEFF>LEA EAX, [LOCAL.72]
0063121F |. 50 PUSH EAX
00631220 |. BA A81B6300 MOV EDX, Ccalc.00631BA8 ; ASCII "Common"
00631225 |. B9 B81B6300 MOV ECX, Ccalc.00631BB8 ; ASCII "C2"
0063122A |. 8B45 F8 MOV EAX, [LOCAL.2] ; kernel32.7C816D58
0063122D |. 8B18 MOV EBX, DWORD PTR DS:[E>
0063122F |. FF13 CALL NEAR DWORD PTR DS:[E>; СЮДА БРЯК

ЗЫ. Я, мiж iншiм, тоже с Украины. Это оправдывает незнание русского языка? А newborn пишет грамотно



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

Создано: 21 августа 2006 21:51
· Личное сообщение · #23

stahh
Насчёт команд FISTР, FILD я тоже хз, встретил их только в этой проге, раньше не видел.

Завтра качну прогу посмотрю чё там по адресу 63122а, я это в тот раз заметил ещё.

452
За инфу срасибо, завтра качну.

З.Ы.
stahh пишет:
ЗЫ. Я, мiж iншiм, тоже с Украины. Это оправдывает незнание русского языка? А newborn пишет грамотно


Я тоже с Украины, просто перед тем как постить я читаю и иногда исправляю ошибки, в мирке и аське просто пишу не думая про ошибки. Так шо панове, не засмучуйтесь, вчить мову і все буде добре !!!

-----
~ the Power Of Reversing team ~




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

Создано: 21 августа 2006 22:35
· Личное сообщение · #24

stahh пишет:
Чо делают команды FISTР, FILD ?

Из справочника "Ассемблер" Юрова:
Команда fistp позволяет выполнить преобразование значения (вещественный расширенный формат) из вершины стека сопроцессора в соответствующее округленное целое значение для того, чтобы с ним могли работать команды основного процессора. Производится выталкивание значения из вершины стека сопроцессора.
Команда fild преобразует целое значение в вещественный расширенный формат для того, чтобы с ним впоследствии могли работать команды сопроцессора.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 22 августа 2006 15:02
· Личное сообщение · #25

Сухой остаток.
Ищем вызов GlobalMemoryStatus. Тот что в программе проверки (перед ним вызов GetComputerNameA)

006355C3 |. 8B45 D0 MOV EAX,DWORD PTR SS:[EBP-30] ; |
006355C6 |. 50 PUSH EAX ; |Buffer = NULL
006355C7 |. E8 F01FDDFF CALL <JMP.&kernel32.GetComputerNam>; \GetComputerNameA
006355CC |. 85C0 TEST EAX,EAX
006355CE |. 0F84 D7030000 JE 006359AB
006355D4 |. 8D85 84FDFFFF LEA EAX,DWORD PTR SS:[EBP-27C]
006355DA |. 50 PUSH EAX ; /pMemStat = 017CC4F8
006355DB |. E8 F420DDFF CALL <JMP.&kernel32.GlobalMemorySt>; \GlobalMemoryStatus
006355E0 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]

Этих вызов в программе всего 2 - 2-й наш.
Сразу после вызова можно правитьинформацию. Серийник диска С извлекается из DWORD PTR SS:[EBP-4]
Достаточно регистр EAX правильно присвоить, но можно и DWORD PTR SS:[EBP-4] исправить.
Легко заметить, что имя компа в буфере, адрес которого в DWORD PTR SS:[EBP-30]
Кстати, и адрес [EBP-4] легко определяется. Просто стек заполняется для функции GetVolumeInformationA, а потом вызывают функцию для построения строки "С:\" и ее адрес кладется на стек.
Т.е. можно сделать универсальный патч, через хук, если конечно все параметры не меняются в Виндах.
Кстати, все функции из kernel32 ( ntdll - по ошибке вклинилась).

Чтобы не было путаницы серийник - 14DD1C29 , а имя компа TRIADA-3DFA8605
В ini-файле надо прописать длинный номер, который здесь 2 раза уже повторяли.
Проверил на версии 6.98.34 и 41 Сейчас буду патч готовить ( для 41-й).



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

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

tundra37 пишет:
Проверил на версии 6.98.34 и 41 Сейчас буду патч готовить ( для 41-й).


Только что скачал но ещё не смотрел, нету под рукой всякого "добра". Ты как сделаеш патч, дай мну на чистой машине потестить, и если не сложно что где патчил опесать.

Если до вечера не сделаеш я попробую по твоей методике.

-----
~ the Power Of Reversing team ~




Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 22 августа 2006 16:30
· Личное сообщение · #27

newborn Продолжаю рассказ.
006355E0 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
В этом месте ставим JMP 6424f0 - там идут нули заполняющие второй кодовый сегмент в файле.

А по адресу 6424f0 MOV EAX, dword [ebp-30]
MOV dword[EAX],41495254 (TRIA - вывернутая задом наперед)
MOV dword[EAX+4],...........
MOV dword[EAX+8],...........
MOV dword[EAX+С],...........
MOV EAX,14DD1C29
XOR EDX,EDX
JMP 006355E5

Записать все изменения в олли сразу не получается, т.к. правим в двух сегментах.
Но с двух раз - нормально. Сейчас в личку кину ссылку на готовый патч.

В версии 6.98.34 адрес такой
006332A8 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
Место в сегменте есть , адрес будет 0063F4F0
++++++++++++++++++++++++++++++++
Только сейчас сообразил. Эта правка, просто другой вариант моей правки. Естественно более правильный, т.к. мы подставили правильные цифры. Но вот все ли подставили - это большой вопрос. Кстати с GlobalMemoryStatus тоже все понятно, вот только там наверняка динамические цифры есть, которые не стоит подставлять и есть зависимость динамических и статических величин.




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

Создано: 22 августа 2006 20:49
· Личное сообщение · #28

tundra37 Похоже, с подставой проверки ты разобрался. Не знаю, у мну версия другая. Пусть другие проверят. Но вопрос с кряком остается. Думаю, что на других системах патч работать не будет. Стек-такая хрень... А может и будет. Что плохо, так я смотрю они новые билды клепают быстро.
Если патч работает, то думаю тему можно закрывать. У меня если время будет, буду ковырять на предмет отключения проверки. Хотя вот этот кусок наводит на мысль, что это не так просто.
004030DC $ 39D0 CMP EAX, EDX ; C2????
004030DE . 74 31 JE SHORT Ccalc.00403111
004030E0 . 83F9 20 CMP ECX, 20 ; Switch (cases 0..20)
004030E3 . 77 7C JA SHORT Ccalc.00403161
004030E5 . 83E9 08 SUB ECX, 8
004030E8 . 7F 07 JG SHORT Ccalc.004030F1
004030EA . FF248D 3431400>JMP NEAR DWORD PTR DS:[ECX*4+403134]
004030F1 > DF2C01 FILD QWORD PTR DS:[ECX+EAX]
004030F4 . DF28 FILD QWORD PTR DS:[EAX]
004030F6 . 83F9 08 CMP ECX, 8
004030F9 . 7E 11 JLE SHORT Ccalc.0040310C
004030FB . DF68 08 FILD QWORD PTR DS:[EAX+8]
004030FE . 83F9 10 CMP ECX, 10
00403101 . 7E 06 JLE SHORT Ccalc.00403109
00403103 . DF68 10 FILD QWORD PTR DS:[EAX+10] ; Cases 19,1A,1B,1C,1D,1E,1F,20 of switch 004030E0
00403106 . DF7A 10 FISTP QWORD PTR DS:[EDX+10]
00403109 > DF7A 08 FISTP QWORD PTR DS:[EDX+8] ; Cases 11,12,13,14,15,16,17,18 of switch 004030E0
0040310C > DF3A FISTP QWORD PTR DS:[EDX] ; Cases 9,A,B,C,D,E,F,10 of switch 004030E0
0040310E . DF3C11 FISTP QWORD PTR DS:[ECX+EDX]
00403111 > C3 RETN



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

Создано: 22 августа 2006 23:25
· Личное сообщение · #29

tundra37
Хм, странно, твой патч у меня прописывает кое-какие данные, но прога не запускается, тоесть появляется то окно наговское и всё, у тебя так же ?

Имхо насколько я помню я тогда патчил один байт для того что б она запустилась, в этой версии на 41 заканчивается совсем намучено что-то с этой процедурой, патчу как тогда нечё не реагирует.

Вообщем хз, я как вижу эту прогу меня в дрож бросает.

-----
~ the Power Of Reversing team ~




Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 23 августа 2006 13:42
· Личное сообщение · #30

newborn пишет:
появляется то окно наговское и всё

У меня уже сделаны патчи 1 на 0 ( 2 штуки ). На днях сделаю добавочный патч ( эти две правки отдельно). И попробую лоадер универсальный наклепать попозже, естественно на готовом движке.



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

Создано: 23 августа 2006 14:30
· Личное сообщение · #31

tundra37
Ок, посмотрим что ты там патчил, ты скажи у тебя она реально правельно считает ?

-----
~ the Power Of Reversing team ~



<< . 1 . 2 . 3 . 4 . 5 . >>
 eXeL@B —› Крэки, обсуждения —› Ccalc6.80
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати