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

Garik66

Помогаторы
  • Постов

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

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

    292

Сообщения, опубликованные Garik66

  1. 1 минуту назад, Antonshka сказал:

    В RSI как я понял всегда находится источник, откуда копируется. В RDI приемник, куда. Поэтому если писать этим же потоком в котором находится Repe movsb в нужные мне адрес, тогда правильно у тебя было в первом сообщении. mov byte ptr [rdi+5],#66.

    Не правильно, Значение в текущем адресе [rdi] будет перезаписываться циклом lea ........................... или как там у тебя (без кода сложно)

    Поэтому записывать только в источник, т.е. в [rsi]

  2. 3 минуты назад, Antonshka сказал:

    И вот задача теперь такая, в то время когда мой собственный поток пишет данные в адреса, инструкция Repe movsb должна пропускать запись только в эти некоторые адреса.

    ты будешь записывать по Горячей клавише? или как ты это планируешь,
    Если по горячей клавише, то просто Флаг.
     

  3. 57 минут назад, Antonshka сказал:

    Как мне быть?

    Я бы попробовал не посредственно,  после объявления rcx, rdi и rsi,  и началом цикла писать в нужный тебе адрес 

    Repe movsb копирует (если мне не изменяет память) из адреса rdi в rsi по-байтно.

    тогда так: mov byte ptr [rdi+5],#66 -записать в шестой байт блока 66, ну и т.д.
    Сам я не пробовал.

  4. 6 часов назад, RegionCL сказал:

    в Cheat Engine напрямую заменить сами байты через ассемблер нельзя

    Либо ты вышел на видимые значения. Решение переискать в СЕ неизвестное.
    Либо защита, смотреть игровой код нужно (реверсить).

  5. 1 минуту назад, SergBrNord сказал:

    DP.exe+427F2A

    Хотя все ещё проще F3 0F 11 81 08 05 00 00 есть и сигна в скрипте.

     

    19 минут назад, SergBrNord сказал:

    Только сначала надо узнать секреты мастерства ?

    Так что секреты мастерства Женьки просты.

  6. 1 час назад, SergBrNord сказал:

    Код вылетает

    Конечно вылетает, посмотри на эту строчку:

    mov [edi+04],value          //Write DP value

    value - это адрес

    [value] - вот это DP value

    И ты же знаешь, что из памяти в память писать напрямую нельзя, либо через регистры, либо через стек.

     

     

  7. 55 минут назад, imaginary сказал:

    Потому что он у тебя не 1 байт, а захватывает кусочек твоего double

    Не поэтому image.png.7a9ef3fdc84686c1c62af4074b871dae.png
    первый байт это flag, следующие 8 это value (double)3000000.
    Как видищь - там ноль.
    А потому, что скорее всего через фильтр проскакивает ещё что-то и флаг успевает замениться на 1. а количество очков уже не меняется.
    Ну ещё вариант, что так как скрипт у ТС не верен (но например верен фильтр), то происходит вылет, а флаг успевает смениться.
    Да и @imaginary ты же своим скриптом не записываешь нужного значения.

     

     

  8. 1 час назад, SergBrNord сказал:

    Не понимаю

    Попробуй так:

    Спойлер
    
    { Game   : DP.exe
      Version: 1.0
      Date   : 2019-11-16
      Author : SergBrNord
      Correction: Garik66
    }
    
    [ENABLE]
    aobscanmodule(DPOINTS,DP.exe,DD 5F 04 5F 5E 8B) // should be unique
    alloc(newmem,$1000)
    label(code)
    label(return)
    label(flag)
    label(value)
    registersymbol(DPOINTS)
    
    newmem:
      cmp [edi+90], #6              //Main filter
      jne code
      cmp [flag],0                  //Check flag
      jne code
      fstp qword ptr [esi+04]
      fld qword ptr [value]        //Write DP value
      mov [flag],1                 //Set flag
    
    code:
      fstp qword ptr [edi+04]
      pop edi
      pop esi
      jmp return
    
    flag:
      dd 0
    value:
      dq (double)3000000
    
    DPOINTS:
      jmp newmem
    return:
    
    [DISABLE]
    DPOINTS:
      db DD 5F 04 5F 5E
    
    unregistersymbol(DPOINTS)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "DP.exe"+A1AE17
    
    "DP.exe"+A1AE04: 89 77 04              -  mov [edi+04],esi
    "DP.exe"+A1AE07: FF 46 08              -  inc [esi+08]
    "DP.exe"+A1AE0A: 5B                    -  pop ebx
    "DP.exe"+A1AE0B: 5F                    -  pop edi
    "DP.exe"+A1AE0C: 5E                    -  pop esi
    "DP.exe"+A1AE0D: 8B E5                 -  mov esp,ebp
    "DP.exe"+A1AE0F: 5D                    -  pop ebp
    "DP.exe"+A1AE10: C2 04 00              -  ret 0004
    "DP.exe"+A1AE13: DD 46 04              -  fld qword ptr [esi+04]
    "DP.exe"+A1AE16: 5B                    -  pop ebx
    // ---------- INJECTING HERE ----------
    "DP.exe"+A1AE17: DD 5F 04              -  fstp qword ptr [edi+04]
    "DP.exe"+A1AE1A: 5F                    -  pop edi
    "DP.exe"+A1AE1B: 5E                    -  pop esi
    // ---------- DONE INJECTING  ----------
    "DP.exe"+A1AE1C: 8B E5                 -  mov esp,ebp
    "DP.exe"+A1AE1E: 5D                    -  pop ebp
    "DP.exe"+A1AE1F: C2 04 00              -  ret 0004
    "DP.exe"+A1AE22: 8B 56 04              -  mov edx,[esi+04]
    "DP.exe"+A1AE25: 5B                    -  pop ebx
    "DP.exe"+A1AE26: 89 57 04              -  mov [edi+04],edx
    "DP.exe"+A1AE29: 5F                    -  pop edi
    "DP.exe"+A1AE2A: 5E                    -  pop esi
    "DP.exe"+A1AE2B: 8B E5                 -  mov esp,ebp
    "DP.exe"+A1AE2D: 5D                    -  pop ebp
    }

     

     

  9. 27 минут назад, slamal сказал:

    Вот такая билиберда появляется  РџРёСЃС‚олет

    Это скорее всего у тебя,
    Попробуй http://vindavoz.ru/win_obwee/102-reshenie-problemy-s-nepravilnym-otobrazheniem-russkih-bukv-v-windows.html

  10. В 10.11.2019 в 20:26, slamal сказал:

    Вопрос: почему в выпадающем списке предметов вместо кириллицы вопросы "??????????? ???"

    Проблема с кодировкой.
    Так и не понял как это работает - у кого-то русский язык будет отражаться нормально, у кого-то ?????????????.
    Перезаполни выпадающий список по новой у себя, на компе.
     

  11. 17 часов назад, ЛАГАРИУМ сказал:

    а как ето ,есть у тебя видео ?

    Какое ещё видео? Подойдет любое,
    Просто перечитай внимательно пост - ТЫК
    Я в нем пишу что в качестве фильтра я использую уникальное значения регистров на момент срабатывания инструкции.
    В нем могут быть и ID.
    Например инструкция типа:
    mov eax,[ebx+4*ecx]
    ebx - в данном примере указатель
    ecx - как раз тот регистр, значения которого являются ID (предмета, характеристики героя и т.д., и т.л.)

  12. В 06.11.2019 в 23:36, Hack сказал:

    Что? alloc не нужен?

    нет

    В 07.11.2019 в 17:44, Alex2411 сказал:

    получаеться что в 64 бит обычным способом как в 32 бит соеденить скрипты нельзя

    можно
    Видео: 

    Спойлер

     

     

  13. 5 минут назад, Alex2411 сказал:

    так я же  сразу говорил  что мне не понятно только как правильно сделать  выделение памятив 64 бит

    Это нужно было в другом топике делать.

     

    5 минут назад, Alex2411 сказал:

    просто запомнил ?

    да: jmp 1 байт, адрес 8 байт и т.д.

  14. 24 минуты назад, Alex2411 сказал:

    еще хотел спросить

    Как я Вас с Хаком понял Вы разбираете не объединение скриптов.
    Более простой вариант я уже давал Здесь, но ты его пропустил и не понял, что он тебе подходит,

    Тот вариант, который Вы с Хаком обсуждаете у меня есть на видео ( в самом начале-

    Спойлер

     

     

  15. 38 минут назад, Alex2411 сказал:

    похоже да

    Нет не разобрался. В теме я все ответил, причем несколько раз.
    ну ладно может когда нибудь найдешь время, перечитаешь и объединишь. 

     

    39 минут назад, Alex2411 сказал:

    получаеться что в 64 бит обычным способом как в 32 бит соеденить скрипты нельзя

    Можно

     

    40 минут назад, Alex2411 сказал:

    что бы выделить......................................

    все остальное ерунда.

×
×
  • Создать...

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

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