Masking Exceptions and Interrupts - why?!

Тема в разделе "WASM.HEAP", создана пользователем kaspersky, 20 дек 2007.

  1. bugaga

    bugaga New Member

    Публикаций:
    0
    Регистрация:
    1 июл 2007
    Сообщения:
    361
    Превед!
    вот интересно, а что там венда2000 устаканивает в x86 процу, из за чево код падает? ;(
    Код (Text):
    1.         00402068 8cd0             mov     eax,ss
    2.         0040206a 8ccb             mov     ebx,cs
    3. СБОЙ -> 0040206c 8ed3             mov     ss,ebx
    4.         0040206e 8ed0             mov     ss,eax
    На команде mov ss,ebx, S-ICE, уходит в KiUserExceptionDispatcher, что в NTDLL.. :'(
    пофиксить бы неплохо, эту мракосаксонскую хрень.. nop-ами там..
     
  2. kaspersky

    kaspersky New Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    3.006
    bugaga
    а) выкинь наx свой дизассемблер.
    8Сh D0h, равно как и 66h:8Сh D0h соответствуют команде mov ax,ss
    т.к. ss 16-битный по жизни ;)

    б) чему ты удивляешься?! ты пытаешься загрузить в ss селектор от cs.
    и какой реакции ты ждешь?! это не винда, это ЦП. кури мануалы.
     
  3. bugaga

    bugaga New Member

    Публикаций:
    0
    Регистрация:
    1 июл 2007
    Сообщения:
    361
    Дык это drwtsn32.exe песал... Ественно когда идут разборки с синьками и ресетами, он стёрт нафик (вместе с autochk.exe)

    дык и с ds тоже подобная картина...
    мну надо штоб прожевало и не не подавилось.. на тот случай если мене доступ к самопальным 4GB селекторам потребуеться из Ring3 ))))

    Нет, это венда, (причем NT, поскольку венде9x на подобные шютки забить), тянет свои мерзкие щупальца (которые нехило бы укоротить), в какието дебри х86-ых спец регистров, и
    мну как ось-девелопера это крайне возмущает! :lol:
    да, мыщъх спасибо, развеял дым в моей голове... шла #SS

    гм.. хонопля - зло)))
     
  4. kaspersky

    kaspersky New Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    3.006
    bugaga
    > дык и с ds тоже подобная картина...
    ну не знаю... у меня w2k свободно грузит селектор cs в ds

    > мну надо штоб прожевало и не не подавилось..
    > на тот случай если мене доступ к самопальным
    > 4GB селекторам потребуеться из Ring3
    ну так это можно сделать....
    и только перед вызовом API функций не забудь вернуть все на место ;)
     
  5. kaspersky

    kaspersky New Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    3.006
    bugaga
    Код (Text):
    1. nezumi()
    2. {
    3. __asm{
    4.     mov bx,ds
    5.     mov ax,cs
    6.     mov ds,ax
    7.     mov ds,bx
    8.     }
    9.     ExitProcess(0);
    10. }
    выполняется под гостем без исключений.
    а вот mov ax,cs/mov ss,ax уже вылетает...
    надеюсь, не нужно объяснять почему? ;)