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

 eXeL@B —› Основной форум —› Использование IDA Pro
<< 1 ... 18 . 19 . 20 . 21 . 22 . 23 . 24 . 25 . 26 . 27 . 28 ... 50 . 51 . >>
Посл.ответ Сообщение

Ранг: 271.5 (наставник), 12thx
Активность: 0.150
Статус: Участник
Packer Reseacher

Создано: 08 августа 2008 18:53
· Личное сообщение · #1

Здесь предлагаю обмениваться опытом использования, настройки этой тулзы.

Сегодня в Options->Color настроил основное окно дизассемблера все в старом классическом стиле Borland ща стало или в стиле Far(для справки первая версия была написана на Borland C++), но когда подносишь курсор на jne\je то в хинте появляется фон бежевый. Вот никак не могу найти место где это настраивается?! Может кто шарит ? )

-----
My love is very cool girl.




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

Создано: 24 июня 2011 16:35
· Личное сообщение · #2

часть аттачей идет лесом - error 404

-----
...или ты работаешь хорошо, или ты работаешь много...





Ранг: 67.4 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 01 июля 2011 14:00
· Личное сообщение · #3

Как в IDA закодить свой процессорный модуль, для разбора пи кода?




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 01 июля 2011 14:10
· Личное сообщение · #4

http://www.openrce.org/articles/full_view/28



Ранг: 112.9 (ветеран), 186thx
Активность: 0.090.01
Статус: Участник

Создано: 05 июля 2011 15:30 · Поправил: vden
· Личное сообщение · #5

подскажите какой функцией из sdk, можно задать для функции прототип? т.е. то что в gui делается клавишей Y




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 05 июля 2011 15:52
· Личное сообщение · #6

vden
set_named_type

| Сообщение посчитали полезным: vden

Ранг: 9.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 06 июля 2011 04:20 · Поправил: VoLT
· Личное сообщение · #7

BSTR первые 4 байта длина остальное строка в юникоде ... бывает IDA распознаёт кусок строки, бывает всю за исключением первых 4 байт... как с этим боротся и что делать
Code:
  1. db  18h
  2. db    0
  3. db    0
  4. db    0
  5. db  53h ; S ; DATA XREF: sub_DEADBEEF
  6. db    0
  7. db  74h ; t
  8. db    0
  9. db  61h ; a
  10. db    0
  11. db  74h ; t
  12. db    0
  13. db  75h ; u
  14. db    0
  15. db  73h ; s
  16. db    0
  17. db  50h ; P
  18. db    0
  19. db  6Ch ; l
  20. db    0
  21. db  61h ; a
  22. db    0
  23. db  79h ; y
  24. db    0
  25. db  65h ; e
  26. db    0
  27. db  72h ; r
  28. db    0





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 06 июля 2011 05:23
· Личное сообщение · #8

VoLT
в ручную устанавливайте



Ранг: 9.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 06 июля 2011 12:07
· Личное сообщение · #9

В ольке всё распознаётся но вот в иде ... в ручную жесть этого я и боялся ... что ж спасибо за ответ



Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 08 июля 2011 01:48
· Личное сообщение · #10

Есть какой-нибудь мануал по дебагу х64 в иде?
Пытаюсь через ms dbg tools использовать - упорно не видит сервер. Ни через tcp, ни через pipe.
Кстати WinDbg клиент тоже не видит. Хотя сервер запущен. Файр отключен.

-----
старый пень




Ранг: 10.0 (новичок), 4thx
Активность: 0.010
Статус: Участник

Создано: 08 июля 2011 08:12
· Личное сообщение · #11

VoLT пишет:
В ольке всё распознаётся но вот в иде ... в ручную жесть этого я и боялся ... что ж спасибо за ответ


А чего бояться? Выделил блок данных, нажал пимпочку преобразования данных в юникод и будет тебе счастье. Если имеется некоторая регулярность в данных, которую можно использовать программно, то пиши соответствующие скрипты или плагины.




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

Создано: 08 июля 2011 09:13
· Личное сообщение · #12

Erfaren пишет:
Выделил блок данных, нажал пимпочку преобразования данных в юникод и будет тебе счастье.

Для простоты и выделять ничего не нужно, просто на начале строки говоришь, что это юникод - всё остальное ида делает сама.

-----
Everything is relative...


| Сообщение посчитали полезным: VoLT

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

Создано: 08 июля 2011 13:10
· Личное сообщение · #13

VoLT В разделе Options есть Ascii string type. Ищи там свой и ставь галку. Когда много строк такого типа по идее должно сработать на автомате.



Ранг: 9.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 10 июля 2011 00:37 · Поправил: VoLT
· Личное сообщение · #14

tundra37 по идее но вот на деле как раз таки и нет ...
Vamit, вот же спасибо ... дело пошло быстрее ...



Ранг: 1.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 11 июля 2011 23:02
· Личное сообщение · #15

Всем привет. Из вопросов новичков меня сюда послали.

Возможно вопрос банальный, но гугл мне ответа не дал.
Имеется ида 5,5 добытая на просторах этого форума.
Имеется программа которая использует в перемешку строки Unicode и GBK (Китайский язык).
Хочется заставить иду использовать в отображении листинга китайские иероглифы и более менее автоматически китайские строки определять. А то неприятно выходит. Если строка начинается с латиницы - её обрубает на половине. А большинство строк вообще не опознаёт и приходится кракозябры выделять руками и делать строку.

Из гугла понял что кодировка каким то непонятным образом хранится в ida.cfg. Но внятного описания как она там хранится и что менять - я не нашёл.

Возможно ли такое сделать, если да - куда копать.



Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 12 июля 2011 19:42
· Личное сообщение · #16

Закиньте кто-нибудь .def файлы для mfc 10 аттачем.
В 9.0 они здесь
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\src\mfc"
подкаталоги intel и amd64

-----
старый пень





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 17 июля 2011 23:02 · Поправил: reversecode
· Личное сообщение · #17

1. кто может скомпилировать этот плагин http://hexblog.com/ida_pro/pix/fcg_v1.zip
с отладочной инфой в двух вариантах релиз и дебаг и с pdb файлами
желательно собрать под vs2010, ну или восьмой


2. поделитесь каталогом include/ от vs2010 , где есть std:: всякие map,deque и прочее



Ранг: 73.7 (постоянный), 22thx
Активность: 0.040
Статус: Участник

Создано: 17 июля 2011 23:28 · Поправил: XQuader
· Личное сообщение · #18

По первому пункту брать здесь
По второму пункту брать здесь

| Сообщение посчитали полезным: reversecode


Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 20 июля 2011 18:22 · Поправил: reversecode
· Личное сообщение · #19

reversecode пишет:
может кому то в давние времена удалось поиметь скриптик oop_re.py из bh-dc-07-Sabanal_Yason.pdf

когда то спрашивал, теперь сам себе отвечаю
https://github.com/zynamics/rtti-helper-scripts
http://blog.zynamics.com/2011/01/21/recovering-uml-diagrams-from-binaries-using-rtti-inheritance-as-poset/



Ранг: 112.9 (ветеран), 186thx
Активность: 0.090.01
Статус: Участник

Создано: 29 июля 2011 16:59 · Поправил: vden
· Личное сообщение · #20

как можно в hex-rays задать прототип выдающий 2 результата: cf и dx

сейчас вот так. куда приткнуть dx?
char __usercall sub_405FBC<cf>(char *buf<edi>)

думал как-то так,
char __usercall sub_405FBC<cf>(char *buf<edi>, out __int16<dx>)
но это не работает

UPD. cf - carry flag


это инлайн суб-функция (их там несколько таких) довольно большая, вызывается через call
компилер вроде msvc,
думаю придётся на это забить)




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 29 июля 2011 17:10 · Поправил: reversecode
· Личное сообщение · #21

cf dx? такое разве возможно?
может cx ?
пара задается так
__int64 __usercall sub_10000<eax:edx>()

процедура большая?
если сишная то такого быть не может
пары регистров которые указываются в результате обьеденяются в большое число
сразу два значение никакая функция вернуть не сможет
ну разве что по ссылке через аргументы типа (int &, int &)
но вы говорите что для dx это почему то не сработало

inline через call не вызывается
ну кинте если не секретно и не много - сам файлик, глянуть ради интереса



Ранг: 6.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 02 августа 2011 21:39
· Личное сообщение · #22

Добрый день!
Тут я попросил помощи в декомпиляции игры Ecstatica 2. При этом пытаюсь разобраться в коде сам. Естественно, что после загрузки проекта IDA дала большинству функций имена вида sub_45DF96, так как настоящих имен вроде как не сохранилось.
Exe откомпилирован на watcom'e, я подгрузил этот exe-шник в open watcom debugger, выбрал пункт code/Functions и получил истинные названия функций, которые им дал разработчик. Там же узнал все имена глобальных переменных.
Как в IDA сделать так, чтобы она увидела эти названия при анализе? И заменила автоматически безликое sub_45DF96 на совершенно корректное UnpackBitmap_




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 02 августа 2011 21:44 · Поправил: reversecode
· Личное сообщение · #23

вы уверены что ватком дебугер показал вам истенное название функций игры? а не функций импорта

выложите игруху на rghost



Ранг: 6.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 02 августа 2011 22:15
· Личное сообщение · #24

Совершенно уверен, что ватком дебуггер показал истинное название функций игры. С частью функций я разобрался еще до него и дал им имена LoadRaw, LoadAntialisingMap, дебуггер тем же функциям выдал имена LoadRaw_ и LoadAntialias_. Совпадения тут быть не может, понимаю, что мне с именами функций несказанно повезло.
Ссылка на демо игры на rghost.
В архиве
2. Файл e2vista.exe - он спокойно запускается в win7 в отличии от древнего e2win95.exe, поэтому я его и изучаю.
3. Демо версия игры, там многие ресурсы не упакованы в контейнер ecstatic.fan.

Iso-образ диска игры можно найти здесь.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 02 августа 2011 23:30 · Поправил: reversecode
· Личное сообщение · #25

ida не поддерживает такой формат дебага
или ищите можно ли средствами ваткома сдампить эти функции например в map файл
и потом уже в ida применить этот map
либо тяните исходники ваткома и пишите дополнительный плагин для IDA который будет понимать этот формат



Ранг: 67.4 (постоянный), 6thx
Активность: 0.050
Статус: Участник

Создано: 02 августа 2011 23:37
· Личное сообщение · #26

Вопрос: как в IDA найти все строки, которые я комментировал?
Во время разбора функции, некоторым командам процессора я дал комментарий (; - по-моему называется repeatable comments). Самой функции я имя не давал, возможно ли вывести в отдельном окне (как это легко делается в Оле) список строк с добавленным комментом, а то я забыл где я комментировал и не могу найти нужную функцию.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 02 августа 2011 23:44 · Поправил: reversecode
· Личное сообщение · #27

то что я знаю это нужно прыгать на начало файла,
нажимаешь Alt+T и вводишь начало комментария ; ну итд

начало любого комментария начинается ТОЧКОЙ С ЗАПЯТОЙ
к томуже изучите внимательно меню Alt+T
вас никто не заставлял вносить не нужные комментарии, делайте в следующий раз бекап базы по заведомо правильным действиям с нею



Ранг: 67.4 (постоянный), 6thx
Активность: 0.050
Статус: Участник

Создано: 03 августа 2011 00:01
· Личное сообщение · #28

То есть для поиска коммента я должен помнить сам коммент? Печально.
Кстати, коммент на русском она не находит ни в какую.



Ранг: 6.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 03 августа 2011 05:14
· Личное сообщение · #29

reversecode
Понял, формирую map-файл




Ранг: 251.8 (наставник), 17thx
Активность: 0.120
Статус: Участник
Seeker

Создано: 03 августа 2011 12:23
· Личное сообщение · #30

Kiev78 пишет:
Вопрос: как в IDA найти все строки, которые я комментировал?



5bf1_03.08.2011_EXELAB.rU.tgz - COMMENT VIEWER - 0.2.ZIP

-----
DREAMS CALL US




Ранг: 6.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 07 августа 2011 19:37 · Поправил: terar
· Личное сообщение · #31

Добрый день!

Перечитываю этот форум, так как столкнулся с такой же проблемой, как приведена здесь:
--> Link <--.

У меня следующий код:
Code:
  1. BEGTEXT:0041007C   Setup_          proc near               ; CODE XREF: _WinMain+1Ep
  2. BEGTEXT:0041007C
  3. BEGTEXT:0041007C   var_1D4         = byte ptr -1D4h
  4. BEGTEXT:0041007C   var_16C         = byte ptr -16Ch
  5. BEGTEXT:0041007C   var_104         = byte ptr -104h
  6. BEGTEXT:0041007C   var_9C          = byte ptr -9Ch
  7. BEGTEXT:0041007C   var_68          = byte ptr -68h
  8. BEGTEXT:0041007C   var_5C          = byte ptr -5Ch
  9. BEGTEXT:0041007C   var_5B          = byte ptr -5Bh
  10. BEGTEXT:0041007C   var_5A          = byte ptr -5Ah
  11. BEGTEXT:0041007C   var_59          = byte ptr -59h
  12. BEGTEXT:0041007C   var_58          = byte ptr -58h
  13. BEGTEXT:0041007C   var_57          = byte ptr -57h
  14. BEGTEXT:0041007C   var_56          = byte ptr -56h
  15. BEGTEXT:0041007C   var_55          = byte ptr -55h
  16. BEGTEXT:0041007C   var_54          = byte ptr -54h
  17. BEGTEXT:0041007C   var_53          = byte ptr -53h
  18. BEGTEXT:0041007C   var_52          = byte ptr -52h
  19. BEGTEXT:0041007C   var_48          = byte ptr -48h
  20. BEGTEXT:0041007C   FileName        = byte ptr -28h
  21. BEGTEXT:0041007C
  22. BEGTEXT:0041007C   ; FUNCTION CHUNK AT BEGTEXT:00410281 SIZE 00000786 BYTES
  23. BEGTEXT:0041007C
  24. BEGTEXT:0041007C                   push    ebx
  25. BEGTEXT:0041007D                   push    ecx
  26. BEGTEXT:0041007E                   push    edx
  27. BEGTEXT:0041007F                   push    esi
  28. BEGTEXT:00410080                   push    edi
  29. BEGTEXT:00410081                   push    ebp
  30. BEGTEXT:00410082                   sub     esp, 1BCh
  31. BEGTEXT:00410088                   xor     edx, edx
  32. BEGTEXT:0041008A                   mov     ds:_NetOption, edx
  33. BEGTEXT:00410090                   mov     ds:_DemoOption, edx
  34. BEGTEXT:00410096                   mov     ds:_SetupOption, edx
  35. BEGTEXT:0041009C                   mov     ds:_InstallOption, edx
  36. BEGTEXT:004100A2                   call    FreeAllHeaps_
  37. BEGTEXT:004100A7                   call    InitialiseParts_
  38. BEGTEXT:004100AC                   call    Init_
  39. BEGTEXT:004100B1   ; ---------------------------------------------------------------------------
  40. BEGTEXT:004100B1                   mov     edx, offset aAndrew ; "andrew"
  41. BEGTEXT:004100B6                   mov     eax, offset _UserName
  42. BEGTEXT:004100BB                   call    stricmp_
  43. BEGTEXT:004100C0                   test    eax, eax
  44. BEGTEXT:004100C2                   jnz     short loc_4100C9
  45. BEGTEXT:004100C4                   call    LoadMotionFile_
  46. ...

Hex-Rays доходит до "; ---------------------------------------------------------------------------" и останавливается, результат его работы:
void __cdecl Setup_()
{
NetOption = 0;
DemoOption = 0;
SetupOption = 0;
InstallOption = 0;
FreeAllHeaps_();
InitialiseParts_();
Init_();
}

И в Graph View также эти куски кода представлены отдельными Node'ами.

Как сделать так, чтобы Hex-rays обрабатывал код дальше?


<< 1 ... 18 . 19 . 20 . 21 . 22 . 23 . 24 . 25 . 26 . 27 . 28 ... 50 . 51 . >>
 eXeL@B —› Основной форум —› Использование IDA Pro
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати