![]() |
Вопрос по mscoree.dll из .NET фреймворка
Народ, короче такая проблема, решил заняться изучением вопроса как передаеться управление CLR в .NET, нашел то что он ипмортирует функцию из mscoree.dll, она получает управление на событие DLL_PROCESS_ATTACH, далее дизассемблировал mscoree.dll получил такой код:
//******************** Program Entry Point ******** :79002C77 837C240801 cmp dword ptr [esp+08], 00000001 :79002C7C 0F8440560000 je 790082C2 Тут, как я понимаю как раз свяреяться на какое событие вызвана DLLEntry библлиотеки и если это DLL_PROCESS_ATTACH, то переход на адрес 790082C2, НО проблема в том что в дизасм листинге, этого адреса нету! Идет такой код: :790082C1 00E8 add al, ch :790082C3 05000000E9 add eax, E9000000 И больше нифига, что я делаю не так? |
>>что я делаю не так?
возможно ты все делаешь и так. дизассмеблер в отличие от процессора преобразует код в асм-листинг с самого начала; поэтому если идут байты abcd и ab и cd значат какие-то инструкции, то скорее всего дизасм преобразует ab и cd в их человеко-понятные аналоги, часто забывая при этом о возможном значении остальных кодов, к примеру bc и тд. вроде бы олядбг после перехода по джампу перепреобразовывает листинг в таком случае. |
Хм, вроде в Оле мона ДЛЛ отлаживать, пойду попробую, спасибо!
|
советую покурить вот эту книжечку от мега гуру Джеффри Рихтера - CLR via C# http://natahaus.ifolder.ru/851991
|
Как это нету?=)
Код:
Цитата:
|
20x0c0de: Я дизасм листинг получал W32DASM'ом))))
|
старье =) пора выбросить. все функции, сопоставимые с вдасмом, имеются в олли. для более тяжелых случаев(рип) юзойте иду
|
| Время: 09:22 |