![]() |
eXeL@B —› Вопросы новичков —› Удалить nag screen у artmoney v7 |
Посл.ответ | Сообщение |
|
Создано: 19 апреля 2007 12:06 · Личное сообщение · #1 Привет, прочитал "Теоретические основы крэкинг. Автор Киберьманьяк" и приступил к практике, в виде припарируем программы взял Artmaney SE v. 7.21(может для начала и сложно, но вот пачемут её хочеться чуть паправить) Задача удалить вылезающий при запуски нагскрин... Вот мои шаги к заветной цели: 1. Определил чем упакован, оказалось ASPack'ом, распаковал... 2. Капанул eXeScope'ом, нашёл класс окна TFormAbout онулировал в нём все размеры, окно при запуске осталось, только в ~2 раза меньше и пустое, дальше копать не стал, может и можно удалить через редактор ресуров это окно, но ещё целью стало изучить лучше отладчик OllyDbg так что удалить нагскрин я хочу именно через него, следушие мои шаги будут происхадить именно в нём... 3. Открыл ексешник, загрузил список всех имеющихся в проге api функции, нашёл CreateWindowExA, перейдя обратно к коду, поставил бряк, дальше я стопарнулся, так как не пойму где вызывается это окно и как его правильно ликвидировать, вот скрины чтоб лучше понять мою проблемку, прикрепил в аттач ![]() ![]() |
|
Создано: 19 апреля 2007 12:42 · Личное сообщение · #2 |
|
Создано: 19 апреля 2007 16:45 · Личное сообщение · #3 |
|
Создано: 19 апреля 2007 18:03 · Личное сообщение · #4 |
|
Создано: 19 апреля 2007 19:38 · Личное сообщение · #5 eXa 00468779 |> /8B03 /MOV EAX,DWORD PTR DS:[EBX] 0046877B |. |E8 B4310000 |CALL 0046B934 00468780 |. |8B03 |MOV EAX,DWORD PTR DS:[EBX] 00468782 |. |80B8 9C000000 00 |CMP BYTE PTR DS:[EAX+9C],0 00468789 |. |74 0F |JE SHORT 0046879A 0046878B |. |8B45 FC |MOV EAX,DWORD PTR SS:[EBP-4] 0046878E |. |C780 4C020000 0200>|MOV DWORD PTR DS:[EAX+24C],2 00468798 |. |EB 14 |JMP SHORT 004687AE 0046879A |> |8B45 FC |MOV EAX,DWORD PTR SS:[EBP-4] 0046879D |. |83B8 4C020000 00 |CMP DWORD PTR DS:[EAX+24C],0 004687A4 |. |74 08 |JE SHORT 004687AE 004687A6 |. |8B45 FC |MOV EAX,DWORD PTR SS:[EBP-4] 004687A9 |. |E8 36FDFFFF |CALL 004684E4 004687AE |> |8B45 FC |MOV EAX,DWORD PTR SS:[EBP-4] 004687B1 |. |8B80 4C020000 |MOV EAX,DWORD PTR DS:[EAX+24C] 004687B7 |. |85C0 |TEST EAX,EAX 004687B9 ^\74 BE JE SHORT 00468779 ---- здесь меняем на JNE ![]() |
|
Создано: 19 апреля 2007 21:06 · Личное сообщение · #6 |
|
Создано: 19 апреля 2007 21:23 · Личное сообщение · #7 |
|
Создано: 19 апреля 2007 22:18 · Личное сообщение · #8 eXa BP CreateWindowExA Breakpoints Address Module Active Disassembly Comment 00408400 dumped_ Disabled JMP DWORD PTR DS:[<&user32.CreateWindowExA>] 00408A95 dumped_ Always CALL <JMP.&user32.CreateWindowExA> 00424656 dumped_ Disabled CALL <JMP.&user32.CreateWindowExA> 00438F10 dumped_ Always CALL <JMP.&user32.CreateWindowExA> 00438F63 dumped_ Always CALL <JMP.&user32.CreateWindowExA> 0044E7A3 dumped_ Disabled CALL <JMP.&user32.CreateWindowExA> 00466829 dumped_ Always CALL <JMP.&user32.CreateWindowExA> 0046876E dumped_ Always MOV EAX,DWORD PTR SS:[EBP-4] 005C1083 dumped_ Always MOV EDX,DWORD PTR DS:[EAX] 005CF647 dumped_ Always CALL 005C06DC Далее трейсим до появления нага и меняем процедуру до его вызова. ![]() |
|
Создано: 20 апреля 2007 13:18 · Личное сообщение · #9 |
|
Создано: 20 апреля 2007 13:25 · Личное сообщение · #10 |
|
Создано: 20 апреля 2007 15:32 · Личное сообщение · #11 |
|
Создано: 22 апреля 2007 15:59 · Личное сообщение · #12 |
|
Создано: 22 апреля 2007 16:41 · Поправил: Tector · Личное сообщение · #13 |
|
Создано: 22 апреля 2007 17:20 · Личное сообщение · #14 BP 0044E7A3 |. E8 589CFBFF CALL <JMP.&user32.CreateWindowExA> ; \CreateWindowExA 0044E7A8 |. 8986 80010000 MOV DWORD PTR DS:[ESI+180],EAX 0044E7AE |. 5E POP ESI 0044E7AF |. 5B POP EBX 0044E7B0 \. C3 RETN После продожительного зажимания кнопки f9 в стек заносится нужное мне окно 0012F6A4 00010000 |ExtStyle = WS_EX_CONTROLPARENT 0012F6A8 0012F748 |Class = "TFormAbout" 0012F6AC 00BEBC48 |WindowName = "О программе" 0012F6B0 06C70000 |Style = WS_OVERLAPPED|WS_MINIMIZEBOX|WS_MAXIMIZEBOX|WS_CLIPSIBLINGS|WS_CLIPCHI LDREN|WS_THICKFRAME|WS_CAPTION 0012F6B4 000000A7 |X = A7 (167.) 0012F6B8 00000066 |Y = 66 (102.) 0012F6BC 00000140 |Width = 140 (320.) 0012F6C0 000000F0 |Height = F0 (240.) 0012F6C4 092805B2 |hParent = 092805B2 ('ArtMoney',class='TApplication') 0012F6C8 00000000 |hMenu = NULL 0012F6CC 00400000 |hInst = 00400000 0012F6D0 00000000 \lParam = NULL Само окно не появляется, пока не нажмёш f9 раз так ~20 Вот по той инфе куда смотреть куда переходить, что за серый минус, блин я запутался... ![]() |
|
Создано: 23 апреля 2007 07:37 · Личное сообщение · #15 Ну, не знаю как нашел тот адрес N_E_O, он, у него наг создается, а потом не обрабатывается из-за изменения перехода, лично я искал так: <bpx ShowWindow>, после того как появляется TApplication, нажимай Ctrl+F12, он остановится на вызове показа окна About, потом нажимай серый минус, Olly покажет адрес 5C1085. Это вызов отображения окна. Теперь остается только заNOPить этот call и все, при желании, если хочешь патчить меньше байт, можно по этому адресу первую команду (PUSH EBP) заменить на RET. ![]() |
|
Создано: 23 апреля 2007 21:16 · Личное сообщение · #16 |
![]() |
eXeL@B —› Вопросы новичков —› Удалить nag screen у artmoney v7 |