Перейти к содержанию

Dino

Пользователи+
  • Постов

    160
  • Зарегистрирован

  • Посещение

  • Победитель дней

    4

Весь контент Dino

  1. Смотри, начало функции это там где начинается код пролога, он выглядит примерно так push ebp mov ebp,esp
  2. но даже по этим огрызкам я вижу что метод принадлежит классу, следовательно он __thiscall
  3. это инструкции, мне нужен код всей функции
  4. Из всего прочитанного возникает 1 вопрос : как ты ищешь адрес своей функции в CE?
  5. Ясно ,приходим к выводу что произвести битовые вычисления на CE-LUA НЕЛЬЗЯ
  6. Более сложный способ с перехватом удаленного потока
  7. Писал на коленке, вроде нигде не ошибся, а может и ошибся
  8. я на 32битке и юзаю. Гружу lua в игру как-то так loadlibrary(luaclient-i386.dll) luacall(openLuaServer('CELUASERVER')) globalalloc(luainit, 128) globalalloc(LuaFunctionCall, 128) label(luainit_exit) globalalloc(luaserverinitialized, 4) globalalloc(luaservername, 12) //ну и тд Но суть в том что библиотеку bit32 оно не определяет.. Мне не сдвигать, а умножать надо, хотя даже сдвигом смог бы эту задачу решить, но тут нет ни того ни другого! v1 = *(_DWORD *)(this + 516) return (v1 & 0x10000) == 0;
  9. Через перехват или создание удаленного потока. Либо внедряешься в игру и все делаешь из ее адресного пространства
  10. да в том то и дело, что она не видит эту библиотеку
  11. Привет всем кто читает эту тему. Собственно вопрос Сешная луа поддерживает битовые операции? Перелопатил пол форума http://forum.cheatengine.org/ и даже упоминания никакого о них не нашел. Авто ассемблер не предлагать, пишу бот на луа, нужно максимально минимизировать код.
  12. Согласен, проблема прям высосана из пальца. @ШАРИК, если тебе принципиально получить доступ к структуре PROCESS_MEMORY_COUNTERS , то можно все это дело провернуть на уровне Native Api, тогда не нужно будет получать привилегии и хендлы всякие по 100 раз открывать.
  13. Да в принципе можно закрыть, он ведь больше не нужен ШАРИК 1)код покажи вместе с мейном 2)IDE какая ? 3)Что возвращает функция ?
  14. Адрес при резервировании должен быть выровнен на 64к, а 4к это размер страницы при ее выделении
  15. Если предположить что загрузчик для каждой области резервирует память отдельно, то это все объясняется тем что адреса должны быть кратны 64кб, именно поэтому дистанция между заголовками и секциями 0xf000. Но это не точно
  16. а размер модуля из SizeOfImage? покажи еще скрин секций из cffexplorer с Sizeofimage все в порядке он учитывает эту зарезервированную область
  17. Проблема скорее не в VirualProtectEx, а в том что ты в рабочем модуле попадаешь на зарезервированный кусок памяти ( MEM_RESERVE и только) на что ReadProcessMemory дает пинка под зад, но ведь ее нельзя за это осуждать, как бы ты повел на ее месте? Советую скопировать модуль по частям, то есть заголовки, секции и прочая лабуда Более простой и костыльный вариант это проверять каждую страницу памяти подопытного при помощи VirtualQueryEx и все что является MEM_COMMIT - копировать Я так полагаю ты дампер пишешь, тогда не буду предлагать вариант с CreateFile.
  18. *(DWORD*)&bytes[1] = (DWORD)(allocAddress - (baseAddress + offsetAddress[0]) - 5); так лучше
  19. Dino

    cmp строки

    Вроде ты кидал скрин со структурой и там явно видно что +0x10 от базового адреса
  20. Dino

    cmp строки

    а конкретнее? А то вдруг еще кто нибудь забудет, зато будет где подсмотреть
  21. Dino

    cmp строки

    helldrg Add Address в СE открой http://SSMaker.ru/e6ea7d04/ и убедись что по данному указателю лежит твоя строка строка
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.