При написании декодера инструкций для проверки я пользвался hiew 6.86. Так даже в этой версии у него декодер работает не так как надо. Бльшинство глюков уже не вспомню, но вот например, тока вчера нашел следующий. Если переключить хью в режим 16-дизасма в pe-faile , то каллы ((импорт функи) декодирет неправильно. В следующий раз напишу все найденные, пока.
Та к чего он должен тебе правельно показывать call из 32-битного кода правельно, коли ты включаешь режим 16 бит?
/offtop мне конечно не интересно, но можно глянуть сорс твоего декодера? может чего дельного посоветую или своим поделюсь
немного приглажу и выброшу, есть некоторые глюканы. Еще плюшкка. В иде 4.7 lfence или sfence декодируется как instr eax. Етто вроде неверно, таак? Инструкция верна тока при codr = 0.
Это я про опкод 0ffh ( call [near func] ). например, call [dword MessageBoxA ] = 0ffh + ModRM переключамся в 16-бит и хью декдирет МодРМ как в 32битном режиме. а не превращает например в call [ di], call [bp] call [bx+si] и т.п.
Smile Пиши на мыло, вышлю декодер. А публиковать большого смысла не вижу, глюки не устранены. Мыло : limon-5#yandex.ru