Функция DriverEntry

Тема в разделе "WASM.BEGINNERS", создана пользователем Llirik, 4 фев 2011.

  1. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    Код (Text):
    1. DriverEntry proc pDriverObject:PDRIVER_OBJECT, pusRegistryPath:PUNICODE_STRING
    У меня она компилируестя вот так:
    Код (Text):
    1. public start
    2. start proc near
    3. push    ebp
    4. mov     ebp, esp
    , а надо так:
    Код (Text):
    1. ; __stdcall DriverEntry(x, x)
    2.     public _DriverEntry@8
    3. _DriverEntry@8  proc near
    4. arg_0           = dword ptr  4
    Что мне надо сделать?
    P.S. Дисассемблировал Идой
     
  2. cresta

    cresta Active Member

    Публикаций:
    0
    Регистрация:
    13 июн 2004
    Сообщения:
    2.257
    непонятно, что надо? Убрать стековый фрейм что-ли?
    аналог __declspec ( naked )?

    Код (Text):
    1.     option prologue : none
    2.     option epilogue : none
    3.  
    4.     option prologue : prologuedef
    5.     option epilogue : epiloguedef
     
  3. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    Это на каком хоть языке-то?
    Ну прежде всего чтобы в секции экспорта появилась DriverEntry(x, x), а не Start
     
  4. cresta

    cresta Active Member

    Публикаций:
    0
    Регистрация:
    13 июн 2004
    Сообщения:
    2.257
    __declspec ( naked ) - говяжий язык (С)
    option prologue : none - масм

    а вообще start/DriverEntry - условные штуки. Смотря в каком дизассемблере смотреть, какими отладочными символами пользоваться и т.д.
    Олли вообще не покажет никаких названий функций. Да и нет их там. Просто адреса. Или я что-то не там путаю :dntknw:
     
  5. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Для чего? И так пойдет)

    А для чего naked советуют,не пойму :lol: