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

 eXeL@B —› Основной форум —› Olly vs printf.
Посл.ответ Сообщение

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

Создано: 25 июня 2007 00:13 · Поправил: Jimbo
· Личное сообщение · #1

Вопрос вот в чем:
Есть вполне обычный код на с++:
int func()
{
printf("%s","printf 1\n");
printf("%s","printf 2\n");
printf("%s","printf 3\n");
...

В Olly этот код показывается следующим образом:

Обратите внимание, что на 401736 олли определила, что это идет вызов printf, а вот дальше на 401742 и 40174Е этого не происходит. Вопрос почему?
И соответственно bpx printf срабатываеттолько на первом вызове (401736), а вторые два вызова ловятся только если Toggle breakpoint on import.
В чем причина такого поведения?




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 25 июня 2007 00:43
· Личное сообщение · #2

По-моему эмулятор у неё косячит... Не видит она след. вызовы

з.ы. могу и ошибаться.

-----
[nice coder and reverser]





Ранг: 340.0 (мудрец), 22thx
Активность: 0.120
Статус: Участник
THETA

Создано: 25 июня 2007 00:48
· Личное сообщение · #3

Hellspawn пишет:
По-моему эмулятор у неё косячит...

Да, насколько я знаю, дело тут во внутреннем баге самой Оли. Ничего не поделать.

-----
Программист SkyNet




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

Создано: 25 июня 2007 00:49 · Поправил: Jimbo
· Личное сообщение · #4

Интересно, но если вместо трех printf написать три scanf, то все отлавливается нормально.

P.S. А знает ли автор о проблеме?



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 25 июня 2007 04:40
· Личное сообщение · #5

Jimbo пишет:
P.S. А знает ли автор о проблеме?

Автор забил на развитие первой версии (вторая пишется почти с нуля).

Jimbo пишет:
И соответственно bpx printf срабатываеттолько на первом вызове

bpx мы вообще не используем, штука очень не надёжная. bp в CmdBar рулит.

-----
Всем привет, я вернулся




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

Создано: 25 июня 2007 05:03
· Личное сообщение · #6

bpx мы вообще не используем, штука очень не надёжная. bp в CmdBar рулит.
В чем-же ее очень не надежность, позвольте поинтересоваться?




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 25 июня 2007 08:15
· Личное сообщение · #7

Jimbo
Ну раз олька не увидела вызов функи, а он етсь, то бряк по bpx она на него не поставит.

-----
Тут не могла быть ваша реклама




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

Создано: 25 июня 2007 10:26
· Личное сообщение · #8

ога косяк эмулятора... по логике stdcall не портит ebx, а адрес printf в нём... отладчик "запутался" =]

-----
Shalom ebanats!




Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 25 июня 2007 11:16
· Личное сообщение · #9

Jimbo пишет:
В чем-же ее очень не надежность, позвольте поинтересоваться?

Именно в том, что ставятся бряки по результатам анализа, а если анализ глючный? А если прот импорт хитро вызывает?

-----
Всем привет, я вернулся




Ранг: 228.7 (наставник), 2thx
Активность: 0.120
Статус: Участник
malware research

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

SLV stdcall ? printf(); разве не __cdecl ?

-----
Research is my purpose



 eXeL@B —› Основной форум —› Olly vs printf.
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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