Unreal mode в эмуляторах.

Discussion in 'WASM.ASSEMBLER' started by Medstrax, Mar 6, 2009.

  1. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Подскажите насколько полно поддерживают существующие эмуляторы работу в Unreal mode.
    Можно ли анриал юзать для детекта ВМ? Эмуляторов сейчас как грязи, поэтому все их тестить самому как то влом ;)
     
  2. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Как выяснилось, нифига не поддерживают. По крайней мере не на 100%. Bochs, VmWare, VirtualPC и Qemu спалились. Версии правда были не самые свежие, однако нет никаких оснований думать, что в новых релизах эти баги пофиксили.
     
  3. inviZ

    inviZ Сергей

    Blog Posts:
    0
    Хмм, а поподробней? В чем проблемы-то были?
     
  4. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Накидал тестовую прожку. Стартует из реалмода, ну или его эмуляции ВМ ;) Выводит надпись "native mode" либо "vm detected". Все эмуляторы (см.выше) обломались. Подробности смотри внутри, там кода то почти нет.

    Мля, аттач не цепляется
     
  5. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    А, дошло))) Пасс на архив - "wasm"
     
  6. spider

    spider Spider

    Blog Posts:
    0
    Только у меня пароль не подходит?!
     
  7. iZzz32

    iZzz32 Sergey Sfeli

    Blog Posts:
    0
    Архив битый :-(
     
  8. FatMoon

    FatMoon New Member

    Blog Posts:
    0
    160 байт чистого кода можно было и исходником, открытым текстом. Как-нибудь скомпилируем, а смотреть на код все равно будем, нечего стесняться.
     
  9. censored

    censored New Member

    Blog Posts:
    0
    По #1, #2 несложно догадаться, что делает программа.
     
  10. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Херня какая-то, исходный файл 234 байта, сохраненный из аттача -222
    Исходника с собой нет, по новой набивать влом ;)
    Хых, осел нормально сохраняет, это глюки мозиллы были. Пасс правильный, только кавычки не нужны ;)
     
  11. Pavia

    Pavia Well-Known Member

    Blog Posts:
    0
    У меня Unreal Mode нормально работает на
    На VirtualPC не тестировал. Возможно у вас в коде ошибка.

    Посмотрел код. Както странно вы загружаете сегменты данных через
    Code (Text):
    1.  mov    eax,cr0
    2.  inc    eax
    3.  mov    cr0,eax
    4.  xor    bx,bx
    5.  mov    ds,bx // И тут ошибка.
    6.  dec    eax
    7.  mov    cr0,eax
    8.  push   cs
    9.  pop    ds // Регистр сброшен обратно
     
  12. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Это не баг, это фича ;)
    А насчет push cs, pop ds - когда то давно почему то писАли именно так. А я писал на полуавтомате в 3 ночи, после 800 гр водки с коньяком, видимо руки лучше знали что делать
    и как )))
     
  13. Pavia

    Pavia Well-Known Member

    Blog Posts:
    0
    А ну да. Просто забыл как там делается.
     
  14. Pavia

    Pavia Well-Known Member

    Blog Posts:
    0
    Medstrax
    А понял что нетак. LGDT отсутстыует. Поэтому нуливой дескриптор черти где находится. На реальной машине там биос загружает свои GDT. А на эмуляторе не знаю.