Метафизика wmf файлов

       

ключевой фрагмент hotfix'а от Ильфака


Проследить за работой заплатки можно с помощью любого отладчика, например, OllyDbg. Устанавливаем hotfix, загружаем любую программу в OllyDbg (не важно работает она с wmf-файлами или нет) и переходим к функции Escape. В OllyDbg для этого достаточно нажать <Ctrl>
+<
G>
, "
Escape", <ENTER>
.

Если установка заплатки прошла успешно (что происходит далеко не всегда) в начале функции будет стоять jump на thunk. Конкретный адрес зависит от расположения wmfhotfix.dll в памяти и может варьироваться в широких пределах. В моем случае это 10001000h

 

GDI32!Escape:

77F4D5FE >
-
   E9 FD390B98   JMP 10001000  ; jump на thunk, вставленный Ильфаком

77F4D603      83EC 18              SUB ESP,18    ;             \

77F4D606      8B55 08              MOV EDX,DWORD PTR SS:[EBP+8]      +

77F4D609      53            PUSH EBX      ;             +- код Функции Escape

77F4D60A      56            PUSH ESI      ;             +

77F4D60B      57            PUSH EDI                   .+



Содержание раздела