Ищю способы считывания локальных перем. на лету без DEBUG!!!

Тема в разделе "WASM.BEGINNERS", создана пользователем devillsd, 10 авг 2008.

  1. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    Пишу панель у правления для онлайн игры,Глобалььные переменные сразу проиграли бой(WriteProcessMemory,ReadProcessMemory),но как только я дошол до локальных переменных я заступорился, ведь игра ноаходиться под дзебагом лоадера,ВОПРОС,как без дебага читать/писать локальные переменные?
     
  2. blast

    blast New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    170
    В текущем процессе - инструкциями процессора, в чюжом - WriteProcessMemory/ReadProcessMemory
     
  3. CrystalIC

    CrystalIC New Member

    Публикаций:
    0
    Регистрация:
    26 июл 2008
    Сообщения:
    500
    devillsd
    Локальные это имеется ввиду локальные для потока ?
    Если это так, то обычно адрес переменной не фиксирован от начала вершины стека, константа не пойдёт.
    Смещение фиксировано относительно регистра Ebp в процедуре.
     
  4. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    Как понимаю я то мне нужно всегда знать значение EIP и ESP вот только как если я не могу быть дебагером???
     
  5. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    BOOL GetThreadContext(
    HANDLE hThread,
    LPCONTEXT lpContext
    );
    В структуре CONTEXT содержатся значения регистров
     
  6. CrystalIC

    CrystalIC New Member

    Публикаций:
    0
    Регистрация:
    26 июл 2008
    Сообщения:
    500
    Нужно знать адрес процедуры, либо адрес процедуры в цепочке, которая вызывается из неё. Вариантов очень много.
    Кстати интересно что за игра ?
     
  7. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    CrystalIC
    Наверное ты догадался в чём тут дело=)

    ragnarok motronline.com
     
  8. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    Vilco
    Этот вариант я рассматривал, но ведь процесс не стоит на месте пока я узнаю состояние регистров пока вычислю переменные реально они успеют поменяться...
    Или может и нет..как вы думаете..
    Ещё раз повторюсь это не дебаг мод,процес не заморажуеться!!
     
  9. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    Думаю процесс стоит запаузить
     
  10. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    Вообще инжект dll и перехват....
     
  11. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    VilcoКак запаузить процесс?
     
  12. CrystalIC

    CrystalIC New Member

    Публикаций:
    0
    Регистрация:
    26 июл 2008
    Сообщения:
    500
    NtSuspendProcess
    Под олей работает игра ?
     
  13. devillsd

    devillsd New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    131
    CrystalIC
    нет конечно, я же говорю-она уже находиться под дебагом своего лоадера!
     
  14. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    devillsd
    А что если запустить без лоадера игра не работает? Тогда просто посмотреть что он делае6т и проэмулить, или пропатчить его по самое нехочу... или еще в него инжект dll...
     
  15. CrystalIC

    CrystalIC New Member

    Публикаций:
    0
    Регистрация:
    26 июл 2008
    Сообщения:
    500
    ArtMoneySE и счётчик плавает ?
     
  16. blast

    blast New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2008
    Сообщения:
    170
    devillsd
    Опиши лучше чего ты хочешь в итоге добится, либо что ты хочешь сделать.