Поделиться через


Пространство имен кода

Внимание

Этот интерфейс находится в активной разработке и изменится.

Итоги

Пространство имен кода содержит атрибуты кода и дизассембли. Он позволяет создавать объекты Disassembler, которые могут дизассемблировать заданные адреса или функции и предоставлять подробные сведения о сборке и любой переменной или исходной информации при наличии.

Пример

Полный пример использования этого пространства имен и объектов см. в примере CodeFlow на GitHub.

Методы объектов

Имя. Тип возвращаемых данных Подпись Description
CreateDisassembler Дизассемблер CreateDisassembler([архитектура]) Создает объект disassembler указанной архитектуры. Архитектура может быть одной из arm, ARM64, X64 или X86. Если архитектура не указана, предполагается, что используется X64.
TraceDataFlow коллекция инструкций TraceDataFlow([адрес]) Просматривает инструкцию по указанному адресу (или текущему указателю инструкции, если адрес не указан) и все его исходные операнды. Этот метод проходит обратно через поток управления функции, ищет любую инструкцию, которая повлияла на исходные операнды трассировки инструкции. Этот метод требует загрузки расширения CodeFlow, найденного в примере CodeFlow.js.

Замечания

По умолчанию CreateDisassembler по умолчанию используется значение X64, в какой-то момент это поведение изменится, чтобы извлечь архитектуру модуля в указателе инструкции текущего потока.