Нужен справочник соответствия ASM команд их машинным кодам. Что-то вроде того , что в приложении книги Питера Абеля "Язык ассембелера для IBM PС программирования" Но лучшек всего утилитку - я слышал такие есть
А ты знаешь, что один опкод может соответствовать нескольким мнемоникам? Что одна мнемоника может кодироваться по-разному в зависимости от операндов?
Знаю, но елки-палки дизассемблер ведь разбирается как-то... Смысл в том, что я хочу модифицировать одну програмку Как делаю - Открываю в IDA exe-шник нахожу нужное место, смотрю HEX-вид, нахожу по hex сигнатуре это место в файле открытом в WinHex и правлю. Так вот правлю-то в мнемокодах и мне нужно соответствие или есть другая технология?
Дизассемблер декодирует код, т.к. структура опкода полиморфична. Только для получения длины инструкции (сколько байт она занимает) пишется не такой уж маленький код, не говоря уже о полном дизассемблировании. Не проще ли использовать HIEW для правки? Или править в IDA, получая diff-файл, на который потом натравить одну из многочисленных патч-утилит.
Дыук я ж начинающий. Hiew не люблю в силу интерфейса Кстати Winhex неломаный, потому нельзя более 200Кб afqks редактировать (( Все-таки хотелось бы утилитку, которой на ASM дал код , а она на лету даст опкод <font color="red]для цитирования тег
Попробуй использовать W32DASM. Там, во время отладки можно патчить в памяти. Нажимаешь патч, пишешь нужную инструкцию, нажимаешь enter и в этом же окне смотришь её опкод. Ещё можно для этих целей FASM использовать. Пишешь use32 если надо,пишешь инструкцию, компилируешь, и смотришь бинарник.
Насколько я понял, основной вопрос не утилитка -"справочник по опкодам", а "модификация одной программки" В таком случае я могу в который раз посоветовать неискущенным массам пользоваться услугами мисс Оли (OllyDbg). И в который раз пояснить, что с ее помощью можно поиметь прогу не только в режиме отладки, но и в чистом пассиве - делаем View\File и работаем правой кнопкой. Хочешь чистый пассив - пожалуйста, но актив (режим отладки) ес-но поприятнее будет. Если брякаться на системном int3, то и отладкой это можно назвать весьма условно - просто дизасм и правка образа, а не файла (Оля сама знает как сохранить изменения файл). При желании можно и как справочником пользоваться - открываешь любую простенькую прогу в пассиве или активе - жмешь Assemble и набираешь чего душе угодно - сохранить измения при выходе ес-но отказываешься - вот и все