Сейчас на форуме: rmn, exp50848 (+8 невидимых)

 eXeL@B —› Основной форум —› Авто поиск общих вызовов
Посл.ответ Сообщение

Ранг: 122.2 (ветеран)
Активность: 0.040
Статус: Участник

Создано: 24 мая 2012 20:51
· Личное сообщение · #1

Задача: Есть процедуры A и B, которые в своем теле вызывают другие процедуры. Для простоты возьмем один уровень вызовов: A->{C, D, E} (A вызывает C, D, E), B->{C, F, G}. Видно что есть один общий вызов: C. Есть ли какое-нибудь автоматизированное средство, которое способно показыть такие общие вызовы? Может быть какой-нибудь трюк с трейсами? Интересует как статические методы/тулзы так и динамические?



Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 24 мая 2012 21:06
· Личное сообщение · #2

Проще и лучше наверное идти от отбратного, т.е. от С а не от А и В.




Ранг: 158.5 (ветеран), 219thx
Активность: 0.120.01
Статус: Участник

Создано: 24 мая 2012 21:12
· Личное сообщение · #3

ОФФТОП:
А может IDA как-нить доработать, точнее его графическое отображение функций/процедур, чтоб он показывал переходы к функциям/процедурам, а не условные/безусловные переходы?

А по сабжу: к сожалению таких не встречал и даже упоминаний не слышал... Хочу такую же тулзу...

-----
One death is a tragedy, one million is a statistic.





Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 24 мая 2012 21:40
· Личное сообщение · #4

В Ида такое сделать очень просто хоть скриптом, хоть плагином, т.к. пространство адресов проги линейно, то достаточно на каждую функу сделать мап по ссылкам. Насколько полно Ида распознает все вызовы, настолько полная карта вызовов и получится.

-----
Everything is relative...


| Сообщение посчитали полезным: NikolayD, egorovshura, ZaZa

Ранг: 122.2 (ветеран)
Активность: 0.040
Статус: Участник

Создано: 24 мая 2012 22:07
· Личное сообщение · #5

NikolayD

Дело в том, что мне как раз и надо найти эти C. Я их изначально не знаю.

Vamit

Никогда не писал скриптов и плагинов для Иды. Можешь подсказать имена функций на которые нужно посмотреть для этой задачи?




Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 24 мая 2012 23:43
· Личное сообщение · #6

Обрати внимание на пример плагина из IdaSDK61 - callgraph, там практически весь нужный код имеется для построения графа вызовов функций.

-----
Everything is relative...


| Сообщение посчитали полезным: ajax
 eXeL@B —› Основной форум —› Авто поиск общих вызовов
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати