![]() |
eXeL@B —› Основной форум —› Хитрож.пая OEP в Арме 3.х-4.х |
Посл.ответ | Сообщение |
|
Создано: 01 декабря 2005 12:33 · Личное сообщение · #1 Hi, people! DVD Data Rescue 2.1 build 1458 h**p://www.naltech.com/download/dvddr.exe (2 мегаса) - Arma 3.7-4.х Проблема: отделяю сынка от папы, вывожу сынка из loop, ставлю бряку на CreateThread - всё как обычно (до этого места)... НО nag после первого бряка на CreateThread не выскакивает - появляется после второго... А после подтверждения триала вообще не брякается и прога запускается :-/ FYI: После "прохода" по ret из двух бряков на CreateThread никаких CALL EDI нету - есть только CALL ECX Гляньте, где лажа запрятана... ЗЫ. Скрипт для отделения папы/сынка (для новых Арм, к-ые палят bp) - в аттаче. ![]() ![]() |
|
Создано: 01 декабря 2005 13:07 · Личное сообщение · #2 |
|
Создано: 01 декабря 2005 15:06 · Личное сообщение · #3 NIKOLA CALL ECX там не простой - я ловил не первый, а ВТОРОЙ... 0D070355 /75 1E JNZ SHORT 0D070375 0D070357 |8B90 88000000 MOV EDX,DWORD PTR DS:[EAX+88] 0D07035D |FF76 18 PUSH DWORD PTR DS:[ESI+18] 0D070360 |3390 84000000 XOR EDX,DWORD PTR DS:[EAX+84] 0D070366 |FF76 14 PUSH DWORD PTR DS:[ESI+14] 0D070369 |3350 40 XOR EDX,DWORD PTR DS:[EAX+40] 0D07036C |FF76 10 PUSH DWORD PTR DS:[ESI+10] 0D07036F |2BCA SUB ECX,EDX 0D070371 |FFD1 CALL ECX ; dvddr.0046698B 0D070373 |EB 23 JMP SHORT 0D070398 0D070375 \83FA 01 CMP EDX,1 0D070378 75 21 JNZ SHORT 0D07039B 0D07037A FF76 04 PUSH DWORD PTR DS:[ESI+4] 0D07037D 8B90 88000000 MOV EDX,DWORD PTR DS:[EAX+88] 0D070383 3390 84000000 XOR EDX,DWORD PTR DS:[EAX+84] 0D070389 FF76 08 PUSH DWORD PTR DS:[ESI+8] 0D07038C 3350 40 XOR EDX,DWORD PTR DS:[EAX+40] 0D07038F 6A 00 PUSH 0 0D070391 FF76 0C PUSH DWORD PTR DS:[ESI+C] ; dvddr.00400000 0D070394 2BCA SUB ECX,EDX 0D070396 FFD1 CALL ECX ; dvddr.0046698B Выходим сюда после первого бряка на CreateThread (Z0oMiK, привет, дамп на этом месте я делал уже) 0046698B 55 PUSH EBP 0046698C 8BEC MOV EBP,ESP 0046698E 6A FF PUSH -1 00466990 68 38EE4E00 PUSH dvddr.004EEE38 00466995 68 984B4600 PUSH dvddr.00464B98 0046699A 64:A1 00000000 MOV EAX,DWORD PTR FS:[0] 004669A0 50 PUSH EAX ; dvddr.0070560C 004669A1 64:8925 0000000>MOV DWORD PTR FS:[0],ESP 004669A8 83EC 58 SUB ESP,58 004669AB 53 PUSH EBX ; dvddr.006E26B3 004669AC 56 PUSH ESI ; dvddr.0070D098 004669AD 57 PUSH EDI ; dvddr.00401000 004669AE 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP 004669B1 FF15 34434E00 CALL DWORD PTR DS:[4E4334] DS:[004E4334]=0D05AD38 А вот здесь... 0D05AD38 - это ж "левая" секция... Дамп вылетает именно на этом адресе... Я, похоже, немного чего-то затупил :-] - но сегодня на работе у коллеги дочка родилась... ![]() |
|
Создано: 01 декабря 2005 15:10 · Личное сообщение · #4 |
|
Создано: 01 декабря 2005 18:02 · Личное сообщение · #5 |
|
Создано: 01 декабря 2005 19:45 · Личное сообщение · #6 |
|
Создано: 01 декабря 2005 20:51 · Личное сообщение · #7 |
|
Создано: 01 декабря 2005 21:10 · Личное сообщение · #8 |
|
Создано: 01 декабря 2005 22:49 · Личное сообщение · #9 |
|
Создано: 01 декабря 2005 23:02 · Личное сообщение · #10 Mario555 Я не смотрел саму прогу, просто помнится кодесплитинг пишется по большим адресам типа 0Dxxxxxx, какой там может быть импорт ? Если только iat elimination был бы, и то адреса вроде поменьше обычно у него =) ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels ![]() |
|
Создано: 01 декабря 2005 23:06 · Личное сообщение · #11 я тоже прогу не смотрел, но уже по приведённому листингу видно что на кодесплитинг это не похоже. Smon пишет: просто помнится кодесплитинг пишется по большим адресам типа 0Dxxxxxx, какой там может быть импорт ? выделяемые адреса вообще специфичны для каждой системы, а по поводу импорта - переходники ессно ;) ![]() |
|
Создано: 01 декабря 2005 23:08 · Личное сообщение · #12 |
|
Создано: 01 декабря 2005 23:15 · Личное сообщение · #13 |
|
Создано: 01 декабря 2005 23:23 · Личное сообщение · #14 |
|
Создано: 02 декабря 2005 00:10 · Личное сообщение · #15 |
|
Создано: 02 декабря 2005 01:54 · Личное сообщение · #16 |
|
Создано: 02 декабря 2005 02:47 · Личное сообщение · #17 |
|
Создано: 02 декабря 2005 02:49 · Личное сообщение · #18 estet пишет: Выходим сюда после первого бряка на CreateThread (Z0oMiK, привет, дамп на этом месте я делал уже) 0046698B 55 PUSH EBP 0046698C 8BEC MOV EBP,ESP 0046698E 6A FF PUSH -1 00466990 68 38EE4E00 PUSH dvddr.004EEE38 00466995 68 984B4600 PUSH dvddr.00464B98 0046699A 64:A1 00000000 MOV EAX,DWORD PTR FS:[0] 004669A0 50 PUSH EAX ; dvddr.0070560C 004669A1 64:8925 0000000>MOV DWORD PTR FS:[0],ESP 004669A8 83EC 58 SUB ESP,58 004669AB 53 PUSH EBX ; dvddr.006E26B3 004669AC 56 PUSH ESI ; dvddr.0070D098 004669AD 57 PUSH EDI ; dvddr.00401000 004669AE 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP 004669B1 FF15 34434E00 CALL DWORD PTR DS:[4E4334] Кстати, это и есть ОЕП. ![]() |
|
Создано: 02 декабря 2005 02:55 · Личное сообщение · #19 |
|
Создано: 02 декабря 2005 09:45 · Поправил: estet · Личное сообщение · #20 Z0oMiK У меня чёт ещё круче байда... Дома восстановил импорт - всё вроде гут - запускаю пофиксенный дамп - "Please reinstall"... Переименовываю дамп в dvddr.exe, запускаю - опять NAG про триал... Гружу в Ольку: стартует с нормальной ОЕР, импорт в нужном месте... Хрень какая-то... Я ж помню после снятия Армы обычно и NAG с триалом убираются... У меня MagicJump здесь: 0D06CACD 75 42 JNZ SHORT 0D06CB11 ![]() |
|
Создано: 02 декабря 2005 10:01 · Личное сообщение · #21 |
|
Создано: 02 декабря 2005 22:39 · Личное сообщение · #22 |
|
Создано: 03 декабря 2005 01:12 · Личное сообщение · #23 Z0oMiK Я ж писал ;-] estet пишет: Переименовываю дамп в dvddr.exe А по триалу... идёт обращение к реестру... через RegQueryValue: HKEY_CURRENT_USER\Software\nd\dvddr\userdata "id"="nid" (наверно, NO_id или NULL_id подразумевается...) "k1"="223" "k2"="443" "ddu"=dword:00000001 а потом обращение к gcddr.dat (лежит в папке с прогой) - процедуру обработки ещё не разобрал. NIKOLA пишет: Ты ставь бряк не на начало функции, а на конец (ret). Я имел ввиду, что по классике: первый бряк на CreateThread, потом NAG, потом второй бряк на CreateThread и потом выход на ОЕР. А здесь - выход на ОЕР получается после первого бряка, а NAG - после второго (at least, у меня так было...) ![]() |
|
Создано: 03 декабря 2005 08:44 · Личное сообщение · #24 |
|
Создано: 03 декабря 2005 16:11 · Поправил: estet · Личное сообщение · #25 Ох, ёп... Кажися, я въехал =) NIKOLA Получается, NAG-ом управляет не Арма, а сама прога, так? Первый раз вижу Арму без NAG-a ;-] Чёт совсем замордовался с работой - "притупливать" стал... 8=) Ну, в принципе, я ответ получил - если народ конкретно DVD_Data_Rescue пообсуждать не хочет, то можно топик закрывать. Tnx to all ![]() |
|
Создано: 03 декабря 2005 19:31 · Личное сообщение · #26 |
|
Создано: 04 декабря 2005 11:45 · Личное сообщение · #27 |
![]() |
eXeL@B —› Основной форум —› Хитрож.пая OEP в Арме 3.х-4.х |