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

JIeXA

Заблокированные
  • Постов

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

  • Посещение

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

    25

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

  1. Аобскан актуален для поиска функции, при чём тут id или указатели? Указатель не всегда надёжен тем, что в некоторых ситуациях он не работает, а вот id работает хотя бы в рамках текущего патча игры.

    Не чувак ты меня походу не понял я имел ввиду что после патча возможно ИД и его расположение в структуре останутся прежними а указатель 100500 процентов поменяется

    ВОТ

  2. Здравствуйте. Я на счёт идентификатор игрока, игра Hitman - Контракты. Взламываю патроны. Я всё сделал по статье, и у меня вот что получилось в окне "Анализ памяти"

    http://s2.ipicture.r...25/3S7mTF2r.jpg

    инструкция 00477CD0 - 89 8E 83000000 - mov [esi+00000083],ecx. Как правильно узнать угадать ID.

    В анализаторе структур (при открытом отладчике СЕ) жмёш на адрессе пробел в показываемой памяти (в отладчике)

    переходиш на свой адресс и тыкаеш на нём определить проскакивающие адресса и если всё сработает(а если нет идёш к следующему адрессу ) то ты всё сам увидеш(допустим есть ГГ его напарник и соперники если ГГ и напарник пренадлежит комманде с ID=1 а соперники имеют ID=0 то увидеш что то типа этого адресс1=1(наш ГГ) адресс2=1(его напарник) адресс3=0(бот) адресс4=0(бот) )

    А дальше делаеш сравнение в скрипте типа

    cmp [адресс+смещение],1

    jne на оригинальный код если не совпадает

    и будет тебе счастье

    Дополню предыдущий пост, если не найти разницу в структурах между игроком и врагом, то можно сравнивать регистр, хранящий в момент выполнения инструкции адрес здоровья того, кому наносится урон, с указателем. Это менее надёжный вариант, но более простой в реализации.

    мб..... регистры всегда смотрю в первую очередь а потом уже остальное

    Например я хочу для игры Battlefield 2. У меня получилось так то сделать бессмертие для игрока, найдя многоуровневый указатель.

    ковырял эту игру давно какая версия не помню но вроде 1.0

    искал я искал ид игрока так и не нашёл

    забил на ид нашёл указатель

    но там как то странно с указателем один чисто на самого ГГ а другой на ГГ и на технику в которую ты залезеш

    морозил адресс на 10 000 и гонял ботов до Канадской граници))))))))))

    Если можешь идентификатор найти - делай через него, если нет - через указатель. Это дело вкуса и умений исключительно.

    А всётаки я считаю что найти ID и юзать его самого лучше чем указатель т.к.

    при использование ID актуален аобскан а при указателе врятли я думаю

  3. С разбегу

    ещё толком не тестил ток на одной локации

    НО

    No Reload

    [ENABLE]

    alloc(newMem, 2048)

    label(returnHere)

    newMem:

    push [ecx+0000075C]

    pop [ecx+00000764]

    mov esi,[ecx+00000764]

    jmp returnHere

    SpecOpsTheLine.GetStackOwnerClass+2E705F:

    jmp newMem

    nop

    returnHere:

    [DISABLE]

    SpecOpsTheLine.GetStackOwnerClass+2E705F:

    mov esi,[ecx+00000764]

    dealloc(newMem)

    Ammo

    [ENABLE]

    AOBSCAN(signatureAddress, 89 86 78 07 00 00 8B 06 8B 90 B8 03 00 00 57 6A 00 8B CE FF D2 8B C8 8B 86 78 07 00 00 )

    alloc(newMem, 2048)

    label(returnHere)

    label(address1)

    registersymbol(address1)

    label(qwe)

    newMem:

    cmp eax,#100

    jnl short qwe

    mov eax,#100

    qwe:

    mov [esi+00000778],eax

    jmp returnHere

    signatureAddress: //00d3a04f = SpecOpsTheLine.PIBGetInterface+49A2F

    address1:

    jmp newMem

    nop

    returnHere:

    [DISABLE]

    address1:

    mov [esi+00000778],eax

    dealloc(newMem)

    unregistersymbol(address1)

    И жизни не знаю мож на другой локации вообще не запашет(все бессмертны будут)

    [ENABLE]

    alloc(newMem, 2048)

    label(returnHere)

    label(qwe)

    label(ewq)

    newMem:

    cmp [edi+0020],0

    jne short qwe

    mov [ewq],(float)1000

    mov [edi+0004],(float)1000

    movss xmm0,[ewq]

    qwe:

    movss [edi],xmm0

    fdiv dword ptr [esp+18]

    jmp returnHere

    ewq:

    dd 0

    SpecOpsTheLine.GetOutermost+C5196:

    jmp newMem

    nop

    nop

    nop

    returnHere:

    [DISABLE]

    SpecOpsTheLine.GetOutermost+C5196:

    movss [edi],xmm0

    fdiv dword ptr [esp+18]

    dealloc(newMem)

    поправил скрипты

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

    а по сути вопроса либо юзай модульную адрессацию либо проверочные байты

    а по ID игрока меня убил на повал движок Unreal Engine 3

    там только ковыряние стека спасает

  5. Мой вариант


    alloc(newmem,2048)
    label(originalcode)
    label(returnhere)
    label(Flag)

    newmem:
    cmp [edi+08],65
    jne short Flag
    originalcode:
    mov [edi+04],ebx
    Flag:
    push keng_trnme.exe+10C5
    jmp returnhere


    keng_trnme.exe+2181:
    jmp newmem
    nop
    nop
    nop
    returnhere:


    [DISABLE]
    keng_trnme.exe+2181:
    mov [edi+04],ebx
    push keng_trnme.exe+10C5
    dealloc(newmem)
    [ENABLE]

  6. //JIeXA и отсеивание по формуле по-твоему для PC-игр не катит? Те же координаты (и не только) 4 байта целое можно искать формулой по типу "больше/меньше/изменилось/не изменилось/больше 0/не равно (меньше) 4294967295" и т.п. Можно лишние 1-байтовые значения отсеивать как "не равно 255" или же "не равно -1", двухбайтовые как "не равно 65535" и т.п.

    Это всё мелочи которые не сомненно дают проге плусс но до тогоже СЕ ой как далеко

    Взять тот же трейсер, анализатор структур и ещё мне очень нравится структурный паук который очень облегчает поиск индификатора или тот же авто поиск указателей который реализован гораздо разумней чем в мани

  7. :Половине пользователей даже возможностей ArtMoney хватает, без всяких там отладчиков.гр

    Всю свою сознательную жизнь считал и буду считать что артмани заточена для взлома эмуляторных игр

    А я говарю про взлом и ковырянии PC игр

    Моё личное мнение что артмани для PC игр полный к...л

  8. Посчупал прогу

    Скажу честно и сразу в лоб

    Мне понравился ток интерфейс и всё

    Про функционал скажу ток что до CE и плюс олги

    как до Пикина раком

    Всё выше сказаное не в обиду просто что я думаю то и говарю

    да и тутора я не увидел (тыкни носом если я слепенький не увидел его)

  9. Я например сделал бессмертие для гГероя, нашёл инструкцию работающую с адресом, бессмертен только я, но при поподании в голову помирал, короче редко помирал. Может надо сделать броню с каской чтобы при поподании в голову не помирал или как.

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

    сам проверял

    только единственый косяк на экране будет отображаться левое число

    а если посмотреть на адресс то будет 9999

    Посмотри споилер поста №3

  10. Saints Row The Third v. 1.0.0.1 Ru

    saintsrowthethird.exe

    MD5: 5c3deb0de444eeff73240dd9823d90f6

    WinXP SP3

    INS Вкл. трейнер

    Num1-Жизни

    Num2-Без перезарядки

    Num3-Боеприпасы

    Num4-Дать 10000 денег

    Num5-Меньше розыска

    Num6-Перегрев(Танк)

    Num7-Время в миссиях

    Num8-Бесконечные жизни тачки

    post-13-1323543859,37_thumb.jpg

    Saints Row The Third_+8Trainer.rar

    saintsrowthethird.rar

  11. Реальная ферма качал с alawar.ru

    Версия 1.0

    Функции -

    1) Заморозка таймера

    2) Деньги

    Игра очень легка во взломе подойдёт даже для новичка вкачестве подопытного кролика.

    Время хранится секундами в Float

    Деньги как обычно 4 байта

    [ENABLE]

    alloc(newmem,2048)

    aobscan(address,8Bxxxxxxxxxx8Bxx39xxxxxxxxxx0Fxxxxxxxxxx8Dxxxxxxxxxxxx8DxxxxxxFx)

    label(injectAddress)

    registersymbol(injectAddress)

    label(originalcode)

    label(returnhere)

    newmem:

    cmp dword ptr [eax+000001D4],000186A0

    jnl short originalcode

    mov dword ptr [eax+000001D4],000186A0

    originalcode:

    mov edi,[eax+000001D4]

    jmp returnhere

    address: // "MyFarmLife.dll"+3247E = 0x1003247E

    injectAddress:

    jmp newmem

    nop

    returnhere:

    [DISABLE]

    injectAddress:

    mov edi,[eax+000001D4]

    unregistersymbol(injectAddress)

    dealloc(newmem)

    [ENABLE]

    aobscan(address,D8xxxxxxD9xxxxxxD9xxxxxxD9xxxxD9xxD8xxDFxxDDxxF6xxxx75xxD9xxxxEx)

    label(injectAddress)

    registersymbol(injectAddress)

    address: // "MyFarmLife.dll"+4BA86 = 0x1004BA86

    injectAddress:

    db 90 90 90 90

    [DISABLE]

    injectAddress:

    db D8 64 24 34

    unregistersymbol(injectAddress)

    Трейнер и таблица в архиве

    MyFarmLife.rar

  12. нашёл жизни

    ноль это 100% здоровья(float)

    при бряке на доступ

    PIBGetInterface+5FC - D9 00           - fld dword ptr [eax]

    004AE616 - 75 0F - jne PIBGetInterface+607
    004AE618 - 8B 44 24 08 - mov eax,[esp+08]
    004AE61C - D9 00 - fld dword ptr [eax] <<
    004AE61E - 8B 4C 24 04 - mov ecx,[esp+04]
    004AE622 - D9 19 - fstp dword ptr [ecx]

    EAX=16D012AC
    EBX=02000001
    ECX=06571780
    EDX=16D012AC
    ESI=011B9EA0
    EDI=00000111
    ESP=01BFF528
    EBP=00000000
    EIP=004AE61E

    Проблема в том что наверное ВСЕ значения обрабатываются этой инструкцией...

    поиск указателя ни чего ни даёт

    после перезапуска игры они не пашут

    хотя возможно нужно структуру смотреть......

    Помогите сделать хотябы бессмертие

  13. Смотрел данную гаму

    дальше второй миссии не стал играть ибо игра полный ка... (меня убило насмерть поведение камеры и челы как карандаши)

    Но я не понимаю зачем заморочки с указателями

    MD5: 7b245fa1a24494b17fdebd8dd9dbecbd

    размер exe 2 370 048 байт

    Жизни

    [ENABLE]

    alloc(newmem,2048)

    aobscan(address,D9xxxxD9xxxxxxxxxx8Bxxxxxxxxxx39xxxx0Fxxxxxxxxxx39xxxxxxxxxx74)

    label(injectAddress)

    registersymbol(injectAddress)

    label(originalcode)

    label(returnhere)

    newmem:

    mov [ecx+2C],(float)1000

    originalcode:

    fld dword ptr [ecx+2C]

    fstp dword ptr [ebp+00000120]

    jmp returnhere

    address: // "TCC.exe"+C5623 = 0x004C5623

    injectAddress:

    jmp newmem

    nop

    nop

    nop

    nop

    returnhere:

    [DISABLE]

    injectAddress:

    fld dword ptr [ecx+2C]

    fstp dword ptr [ebp+00000120]

    unregistersymbol(injectAddress)

    dealloc(newmem)

    Жизни напарника

    [ENABLE]

    alloc(newmem,2048)

    aobscan(address,D9xxxxDExxDFxxF6xxxx0FxxxxxxxxxxD9xxxxD9xxxxDExxDFxxF6xxxx7AxxDx)

    label(injectAddress)

    registersymbol(injectAddress)

    label(originalcode)

    label(returnhere)

    newmem:

    mov [esi+28],(float)1000

    originalcode:

    fld dword ptr [esi+28]

    fcompp

    jmp returnhere

    address: // "TCC.exe"+90044 = 0x00490044

    injectAddress:

    jmp newmem

    returnhere:

    [DISABLE]

    injectAddress:

    fld dword ptr [esi+28]

    fcompp

    unregistersymbol(injectAddress)

    dealloc(newmem)

    Очки навыков №1 реализовал так

    [ENABLE]

    aobscan(address,74xxxx89xxxxxxxxxxFFxxB0xxC2xxxxxxxxxxxxxx8Bxxxxxxxx8Bxxxxxx85)

    label(injectAddress)

    registersymbol(injectAddress)

    address: // "TCC.exe"+B42EB = 0x004B42EB

    injectAddress:

    db EB 07

    [DISABLE]

    injectAddress:

    db 74 07

    unregistersymbol(injectAddress)

    Очки навыков номер _2

    [ENABLE]

    aobscan(address,74xx03xx89xxxxxxxxxxxx01xxxxxxB0xxxxC2xxxxxxxxxxxxxxxxxx83)

    label(injectAddress)

    registersymbol(injectAddress)

    address: // "TCC.exe"+B4334 = 0x004B4334

    injectAddress:

    db EB 08

    [DISABLE]

    injectAddress:

    db 74 08

    unregistersymbol(injectAddress)

    А стрелы сделал так

    [ENABLE]

    alloc(newmem,2048)

    aobscan(address,8Bxxxxxxxxxx3Bxxxxxxxxxx7Fxx83xxxx74xx8Bxxxxxxxxxx8Dxxxxxxxx8B)

    label(injectAddress)

    registersymbol(injectAddress)

    label(originalcode)

    label(returnhere)

    newmem:

    mov [ecx+000000E4],#99

    originalcode:

    mov eax,[ecx+000000E4]

    jmp returnhere

    address: // "TCC.exe"+D9643 = 0x004D9643

    injectAddress:

    jmp newmem

    nop

    returnhere:

    [DISABLE]

    injectAddress:

    mov eax,[ecx+000000E4]

    unregistersymbol(injectAddress)

    dealloc(newmem)

    TCC.rar

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

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

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