блин думал поймут а не понели. дайте угадаю - вы видимо подумали, что я просто взял 22 года и прибавил к ним 17 (с 1993), получил 40 ? вы неправы. fe23 - имхо говори(т/л) о возрасте автора на момент создания проэкта.
Roohrick Как можно одному прогу писать 3 года? Очень сомнительно, что у тебя что-то есть. Если было-б что показать тогда и сайт сделал-бы заранее, хотя-бы и на народе. Или ты боялся что создание сайта займёт ещё 3 года? Не хочешь помощи тогда должен быть материал для обсуждения (программы, исходники).
Roohrick а вот еще в сорцах ов заметилась папочка "ndisasm". список сей из нее disaxp.c disbuild.c disentry.c disjvm.c dismips.c disppc.c dissparc.c disx64.c disx86.c и хотя там не простейшие таблицы, но код все равно достаточно прост и понятен. демки приложены и успешно дизасмят есть там и другое относящееся к дизасмам/дебугерам. папочка "mad", например. в целом и общем было бы разумнее всего добавить нужных вам возможностей в уже существующий опенсорсный дизасм/дебуг/хекс вьюер http://hte.sourceforge.net ,там. или, возможно, обратитесь к авторам хиева/биева. тем более, что они тут появляются
Господа Вижу, что уже получается нехорошо с моей стороны. И что я скверно поступаю. Заинтриговал людей, наобещал и ничего пока не показываю. Однако, все же я продолжу пахать ту борозду, в которой сейчас завяз. Продолжу доделывать текст для сайта. Полагаю, что это будет наиболее верный путь. Увы, продвигается медленно. Сегодня просидел пять часов с одной страницей, а сделал только один маленький раздельчик. Но зато я уже знаю, что на этой странице должно быть. Сейчас буду продолжать. Я часто на ночные сидения сваливаюсь. И сейчас тоже нахожусь в таком режиме. -------- qqwe Я просто не в состоянии быстро просмотреть и переварить такое море информации. Вот выложу сначала то недоделанное, что есть на сегодня. Что я назвал "версия 1.0". А потом уж буду решать, как и куда дальше двигаться. И тогда расскажу, какая у меня сейчас ситуация с блоком дизассемблера в этой моей большой программе.
IceCrashLdr неа. в НТЕ я пока не смотрел сорцы. возможно, и не посмотрю. во всяком, пока заметил, что они есть и что они плохо организованы. но выбор есть. например, в ов к дизасму прилагается дебугер с графическим и консольным интерфом. и сорцы там неплохие. выбор есть, однако. править написаное проще, чем писать с 0. я б делал так - сделал бы 1 интерфейс к дизасму и в случае, если найду лучше или потребуется сменить двиг, чтоб это было меньшей кровью. и вперед. в целом и общем сам дизасм в озвученой идее топика не самое важное. просто использование того же нте или хью (если сен примет вас) позволит добавить ваш функционал в уже раскрученный продукт и не тратиться на споры.
Наконец-то снова могу выйти в интернет. Три дня бился, не мог наладить. Этой ночью сдался. Прежде, чем ложиться спать, решил позвонить в тех поддержку... Это было уже в (05:45), время московское. У меня теперь все новое. Новая клавиатура, на которой я не попадаю на нужные клавиши. Notepad, вместо привычного хорошего редактора. Современный ноутбук, к которому я еще толком не привык, Это вместо прежнего железа (уровень 1999 года). Но этот новый ноутбук еще совершенно голый. Новая Windows-7, в которой не нахожу многих прежних привычных удобств Windows-2000. Но все же жизнь понемногу налаживается (несмотря на такую жару) ... Подробности расскажу позже. Наверное, это будет лучше сделать на своем сайте, а не здесь, на форуме. На форуме скажу только основное. (1) Минимум для своего сайта я уже сделал (это было 11.07.2010). Но некоторые страницы останутся пока недоделанными. (2) Но на следующий день не смог запустить свой компьютер. Разборки с компьютером показали, что частично скончался один из двух жестких дисков. На нем есть не все файлы. (3) Все мои наработки вроде бы остались целы. Во-первых, они есть на обоих жестких дисках - это я каждый день копировал перед выключением компьютера. Но пока не знаю, как и когда смогу теперь до них добраться. Во-вторых, каждый день копировал еще и на флешку. Файлы с этой флешки в ноутбуке видны.
Сайт приготовлен http://looch-disasm.narod.ru/ Программу можно скачать с сайта Код (Text): FE23 Looch Disasm Версия: 1.0 Сборка: 05.07.2010 Файл программы fe23_10.exe Размер файла 177152 На сайте есть достаточно страниц, чтобы можно было предварительно судить о самой программе. Для работы с программой очень желательно сначала просмотреть хотя бы страницу "Основные понятия". http://looch-disasm.narod.ru/disa25.htm
офигеть сколько текста. лучше б пару туторов в стиле комиксов. те много скринов и мало буков. и эти.. слова красивые типа "луч". долой их. и без них башка квадратная. смысл в том, что типичный юзер подобного софта предпочитает не читать инструкций без крайней необходимости, а угадывать по аналогии. те больше визуальности (> интуитивного оформления и < в 10 раз буков). и где ваше описание скрипт енжина?
поковырял чуть побольше. интерфейс не годится целиком и полностью. вы его пока в человеческий вид не приведете - по русски все обзывайте. и таки без всех этих двусмысленностей "луч", "кластер" итд. эти слова настолько перегружены, что скоро поломаются. а так в целом чтото конечно есть. но грести еще и грести. даж не знаю что сказать, чтоб вы не обиделись, что не вы придумали.. во всяком случае дизасм в виде терминального скролла + лазенье за всем в меню - отсутствие скриптов это не годится совершенно. комменты лучше не внедрять в тот же листинг, тем же шрифтом и цветом, что и дизасм, а хоть выносить в отдельную сворачиваемую колонку или в тултипы или еще как. кстати, а в чем у вас там интерактивность, я не совсем догнал?
Да интерактивность это вам не в тапочки ссать. Надо чтобы файл грузился по частям и при этом параллельно и чтоб гуй обновлялся а не подвисал при загрузке больших файлов. Тем самым будет виден процесс анализа. Чтоб подкачка работала и отображался только тот регион который нужен - тем самым память не будет сильно расходоваться. Еще советую прикрутить проектную систему. Чтоб можно было сохранять все манипуляции и потом давать другому человеку, чтоб он помог (дореверсил). Так же нужна (обязательно) история (что делалось, попорядку, чтоб виден был каждый шаг). Еще много чего могу посоветовать. Если вы все это реализуете - вы будете уже сильным конкурентом на рынке этого ПО. Да и пожалуйсто, в описании больше графики, а то кажется что описание делал старый пердун (не в обиду). А так молодец. Продолжайте.
Теперь нужно что-то отвечать, и чтобы это было по делу ... А ведь я даже не все понял из того, что мне здесь сказали ... Для начала выберу те места, которые мне наиболее понятны. Без этого "красивого слова" никак нельзя, не получится. Ведь основное отличие FE23 от других дизассемблеров как раз в том и состоит, что дизасм выполняется по лучам. А термин в общем-то хороший и удобный. И к тому же русский. Только совсем забытый термин. Когда программист пишет программу на языке высокого уровня, то конечно он логику не из лучей строит. А вот если программа на ассемблере, то понятие "ЛУЧ" (Линейный УЧасток) может быть весьма продуктивным. Не говоря уже про процесс обратный программированию - про исследование программ. Здесь концепция лучей как раз кстати. И как бы без лучей можно было бы построить графическую схему - схему переходов (передач управления) между лучами. А вот "кластер" - как группа процедур - это мне и самому не нравится. И с самой идеей тут не все в порядке. Сейчас в программе FE23 для того, чтобы получить асм. текст для нужной процедуры, обязательно требуется создавать этот самый кластер - группу из одной процедуры. И это плохо. Но как быть, если программа FE23, постепенно вырастая, превратилась в нечто непохожее на другие аналогии. Хотя быть может я преувеличиваю. Ведь я так и не удосужился посмотреть на другие похожие программы (кроме OllyDbg). Читать инструкции я тоже не очень люблю, предпочитаю сам догадываться ... ... Однако, вот сегодня целый день читал инструкции по Windows-7, не могу в этой новой для меня операционке преодолеть некоторые проблемы ... Как я понимаю, речь идет о дизассемблере в программе FE23. Нету у меня здесь ни скрипта, ни движка. Но Вы, пожалуй, правы. Нужно поместить на сайт такой рассказ - "История дизассемблера программы Fe23". Что-то похожее на интерфейс есть пока только в окне "Обзорный экран". Да и то в зачаточном состоянии. А все остальные результаты выводятся на экран в виде текстовых распечаток. Где используется стандартный для Windows класс окон "RichEdit". Мне было бы грешно говорить, что это сделанный мною интерфейс. Ну, значит, недостаточно я понятно в инструкции написал. Не нужно вообще печатать асм. текст во время "первого прохода дизасма". Смотрите чуть ниже. Тот кусочек (так вышло) я раньше написал. и не буду еще раз то же самое копировать. Сейчас интерактивность проявляется только на первом этапе работы, когда выполняется "первый проход дизасма". Как правило программа FE23 не сможет сама, без участия пользователя, выполнить "первый проход дизасма". Не сможет в автоматическом режиме найти все лучи и процедуры. Подробнее написано здесь http://looch-disasm.narod.ru/disa25.htm Раздел - "Почему дизассемблер интерактивный". По-видимому ВЫ здесь говорите о первом этапе работы, когда в программе FE23 выполняется так называемый "первый проход дизасма". На этом этапе нужно пройти все исполняемые коды, какие только удастся пройти. На этом этапе будет лучше вообще не выводить асм. текст. Если, конечно, пользователь уже убедился, что исполняемые коды не упакованы и не зашифрованы. А вот на следующем этапе - при дизасме по готовым лучам - тут в программе FE23 можно получить асм. текст не по приблизительному "региону который нужен", а для конкретных процедур, указанных пользователем.
Roohrick Теперь видно, что уже чего-то делаешь. Но о конкуренции с Идой, говорить не приходиться. Если у тебя новый ноутбук с Win64 можешь посмотреть на мою недавнюю работу и сравнить Сайта я не делал у меня все в справке dsmhelp.chm. http://www.wasm.ru/forum/attachment.php?item=4008. Вообще думаю что "Интерактивный диззассемблер" это слишком высоко поставленная планка. Здесь тебе нужно либо какие-нибудь более решительные действия предпринимать, либо планку приспустить, например до DebugApi отладчика, и сделать его уже на все 100%, (с понятной справкой и удобным интерфейсом).