Как отучить игру от СД (farcry)

Тема в разделе "WASM.BEGINNERS", создана пользователем dias, 1 дек 2006.

  1. dias

    dias New Member

    Публикаций:
    0
    Регистрация:
    21 май 2006
    Сообщения:
    3
    Есть игра Farcry. Знаю что она проверяет метку диска. И если метка не FARCRY_1 то игра просит СД. Что интересно что игра не проверяет содержимое СД(проверял).

    Екзешник написан на ms vc++7.

    Не много знаю Soft Ice. Но хотелось бы взломать с помощью Olly...

    Господа помогите....
     
  2. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    dias
    Поставь метку FARCRY_1 на тот диск с которого запускаешь - частенько прокатывает :))
     
  3. clone

    clone New Member

    Публикаций:
    0
    Регистрация:
    4 июл 2006
    Сообщения:
    84
  4. Zhelezovsky

    Zhelezovsky Member

    Публикаций:
    0
    Регистрация:
    24 окт 2006
    Сообщения:
    39
    Я бы попробовал для начала строку "FARCRY_1" в файлах, лежащих в папке с игрой, поискать. А потом бы исправил на нужную мне метку. Я таким образом UFO для ДОСа запускал. Запароленная игра была. Все коды на восемь восьмерок исправил и играл. :)
     
  5. Cigan

    Cigan New Member

    Публикаций:
    0
    Регистрация:
    13 окт 2003
    Сообщения:
    54
    Адрес:
    Моск.обл
    GetVolumeInformation испрваляй код и не будет проверки но это при условии что на ней только эта проверка.
     
  6. dias

    dias New Member

    Публикаций:
    0
    Регистрация:
    21 май 2006
    Сообщения:
    3
    Проверку на диск нашел исправил, ставил метку FARCRY_1 для С\: работает. Теперь хочу чтоб строка FARCRY_1 копировалась и сравнивалась с самой собой. Непонятно да...
    Где можно достать русскую доку по оллИ??

    Что ты имелл ввиду под исправлением кода GetVolumeInformation ? Занопить что ли..
     
  7. dias

    dias New Member

    Публикаций:
    0
    Регистрация:
    21 май 2006
    Сообщения:
    3
    Пацаны все ткаи поламал.. И тем более как-то по ламерски.
    Обьяснитека что значит этот код.
    LEA EAX,DWORD PTR SS:[EBP-1D]
    PUSH DWORD PTR SS:[EBP-1C] ; |VolumeNameBuffer
    MOV BYTE PTR SS:[EBP-4],1

    Я там за место этого:
    CALL DWORD PTR DS:[<&KERNEL32.GetVolumeI>; kernel32.GetVolumeInformationA

    написал вот это:
    mov DWORD PTR SS:[EBP-1C],370053C4.
    А по адресу 370053C4 находилось FARCRY_1. ой я хотел побольше помучиться, а поломал всего за 4 часика..
    В итоге я дал программе ту строку которая она хотела... Повезло что защиты вообще не было...
     
  8. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    Русский Olly Help
    Ну прикрути к ней свою защиту - посерьёзнее, а потом сломай :))