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

 eXeL@B —› Софт, инструменты —› IDA 5.5 HexRays - Вызов метода по смещению vtable.
Посл.ответ Сообщение

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

Создано: 04 марта 2011 17:45
· Личное сообщение · #1

Всем привет!
Подскажите пожалуйста, можно ли в HexRays'е превратить такой код:
Code:
  1. faction = (*(*this + 0x1A0))(this);

В
Code:
  1. faction = this->Method();

Если нужна структура vtable объекта - не вопрос, сделаем.

Наготове есть конструкция посложнее, если с этой окажется все просто.




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

Создано: 04 марта 2011 19:05
· Личное сообщение · #2

можно
давайте конструкции по сложнее



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

Создано: 04 марта 2011 23:02
· Личное сообщение · #3

Ну ненамного посложнее конечно. Вы поясните принцип.
Объект в объекте:
Code:
  1. *(*(a1 + 4) + 4)

Хочется
Code:
  1. a1->fieldA->fieldB


Или вот такую штучку:
Code:
  1. return (*(**(world + 0xAE8) + 0x84))(*(world + 0xAE8), world, msg);

->
Code:
  1. return world->objA->methodA(world->objA, world, msg);





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

Создано: 04 марта 2011 23:07
· Личное сообщение · #4

это все можно, работает

в чем собственно вопрос? вы хотите определиться с тем качать или не качать шаровый 5.5 IDA и hexrays?



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

Создано: 04 марта 2011 23:11
· Личное сообщение · #5

Аа... А я то думаю, чего тему то перенесли в софт..
У меня все есть. Я спрашивал, КАК это сделать, что писать в Y. =)




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

Создано: 04 марта 2011 23:14
· Личное сообщение · #6

вообще уже такая тема есть,
назвается - как пользоватся IDA
поищите, там уже такое обсуждалось.

еще раз по теме
создаете структуры
в структурах если это указатель размерностью dd, Y устанавливаете имя структуры *
и все
дальше хексрекс все разбрет



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

Создано: 14 марта 2011 15:25
· Личное сообщение · #7

хм... может это не скромный вопрос (и его наверно сразу удалят, но я рискну). А почему бы не скинуться определённому количеству людей и не купить последнюю версию ИДЫ (впару с хекс-рэй) и вскрыть её ? Естественно тем, кому она нужна.



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

Создано: 14 марта 2011 15:31
· Личное сообщение · #8

minigo
Сразу пару вопросов:
1. Есть на примете юрлицо, готовое подставиться?
2. А оно надо 4.5куе выкидывать ради непонятно чего?

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




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

Создано: 14 марта 2011 15:37 · Поправил: minigo
· Личное сообщение · #9

r_e

Юрлицо найду. А вот по поводу второго - каждый решит за себя. Хотя наверно вы правы.

ещё не в тему конечно, но я смотрю вы r_e ветеран форму, может тогда подскажите как создавать собственные типы в ИДА ?

Да туплю, сори. Но может всё таки кто-нибудь подскажет где почитать поподробней про Вызов метода по смещению vtable




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

Создано: 14 марта 2011 15:49
· Личное сообщение · #10

minigo
http://exelab.ru/f/action=vthread&forum=3&topic=17843.html#
http://exelab.ru/f/action=vthread&forum=1&topic=12507

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


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