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

ReWanet

Ветераны
  • Постов

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

  • Посещение

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

    40

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

  1. 22 минуты назад, lizzmack сказал:

    UPD2: сумел найти инструкцию эту же инструкцию,вписал фильтр, вписал значение - РАБОТАЕТ.
    но в силу того, что инструкция вызывается раз в ХЗ сколько времени - ненадежный скрипт получился, хз даже почему он вообще работает. Подозреваю, что мне нужна одна из первых 4 какая-нибудь, которая срабатывает много раз в секунду. но фильтр у меня там не получается написать( все значения меняются бешено быстро). Попробую полазить еще утром уже, поскольку уже хоть какой-то прогресс увидел.

    Сейчас скачал KF2 ( repack nemos ) установлю и гляну что там с хп.

    Цитата

    В деле геймхакинга зеленый, но пытался ковыряться в современных играх, а не в старых (сложнее - значит опыта в этом деле будет больше)

    Стоит искать более легкие игры для постепенного обучения ибо начинать с сложных моментов не всегда хорошо.

  2. 12 минуты назад, lizzmack сказал:
      Показать содержимое

    { Game   : KFGame.exe
      Version: 
      Date   : 2017-03-25
      Author : ??????

      This script does blah blah blah
    }

    [ENABLE]
    //code from here to '[DISABLE]' will be used to enable the cheat

     
     
    aobscanmodule(INJECT,KFGame.exe,CC 0F 6E 8A 84 03 00 00) // should be unique
    alloc(newmem,$1000,"KFGame.exe"+ACEE82)

    label(code)
    label(return)

    newmem:
      mov dword ptr [rdx+00000384],(double)100 //на double остановился на момент копирования. по смещению 384 текущее здоровье, 388 - макс.
    code:
      movd xmm1,[rdx+00000384]
      jmp return

    INJECT:
      jmp newmem
      nop
      nop
      nop
    return:
    registersymbol(INJECT)

    [DISABLE]
    //code from here till the end of the code will be used to disable the cheat
    INJECT:
      db CC 0F 6E 8A 84 03 00 00

    unregistersymbol(INJECT)
    dealloc(newmem)

    {
    // ORIGINAL CODE - INJECTION POINT: "KFGame.exe"+ACEE82

    "KFGame.exe"+ACEE52: 45 0F B6 E0              -  movzx r12d,r8l
    "KFGame.exe"+ACEE56: 48 8B F2                 -  mov rsi,rdx
    "KFGame.exe"+ACEE59: 48 8B E9                 -  mov rbp,rcx
    "KFGame.exe"+ACEE5C: 48 85 D2                 -  test rdx,rdx
    "KFGame.exe"+ACEE5F: 0F 84 C7 02 00 00        -  je KFGame.exe+ACF12C
    "KFGame.exe"+ACEE65: F6 82 E8 00 00 00 02     -  test byte ptr [rdx+000000E8],02
    "KFGame.exe"+ACEE6C: 0F 85 BA 02 00 00        -  jne KFGame.exe+ACF12C
    "KFGame.exe"+ACEE72: 48 8B 81 4C 02 00 00     -  mov rax,[rcx+0000024C]
    "KFGame.exe"+ACEE79: 48 85 C0                 -  test rax,rax
    "KFGame.exe"+ACEE7C: 0F 84 AA 02 00 00        -  je KFGame.exe+ACF12C
    // ---------- INJECTING HERE ----------
    "KFGame.exe"+ACEE82: 66 0F 6E 8A 84 03 00 00  -  movd xmm1,[rdx+00000384]
    // ---------- DONE INJECTING  ----------
    "KFGame.exe"+ACEE8A: 0F 57 C0                 -  xorps xmm0,xmm0
    "KFGame.exe"+ACEE8D: 0F 5B C9                 -  cvtdq2ps xmm1,xmm1
    "KFGame.exe"+ACEE90: 0F 2F C8                 -  comiss xmm1,xmm0
    "KFGame.exe"+ACEE93: 0F 82 93 02 00 00        -  jb KFGame.exe+ACF12C
    "KFGame.exe"+ACEE99: 48 3B D0                 -  cmp rdx,rax
    "KFGame.exe"+ACEE9C: 0F 84 8A 02 00 00        -  je KFGame.exe+ACF12C
    "KFGame.exe"+ACEEA2: 48 89 5C 24 50           -  mov [rsp+50],rbx
    "KFGame.exe"+ACEEA7: 33 DB                    -  xor ebx,ebx
    "KFGame.exe"+ACEEA9: 48 89 7C 24 58           -  mov [rsp+58],rdi
    "KFGame.exe"+ACEEAE: 33 FF                    -  xor edi,edi
    }

     

    Скрипт примерное такой:
     

    Скрытый текст
    
    aobscanmodule(INJECT,KFGame.exe,CC 0F 6E 8A 84 03 00 00) // should be unique
    alloc(newmem,$1000,"KFGame.exe"+ACEE82)
    label(code)
    label(return)
    
    newmem:
      fld dword ptr [rdx+388]                           // Берем значение из [rdx+388]
      fstp dword ptr [rdx+384]                         // Помещаем значение из [rdx+388] в [rdx+384]
    
    code:
      movd xmm1,[rdx+00000384]
      jmp return
    
    INJECT:
      jmp newmem
      nop
      nop
      nop
    
    return:
    registersymbol(INJECT)

     

    Для работы с double нужно делать так вроде:
     

    Скрытый текст
    
    aobscanmodule(INJECT,KFGame.exe,CC 0F 6E 8A 84 03 00 00) // should be unique
    alloc(newmem,$1000,"KFGame.exe"+ACEE82)
    label(Hp_Pl)
    label(code)
    label(return)
    label(ValueOnDouble) // Рандом название
    
    newmem:
    
    ValueOnDouble:
      dq(double)0  // Заместо 0 любое твое число
    
    Hp_Pl:
      fld dword ptr [ValueOnDouble] // Берем значение из [ValueOnDouble]
      fstp dword ptr [rdx+384]      // И помещаем сюда
    
    code:
      movd xmm1,[rdx+00000384]
      jmp return
    
    INJECT:
      jmp Hp_Pl
      nop
      nop
      nop
    
    return:
    registersymbol(INJECT)

     

     

    • Плюс 1
  3. Garik66 сможешь помочь?
    По твоему видео уроку сделал все как ты показал в видео но у меня не меняются значения. В конце там где задавали значения для списка.
     

    Скрытый текст
    
    function CEButton1Click(sender)
    if UDF1.CEButton1.Caption == "Player Speed - On" then
    UDF1.CEButton1.Caption = "Player Speed - Off"
    autoAssemble([[
                   aobscanmodule(LoadsiIska,Defiance.exe,8B 01 35 C1 99 54 D3)
                   alloc(newmem,$1000)
    
                   label(code)
                   label(return)
                   label(movimena)
                   label(movspeed_value)
                   registersymbol(movspeed_value)
    
                   newmem:
    
                   movspeed_value:
                     dd (float)0
    
                   movimena:
                      cmp [ecx+28],FFFFFFFF
                      jne code
                      mov eax,[movspeed_value]
                      xor eax,D35499C1
                      mov [ecx],eax
                      jmp code
    
                   code:
                      mov eax,[ecx]
                      xor eax,D35499C1
                      jmp return
    
                   INJECT:
                      jmp movimena
                      nop
                      nop
                   return:
                      registersymbol(LoadsiIska)
    ]])
    control_setEnabled(UDF1.CEComboBox1,true)
    else
    if UDF1.CEButton1.Caption == "Player Speed - Off" then
    UDF1.CEButton1.Caption = "Player Speed - On"
    autoAssemble([[
                   LoadsiIska:
                     db 8B 01 35 C1 99 54 D3
    
                     unregistersymbol(LoadsiIska)
                     unregistersymbol(movspeed_value)
                     dealloc(newmem)
    ]])
    control_setEnabled(UDF1.CEComboBox1,false)
    end
    end
    end
    function CEComboBox1Change(sender)
    SpeedRate = getProperty(UDF1.CEComboBox1,'ItemIndex')
    if SpeedRate == 0 then
    writeInteger('[movspeed_value]+0',6.5)
    end
    if SpeedRate == 1 then
    writeInteger('[movspeed_value]+0',10.5)
    end
    if SpeedRate == 2 then
    writeInteger('[movspeed_value]+0',15.5)
    end
    if SpeedRate == 3 then
    writeInteger('[movspeed_value]+0',50.5)
    end
    end

     

     

    • Плюс 1
  4. В 15.10.2016в15:37, boss сказал:

    ну я другие игры  пробовал  находить координаты  правда  в сингл,  или шутера  мультиплеер  а вот  в ммо не могу найти  , хотя раньше когда то находил в TERA  значения координат все работало , а сейчас вот такое уже что то не могу 

    Проверка есть скорее всего. 
    Вот давно уже я нашел как-то хитбокс.
     

    Скрытый текст
    
    01906905 - f3 0f 10 98 ec 01 00 00    - movss xmm3,[eax+000001ec]

     

    Найдешь или нет не знаю. 

  5. В 24.03.2017в00:21, Vasil сказал:

    , подскажите пожалуйста как увеличить скорость само персонажа ? 

     

    Выкидывает потому что есть проверка. Насчет изменить скорость игрока не известно. Да и думаю ни кто тут тебе не подскажет ибо там не все так просто. А так пробуй искать координаты игрока для начала :) 

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

    Здесь.

     

    offtopic.gif но отвечать тебе, мне честно говоря не хочется, ты так и не понял, за что я тебя банил на четыре дня.  

    И за что же? Я уже ответил выше. Если человек не читает сообщения и оскор[CENSORED]ет с самого первого моего вопроса и сообщения на этом форуме это не уважение. А не уважение это оскорбление. И бан выдался только мне ну умники чО.

  7. Не могу понять как поставить выпадающий блок :)
    Вот на скорость бега скрипт.

    Скрытый текст
    
    [ENABLE]
    aobscanmodule(Playerspeedrun,Wow.exe,D9 81 94 00 00 00 5D)
    alloc(newmem,$1000)
    label(code)
    label(return)
    label(Plspru)
    label(Respru)
    label(Ch_Plspru)
    label(V_Plspru)
    registersymbol(Ch_Plspru)
    registersymbol(V_Plspru)
    newmem:
    Ch_Plspru:
    dd 0
    V_Plspru:
      dd (float)0
    
    Plspru:                                            // Player Speed Run ( F _ B )
      cmp [Ch_Plspru],1
      jne code
      cmp [ecx+000002A8],0C0D0500                      // Fil
      jne code
      cmp [V_Plspru] (float)0
      je Respru
      fld dword ptr [ecx+00000094]                     // F
      fadd dword ptr [V_Plspru]
      fstp dword ptr [ecx+00000094]
      fld dword ptr [ecx+00000098]                     // B
      fadd dword ptr [V_Plspru]
      fstp dword ptr [ecx+00000098]
      mov [Ch_Plspru],0
      jmp code
    Respru:                                            // Set OrigSpRu
      mov [ecx+00000094] (float)7
      mov [ecx+00000098] (float)4.5
      jmp code
    code:
      fld dword ptr [ecx+00000094]
      jmp return
    Playerspeedrun:
      jmp Plspru
      nop
    return:
    registersymbol(Playerspeedrun)
    [DISABLE]
    Playerspeedrun:
      db D9 81 94 00 00 00
    unregistersymbol(Playerspeedrun)
    unregistersymbol(V_Plspru)
    unregistersymbol(Ch_Plspru)
    dealloc(newmem)
    {
    // ORIGINAL CODE - INJECTION POINT: "Wow.exe"+587671
    "Wow.exe"+587650: 5D                             -  pop ebp
    "Wow.exe"+587651: C2 04 00                       -  ret 0004
    "Wow.exe"+587654: D9 81 94 00 00 00              -  fld dword ptr [ecx+00000094]
    "Wow.exe"+58765A: D8 99 90 00 00 00              -  fcomp dword ptr [ecx+00000090]
    "Wow.exe"+587660: DF E0                          -  fnstsw ax
    "Wow.exe"+587662: F6 C4 41                       -  test ah,41
    "Wow.exe"+587665: 75 0A                          -  jne Wow.exe+587671
    "Wow.exe"+587667: D9 81 90 00 00 00              -  fld dword ptr [ecx+00000090]
    "Wow.exe"+58766D: 5D                             -  pop ebp
    "Wow.exe"+58766E: C2 04 00                       -  ret 0004
    // ---------- INJECTING HERE ----------
    "Wow.exe"+587671: D9 81 94 00 00 00              -  fld dword ptr [ecx+00000094]
    // ---------- DONE INJECTING  ----------
    "Wow.exe"+587677: 5D                             -  pop ebp
    "Wow.exe"+587678: C2 04 00                       -  ret 0004
    "Wow.exe"+58767B: CC                             -  int 3
    "Wow.exe"+58767C: CC                             -  int 3
    "Wow.exe"+58767D: CC                             -  int 3
    "Wow.exe"+58767E: CC                             -  int 3
    "Wow.exe"+58767F: CC                             -  int 3
    "Wow.exe"+587680: 56                             -  push esi
    "Wow.exe"+587681: E8 AA 3C DC FF                 -  call Wow.exe+34B330
    "Wow.exe"+587686: 8B F0                          -  mov esi,eax
    }

     

    Выставляешь число в float в "V_Plspru" и ставишь 1 в "Ch_Plspru"

    Пароль: gamehacklab
    http://rgho.st/private/6zFnDNlvm/83ebcaa1a906501083f09ca9965ad54f

  8. 10 минуту назад, Xipho сказал:

    Если, как ты утверждаешь, человек не читает твое сообщение целиком, нужно спокойно об этом сказать, а не посылать в лес. И да, не тебе судить о степени моей образованности, уж поверь ) Даже если ты пробьешься сквозь бан по подсети провайдера (а я знаю, что это можно сделать без особого труда), думаю, пользователи форума просто объявят тебе бойкот. В этом случае ты сам покинешь форум, поскольку общаться с тобой никто больше не станет. Так что да, смысла банить твою подсеть нет, это ты верно подметил. Подводя итог, рекомендую быть крайне вежливым с нашими посетителями. У нас здесь принято уважать друг друга, изволь придерживаться наших порядков, коль ты находишься на нашем ресурсе.

    Если мои сообщения не читают а именно пользователь 2zolo2 их во все не прочитывает а строчит ответ\вопрос ответ на который находится в моем сообщении то ни есть ли это неуважение? Если человек с первых моих сообщений на форуме оскорбил меня а потом во все не читая мои сообщения писал и спамил в моей теме ни есть ли это неуважение? По твоему я обязан ему пятки тут целовать? Если человек не уважает меня я не уважаю и его. Так что мне до фени до ваших там мер пресечения моего не пристойного поведения. Я соглашусь что я не уважительно пишу но лишь 2zolo2. С остальными я адекватен но не с защитниками 2zolo2 вы не видите простых вещей. Человек не способен прочитать мое сообщение и это не уважение к собеседнику.

  9. 12 часа назад, Xipho сказал:

    Так. Пора это дело прекращать. В общем, what228, либо ты прекращаешь оскор[CENSORED]ть пользователей форума, либо я баню тебя, и всю подсеть твоего провайдера. Подумай, возможно, в твоей подсети есть и еще посетители нашего форума. Хочешь ли ты, чтобы им тоже был закрыт доступ? Думаю, нет.

    Ха-ха-ха где я его оскорбил? Если человек не способен прочитать все что написано мной уже в который раз то это он оскор[CENSORED]ет меня а не я его. И где ты увидел так оскорбления? Ты то хоть способен прочитать? ЕСЛИ ЧЕЛОВЕК НЕ ЧИТАЕТ ВСЕ ПРЕДЛОЖЕНИЕ А СРАЗУ СТРОЧИТ ОТВЕТ УЖЕ В КОТОРЫЙ РАЗ.

    // Цвет поменял на чёрный. Читаем правила форума. Garik66.

    И угрозы баном мне до фени. Ваши угрозы лишь показывают вашу степень образованности.. Ко мне проявляют не уважение не читая мои сообщения а когда я на это указывают то я оскор[CENSORED]ю? Ну логика ЧСВшников.

  10. Извини все видео не решился смотреть. Но я так понял это исключительно визуальная часть и видна лишь тебе? Так же я понял это пиратка ( Circle или как его там ). Если это видно всем то прикольно. Но почему не пошел дальше? Ломануть скорость бега\прыжка координаты\левитация. Я сам новичок в взломах но подобное сделал легко на таких проектах как uWoW и EpicWoW.

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

    Скрытый текст
    
    [ENABLE]
    aobscanmodule(BERSERK_CHARKA,Wow.exe,0F B7 47 04 8B 0D C0 48 AD 00) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    label(IDChanger)
    label(ID_Char)
    registersymbol(ID_Chars)
    
    newmem:
    
    ID_Chars:									
    dd 0
    
    IDChanger:
      fld dword ptr [ID_Chars]					// Берет число которое лежит в ID_Chars
      fstp dword ptr [edi+04]					// Помещает его в [edi+04]
    
    code:
      movzx eax,word ptr [edi+04]
      mov ecx,[Wow.exe+6D48C0]
      jmp return
    
    BERSERK_CHARKA:
      jmp IDChanger
      nop
      nop
      nop
      nop
      nop
    return:
    registersymbol(BERSERK_CHARKA)
    
    [DISABLE]
    BERSERK_CHARKA:
      db 0F B7 47 04 8B 0D C0 48 AD 00
    
    unregistersymbol(BERSERK_CHARKA)
    unregistersymbol(ID_Chars)
    dealloc(newmem)

     

    Потом добавляешь новый адрес с адресом "ID_Chars" и меняешь его как хочешь.

    // Читаем правила ( в данном случае пункт 1.3) Garik66

    • Плюс 1
  11.  

    Цитата

    Вопервых нет описания что за игра, сингл или мульт.

    Мульт. Раньше дамаг так и ломался.
     

    Цитата

    Нужно смотреть непосредственно саму игру и уже копаться в ней

    Не вижу смысла. Если люди разбирающиеся в этом сталкивались с похожими проблема то они отпишут куда смотреть стоит.

  12. 8 минут назад, partoftheworlD сказал:

     

    Ставишь бряк на доступ, смотришь какие инструкции работают без изменения урона в обычном состоянии и какие появляются после увеличения урона, сравниваешь и находишь причину.

    В том и дела инструкция работает и с другими адресами но это не важно наверное ( Такие как скорость стрельбы, разброс пуль, бег ) и ищет лишь 2 инструкции первая постоянно обновляемая и вторая при смене орудия.

    ______________________________
    1. mov eax,[ecx]
        xor eax,AA186B71 ( Рандом набор )

    _____________________________

        xor ebx,AA186B71

    2. mov [ecx],ebx

        ret 04

    _______________________________

  13. Вот решился узнать у вас на счет взлома урона ( dmg hack ). Найти наносимый мною урон я нашел естественно зашифрованный но это не проблема. Урон я изменил допустим с 1 до 100 и при ударе моба я наношу ему 10 его хп уменьшились на долю секунды и потом вернулись в состояние которые были до удара с измененным уроном. Ошибки в изменении и за\шифровании нет.
     

    Опишу действия.
    1. Нашел урон 

    2. Расшифровал 
    3. Написал нужное ( с 1 на 10 допустим )
    4. Зашифровал
    5. Нанес урон 
    6. Кол-во хп изменилось на секунду и вернулись в состояние до удара.

    И да забыл добавить если мой урон изначальный 100 и я меняю его на 75\50\25\0 то тут все нормально и я наношу именно тот урон который указал. Урон начинает язвить лишь тогда когда я его увеличиваю.
    В чем может быть проблема? И есть ли у вас мысли как это обойти?

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

    Приведи игровые инструкции поможем.

     

    9 минут назад, Xipho сказал:

    Можно. Оператор fsub работает со стеком FPU. Почитай про него подробнее. А пока - подскажу. Чтобы вычесть, тебе нужно исходное значение из адреса загрузить в стек, затем сделать вычитание, и затем вернуть в нужный адрес. Типа того: (адреса недействительные взял из примера выше)

    
    fld dword ptr [esi+000090E8]
    fsub dword ptr [esi+00000014]
    fstp dword ptr [esi+000090E8]

    Как-то так.

     

    9 минут назад, Garik66 сказал:

    ЗЫ: или навскидку, из той информации. которая есть в топике:

    
    fld [esi+000090E8]
    fsub [esi+00000014]
    fstp [esi+000090E8]

     

    Спасибо за помощь. Оказывается я дурак не те регистры поставил вместо esi везде стоял ecx... Вот что невнимательность делает!

  15. Только что, Xipho сказал:

    Подчистил тему. Впредь, ребята, давайте жить дружно, мы тут одним делом занимаемся. 

    Можно уточнить? Вот у меня имеется флоатовские значение ( для них fsub вроде ). Вычитаю а получается ужас а не значение.

  16. Вот не могу понять насчет одной темы. Возможно ли в CE провести вычитание? Вот допустим есть [esi+00000014] = 200  и [esi+000090E8] = 3000. Первое координата игрока на игровом поле второе точка указателя. Возможно из 3000 вычитать 200? В CE не долго в основном сам разбираюсь без чтения макулатуры.

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

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

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