хочу запустить в отладчике одну программку , которая вызывает кучу других, а она вылетает из под отладчика, и не могу понять почему это всё перестало у меня работать дизасм нашёл в одной из этих программ такое Код (Text): call dword[00403014 ->0000339A IsDebuggerPresent] ;;call KERNEL32.IsDebuggerPresent mov dword[004040A8], eax :00401DCE 6A01 а в теле exe примерно такие , как я понял импортируемые функции Код (Text): .... UnhandledExceptionFilter 00 00 4a 03 SetUnhandledExceptionFilter 00 39 02 IsDebuggerPresent 00 d7 02 RtlUnwind 00 00 00 00 00 00 ................... Будет-ли толк если просто заменить имя этой функции на имя другой, просто перезаписав это в exe, И какой функцией без параметров возвращающей null можно заменить ?
изменить Код (Text): call dword[00403014 ->0000339A IsDebuggerPresent] ;;call KERNEL32.IsDebuggerPresent на Код (Text): xor eax,eax nop ... nop или поставить мегахакерский плаген на отладчик
Если уж заменять, то на xor eax,eax + fill with NOP's А еще проще один байтик в PEB обнулить - или ручками, или еще проще в плагине каком-нить галку включить (если речь об OllyDbg)
Если перекомпилировать код из дизасма, наверное это мне ещё рановато Там одно только начало кода , заставляет долго перематывать страничку Код (Text): //******************** Program Entry Point ******** :00401000 687DC04000 push 0040C07D :00401005 E9DE690000 jmp 004079E8 :0040100A 59 pop ecx :0040100B 0F23F1 mov dr1, esi :0040100E E9EB690000 jmp 004079FE :00401013 6658 pop ax :00401015 6659 pop cx :00401017 F6F1 div cl :00401019 6650 push ax :0040101B E9DE690000 jmp 004079FE А если найти в бинарнике то не понимаю где искать :00401DC3 FF1514304000 call dword[00403014 ->0000339A IsDebuggerPresent] здесь 00401DC3 я так понимаю от Entry Point надо высчитывать, а где его искать непонятно пока только додумался думать что весь бинарный файл загружается в память таким каким его сделали ,) а с какого и по какое место непонятно вторую цифру E9DE690000 совсем не понял для чего Мегахакерские плагины наверное для мегахакерских дебагеров только бывают ,) я пока только IDA немного опробывал
Ну-ну, тяжелую артиллерию попробовал, а мегахакерский ручной пулемет с нежным названием Оля (OllyDbg) еще нет ?! В Оле можно перебить любой участок кода в окне дизассемблера и затем сохранить изменения в EXE, т.е. ничего искать в файле и тем более "перекомпилировать" не нужно
Помоему ТС не имеет понятия о РЕ структуре, адресном пространстве процесса, ассемблере и многом другом. Советую почитать статьи "В последний раз об упаковщиках" и про РЕ формат
Всем спасибо , но дело было совсем не в этой функции , просто IDA только ещё изучал. Наверное какраз про PE-формат и хотелось что-то понять, а так оказалось нужно было просто найти в файле эту строку ff 15 14 30 40 00 ушёл пробовать почитать
http://www.wasm.ru/article.php?article=ollydbg22 И где-нибудь в этом районе: http://www.wasm.ru/article.php?article=ollydbg21 http://www.wasm.ru/article.php?article=ollydbg23 http://www.wasm.ru/article.php?article=ollydbg24 И т.д.