CE disassembler
-
<div class="iframely-embed"><div class="iframely-responsive" style="padding-bottom: 50%; padding-top: 120px;"><a href="https://github.com/celuaru/ce_disassembler" data-iframely-url="//iframely.net/api/iframe?align=left&url=https%3A%2F%2Fgithub.com%2Fceluaru%2Fce_disassembler&key=ae3f7efe69fd7659776282ad948bd52b"></a></div></div><script async src="//iframely.net/embed.js" charset="utf-8"></script>

Кратко
-
Добавил сохранение/загрузку параметров. Хранение в текстовом файле в папке autoruns
-
Добавил настройки графического интерфейса (слайдеры, пункт меню)
-
Обновления UI
- Гладкая перерисовка, двойной буфер
- Стрелки прыжков сдвигаются вправо при увеличении их количества
- Слайдер яркости фона
- Слайдер количества адресов в невидимой области от 0 до +1К от верхнего и нижнего адресов. Увеличивает количество стрелок для прыжков.
- Стрелки в невидимой области обозначаются двумя цветами.
Один цвет для тех стрелок, у которых адрес прыжка и адрес назначения не выходят в область видимости.
Второй цвет для тех стрелок, которых адрес прыжка или адрес назначения входят в области видимости.
Видимые стрелки обозначаются белым.
На рисуемые стрелки прыжков влияет слайдер яркости. - Не показывать стрелки прыжков для инструкций типа 'jmp ', 'jne [...]'...
-
Сохранение и загрузка при заходе и выходе из CE
- значения слайдеров
- верхнего адреса
- выбранного адреса
- параметры шрифтов и других
С цветами экспериментировал не понравилось, пока оставляю градацию "черный-белый".
Основное назначение его показывать приоритетные инструкции более ярким цветом. Инструкции такие как арифметические и логические. Это первый и второй слайдеры. Третий - инструкции на запись, чтение. Четвертый - инструкции ветвления. Пятый слайдер - остальные инструкции. Остальные слайдеры связаны с настройками. Основные из них размер шрифта, яркость фона, вертикальный отступ между инструкциями и другие.
Также в плагин встроена поддержка работы с окнами трейслогов.

Происходит постоянный поиск новых и отсутствующих окон трейслогов... Делаем трейслоги. Двойной клик по адресам и переходим по адресу в дизассемблер (если он открыт) и видим в нем раскрашенные пути маркерами. Если окон много, то видим пересечения, расхождения путей и видим инструкции, которые не выполнялись...Встроено контекстное меню установки брейкпоинтов на call-ы в трейслоге. Если его вызывать, то после идем в игру и, не делая того, что исследуем, прерываемся на брейкпоинтах и снимаем их. Когда больше не прерываемся, то делаем в игре то, что нужно и прерываемся на оставшемся брейкпоинте. На нем исследуем условие входа в рутину. Тут как бы можно на страх и риск изменить условие, чтобы ветка кода повторила свое выполнение. Если позволяет, то выполнить поток вызвав call... Но я придерживаюсь варианта изменения данных для того чтобы поток сам повторил рутину. Либо подменить параметры функции или подменить параметры после выхода функции. На данный момент показать что-то на практике нечего. Как будет, сделаю и покажу видео.
Встроена поддержка маркирования путей на выбранном участке кода. Это специальное окно в меню "утилитах" в окне дизассемблера его можно найти. Указывается верхний адрес и нижний адрес области кода. Например, функции. При старте начинается логирование уникальных прохождения от начального до конечного адреса и раскраска маркерами. Возможных таких путей 8. Т.е. делая что-то в игре (разовые действия) видим уникальную ветвь, она тут же появляется и на этой ветви можно прерваться поставив опцию, и оттрейсить выход из рутины...
Более подробное описание и скриншоты в закрытом разделе в моем старом блоге. Имеют к нему доступ пользователи со статусом "Разработчики". Новую информацию я буду писать в этой теме.
Плагин сейчас на стадии чернового варианта, кто хочет пробуйте. Установка с репозитория. Чтобы подключить нужно загрузить .CT таблицу. Знаю что не удобно, но пока так.
Плагин планируется развивать дальше, сейчас это черновой вариант
-
Здравствуйте! Похоже, вам интересна эта беседа, но у вас пока нет учетной записи.
Вы устали просматривать одни и те же посты каждый раз, когда заходите на сайт? После регистрации, вам не придётся искать обсуждения в которых вы принимали участие, настройте уведомления о новых сообщениях так как вам это удобно (по электронной почте или уведомлением). У вас появится возможность сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост может стать ещё лучше 💗
Зарегистрироваться Войти