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

Garik66

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

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

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

    292

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

  1. Так как потом меняет значение по адресу. Попробуй так:aobscanmodule(ASDF,RavensCry.exe,39 86 20 11 00 00) // should be unique alloc(newmem,$1000) registersymbol(ASDF) label(return) newmem: xor [esi+00001120],5a63cd29 mov [esi+00001120],#99 xor [esi+00001120],5a63cd29 mov eax,[esi+00001120] cmp [esi+00001120],eax jmp return ASDF: jmp newmem nop return: [DISABLE] ASDF: db 39 86 20 11 00 00 unregistersymbol(ASDF) dealloc(newmem) Установлена версия 1.1
  2. xor [esi+00001120],5a63cd29mov [esi+00001120],#99xor [esi+00001120],5a63cd29Нужно добавить вот это. aobscanmodule(ASDF,RavensCry.exe,39 86 20 11 00 00) // should be uniquealloc(newmem,$1000)registersymbol(ASDF)label(return)newmem: xor [esi+00001120],5a63cd29 mov [esi+00001120],#99 xor [esi+00001120],5a63cd29 cmp [esi+00001120],eax jmp returnASDF: jmp newmem nopreturn:[DISABLE]ASDF: db 39 86 20 11 00 00unregistersymbol(ASDF)dealloc(newmem)
  3. Попробуй так: aobscanmodule(ASDF,RavensCry.exe,39 86 20 11 00 00) // should be uniquealloc(newmem,$1000)registersymbol(ASDF)label(return)newmem: mov [esi+00001120],#99 cmp [esi+00001120],eax jmp returnASDF: jmp newmem nopreturn:[DISABLE]ASDF: db 39 86 20 11 00 00unregistersymbol(ASDF)dealloc(newmem)
  4. Dison, xor ebp,ebp это не шифрование, а обнуление регистра.
  5. gmz, а чем твоя запись: cvtsi2ss xmm0,dword[eax+8]movss dword[eax+4],xmm0 короче этой: fild [eax+08]fstp [eax+04] или она быстрее?
  6. У меня версия v. 1.1. Другую качать не хочется. А как ты с одной версии, на другую версию находишь адреса?
  7. Не заметил, наверное объединилась с таблицей, которую давал LIRW. Перезалил.
  8. Тебе тоже спасибо. А для ленивых, вот таблица с 4 опциями для игры версии 1.01 ravenscry_v1.CT
  9. [ENABLE]alloc(newMem, 64)label(returnHere)newMem:xor [ecx+12],6a39 // Расшифровываем кол-во скил-поинтов, 6a39 - константаadd [ecx+12],#10 // Прибавляем 10xor [ecx+12],6a39 // И опять зашифровываем.movsx ebp,word ptr [ecx+12]lea edi,[ebx+00000590]jmp returnHereravenscry.exe+4FD883:jmp newMemdb 90 90 90 90 90returnHere:[DISABLE]ravenscry.exe+4FD883:movsx ebp,word ptr [ecx+12]//В [ecx+12] лежат количество скил-поинтов.lea edi,[ebx+00000590]dealloc(newMem)
  10. Я же тебе говорил, посмотри мои два видео, там довольно подробно и прочитай комментарии в скриптах.
  11. Заметил очепятку, если на млн., то нужно 0 дописать сюда: mov eax,#100000 // сюдаЭто для новичков, а то потом будут искать: "Говорили же мильон..... " MasterGH, тоже позволил себе, подправить твой скрипт (в таблице СЕ не красиво смотрится очень большая цифра при включённом скрипте, не похожая на 100000.)
  12. keng, отлично всё сработало, переделал скрипты, сделал более правильными. Если кому интересно, то скрипт здесь.
  13. В свете обсуждения здесь, переделал скрипты (отсюда.). Исправления: GodMod: 1. Для такелажа (жёлтая полоска) и экипажа (зелёная полоска) записываются максимальные значения. 2. Для корпуса (красная полоска), т.к. максимального значения не нашёл, оставил прежним. OneHitKill: 1. Для такелажа (жёлтая полоска) и экипажа (зелёная полоска) записывается 0 сразу, после включения скрипта, соответственно вражеский корабль не уплывает и ни кто не стреляет, так что спокойно подплываем к кораблю. 2. Для корпуса (красная полоска) 0 с одного выстрела. Сannon: 1. Подправил скрипт скорострельности, теперь скрипт используют именно игровые значения. Скрипты для версии игры 1.01 Отлично. можно дальше не ломать. [ENABLE]alloc(newMem, 64)alloc(newMem1, 64)alloc(newMem2, 64)label(returnHere)label(returnHere1)label(returnHere2)label(OK1)label(OK2)newMem:cmp edx,0 // У врага 0jne @f // Если наш, то не записываем новое значение жизни (xmm2)mov [esi+000002DC],0 // Если враг, то обнуляем ему жизнь.@@:jmp returnHerenewMem1:cmp ebx,0jne @ffild dword ptr [eax+18]fstp dword ptr [eax+14]jmp OK1@@:mov [eax+14],0OK1:movss xmm0,[eax+14]jmp returnHere1newMem2:cmp ebx,0jne @ffild dword ptr [ecx+000002B0]fstp dword ptr [ecx+000002B4]jmp OK2@@:mov dword ptr [ecx+000002B4],(float)0OK2:fld dword ptr [ecx+000002B4]jmp returnHere2ravenscry.exe+4CEA21:jmp newMemdb 90 90 90returnHere:ravenscry.exe+57FFF5:jmp newMem1returnHere1:ravenscry.exe+57F060:jmp newMem2nopreturnHere2:[DISABLE]ravenscry.exe+4CEA21:movss [esi+000002DC],xmm2 // Корпус (красная полоска)ravenscry.exe+57FFF5:movss xmm0,[eax+14] // Экипаж (зелёная полоска)ravenscry.exe+57F060:fld dword ptr [ecx+000002B4] // Такелаж (жёлтая полоска)dealloc(newMem)dealloc(newMem1)dealloc(newMem2) [ENABLE]alloc(newMem3, 64)alloc(newMem4, 64)label(returnHere3)label(returnHere4)newMem3:sub [ecx+2C],0jmp ravenscry.exe+2D621Ajmp returnHere3newMem4:fld [ecx+00000328] // Левыйfstp [ecx+0000032c] // бортfld [ecx+00000348] // Правыйfstp [ecx+0000034c] // бортmovss xmm0,[ecx+eax*8+0000031C]jmp returnHere4ravenscry.exe+2D620C:jmp newMem3returnHere3:ravenscry.exe+4C333C:jmp newMem4db 90 90 90 90returnHere4:[DISABLE]ravenscry.exe+2D620C: // Снарядыsub [ecx+2C],eaxjmp ravenscry.exe+2D621Aravenscry.exe+4C333C:movss xmm0,[ecx+eax*8+0000031C] // Скорострельностьdealloc(newMem3)dealloc(newMem4)
  14. Значит, не правильно используешь константу, пересмотри мои два видео. Там нужно примерно так. 1. Загружаем в регистр константу (с помощью которой разрабы XORируют значение). Пункт 1. не нужен, если константа не меняется. 2. В адресе зашифрованного значения раскодируем это значение с помощью регистра (или константы). 3. Прибавляем сколько нам нужно. 4. Кодируем назад.
  15. keng, Большой СЕНК!!! Т.е. для моего случая, который я описал нужно будет сделать так: fild [eax+08] // Допустим в [eax+08] лежит integer значение, переводим его во floatfstp [eax+04] // А в [eax+04] нужно записать это значение во float. Просто выгружаем без изменений. Правильно?
  16. Собственно вопрос в названии темы. 1. Могу я допустим записать просто так: i: dd 0mov i, dword ptr [eax+08] // Допустим в [eax+08] лежит integer значениеmov [eax+04],(float)i // А в [eax+04] нужно записать это значение во float.2. Если нет, то как правильно? 3. Если да, то могу ли я использовать вместо i регистр? Допустим так: push ebxmov ebx, dword ptr [eax+08] // Допустим в [eax+08] лежит integer значениеmov [eax+04],(float)ebx // А в [eax+04] нужно записать это значение во float.pop ebx4. Если да, то может есть всё-таки короче запись.
  17. Привет Baracuda, я же написал: И во-вторых, чтобы мне взломать опыт, мне нужно его получить, а чтобы начать получать опыт - мне нужно выжить (и ещё изучить интерфейс игры и управление), так что мне всё равно придётся взламывать почти всё. Нет MasterGH, опыт там точно закодирован.
  18. Baracuda, без знания английского мне всё равно сложно. Не понятно, что делать пришлось не много посмотреть видео-прохождение. Не понятно на какие кнопки жать. Вот пока написал скрипт на жизнь корабля и потопление вражеского корабля с одного попадания. Я знаю, что и ты и LIRW уже написали такие скрипты, но пусть будет на выбор: [ENABLE]alloc(newMem, 64)alloc(newMem1, 64)alloc(newMem2, 64)label(returnHere)label(returnHere1)label(returnHere2)label(OK2)newMem:cmp edx,0 // У врага 0jne @f // Если наш, то не записываем новое значение жизни (xmm2)mov [esi+000002DC],0 // Если враг, то обнуляем ему жизнь.@@:jmp returnHerenewMem1:cmp [ecx+8],#18je @fmov [ecx+14],0@@:jmp returnHere1newMem2:cmp ebx,0jne @fmov dword ptr [ecx+000002B4],(float)20jmp OK2@@:mov dword ptr [ecx+000002B4],(float)0OK2:fld dword ptr [ecx+000002B4]jmp returnHere2ravenscry.exe+4CEA21:jmp newMemdb 90 90 90returnHere:ravenscry.exe+2D3E31:jmp newMem1returnHere1:ravenscry.exe+57F060:jmp newMem2nopreturnHere2:[DISABLE]ravenscry.exe+4CEA21:movss [esi+000002DC],xmm2 // Корпус (красная полоска)ravenscry.exe+2D3E31:movss [ecx+14],xmm0 // Экипаж (зелёная полоска)ravenscry.exe+57F060:fld dword ptr [ecx+000002B4] // Такелаж (жёлтая полоска)dealloc(newMem)dealloc(newMem1)dealloc(newMem2) [ENABLE]alloc(newMem3, 64)alloc(newMem4, 64)label(returnHere3)label(returnHere4)newMem3:sub [ecx+2C],0jmp ravenscry.exe+2D621Ajmp returnHere3newMem4:mov [ecx+eax*8+0000031C],(float)100movss xmm0,[ecx+eax*8+0000031C]jmp returnHere4ravenscry.exe+2D620C:jmp newMem3returnHere3:ravenscry.exe+4C333C:jmp newMem4db 90 90 90 90returnHere4:[DISABLE]ravenscry.exe+2D620C: // Снарядыsub [ecx+2C],eaxjmp ravenscry.exe+2D621Aravenscry.exe+4C333C:movss xmm0,[ecx+eax*8+0000031C] // Скорострельностьdealloc(newMem3)dealloc(newMem4)
  19. Не буду ждать проверки. LIRW, плюс за скорость .
  20. Ок! Пусть посмотрит сперва первое видео, если нужно будет снимешь и второе.
  21. Так это и есть через торрент. Если взломал опыт, может я тогда не буду качать? Зачем два урока на одну тему?
  22. Что-то Акадо сегодня не радует - скорость закачки ну очень маленькая, а может раздающих ещё мало. MediGet (с помощью чего качаю) пишет 5 с половиной часов.
  23. 176 раз скачали

    Опции (в одном скрипте): 1. Бесконечные жизни 2. S-оружие 3. Мигание Скрипт написал 50% LIRW и 50 % Garik66. Трейнер написан LIRW. Тема обсуждалась здесь. Сам скрипт и таблица, если кому нужно, здесь. Всем удачного взлома!!!
×
×
  • Создать...

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

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