Функция DriverEntry

Discussion in 'WASM.BEGINNERS' started by Llirik, Feb 4, 2011.

  1. Llirik

    Llirik Member

    Blog Posts:
    0
    Joined:
    Jul 18, 2008
    Messages:
    471
    Code (Text):
    1. DriverEntry proc pDriverObject:PDRIVER_OBJECT, pusRegistryPath:PUNICODE_STRING
    У меня она компилируестя вот так:
    Code (Text):
    1. public start
    2. start proc near
    3. push    ebp
    4. mov     ebp, esp
    , а надо так:
    Code (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

    Blog Posts:
    0
    Joined:
    Jun 13, 2004
    Messages:
    2,257
    непонятно, что надо? Убрать стековый фрейм что-ли?
    аналог __declspec ( naked )?

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

    Llirik Member

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

    cresta Active Member

    Blog Posts:
    0
    Joined:
    Jun 13, 2004
    Messages:
    2,257
    __declspec ( naked ) - говяжий язык (С)
    option prologue : none - масм

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

    wasm_test wasm test user

    Blog Posts:
    0
    Joined:
    Nov 24, 2006
    Messages:
    5,582
    Для чего? И так пойдет)

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