Как разобрать последние несколько инструкций родного API в Windbg? - PullRequest
0 голосов
/ 30 декабря 2011

Я хочу разобрать последние несколько инструкций Native API в Windbg.Как мне это сделать?

Например, я нахожусь в режиме ядра в Windbg и хочу разобрать последние несколько инструкций API KiSystemService, как мне это сделать?

Также, если есть способ просмотреть размер API, можно было бы просмотреть последнюю инструкцию.

u nt! KiSystemService

Дает мне около 10 строк кода на ассемблере.

u nt! KiSystemService L100

Это покажет мне больше кода процедуры отправки службы системы.Но моя цель - просмотреть несколько последних инструкций.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 20 мая 2014

на x86 .fnent покажет размер функции / нет параметра, который требуется / нет локальных размер пролога и смещение начала функции если нет функции does not have chunks из-за оптимизации) Вы можете просто начать разборку с (начало смещения + размер - X)

lkd> .fnent nt! NtCreateProcessEx Запись функции отладчика 00ca5b70 для: (805c73ea) nt! NtCreateProcessEx | (805c7476) nt! PsCreateSystemProcess Точные совпадения: nt! NtCreateProcessEx =

OffStart: 000f03ea ProcSize: 0x86 Пролог: 0xc Параметры: 0n9 (0x24 байта) Локальные: 0n7 (0x1c байт) Non-ФПО

на x64 FPO_DATA is not available instead IMAGE_FUNCTIOn_ENTRY будет возвращено .fnent вам, возможно, придется взглянуть на информацию UnWind, чтобы получить подробную информацию

0 голосов
/ 30 декабря 2011

uf nt! KiSystemService

попытается разобрать только функцию.

...