FENIX145 Опубликовано 19 августа, 2020 Поделиться Опубликовано 19 августа, 2020 (изменено) Ребята, всем привет. Есть у кого-то пример совмещения в одном скрипте двух, работающих с 2 различными ячейками памяти (сигнатурами)? Поясню для чего нужно: Хочу сделать бесконечное кол-во поинтов, но когда нажимаешь на + дергается одна инструкция, когда нажимаешь на - вторая. Но по факту все это одна сущность и разделять смысла не вижу. Вчера пропарился часа 3 пытаясь объединить. Но в итоге при активации скрипта происходила дичайшая дичь. Одни конструкции заменялись другими Вот собственно сама болванка: Спойлер [ENABLE] aobscanregion(INF_SKILLS,SkillValueHUD:Inc, SkillValueHUD:Inc+170, 89 48 5C 48 63 46 34) aobscanregion(INF_SKILLS2,SkillValueHUD:Dec, SkillValueHUD:Dec+b1, 89 48 5C 48 8B CE) alloc(newmem,$1000) label(lbl_INF_SKILLS) label(lbl_INF_SKILLSRet) registersymbol(INF_SKILLS) label(lbl_INF_SKILLS2) label(lbl_INF_SKILLS2Ret) registersymbol(INF_SKILLS2) newmem: lbl_INF_SKILLS: movsxd rax,dword ptr [rsi+34] jmp lbl_INF_SKILLSRet lbl_INF_SKILLS2: mov rcx,rsi jmp lbl_INF_SKILLS2Ret INF_SKILLS: jmp lbl_INF_SKILLS nop 2 INF_SKILLS2: jmp lbl_INF_SKILLS2 nop lbl_INF_SKILLSRet: lbl_INF_SKILLS2Ret: [DISABLE] INF_SKILLS: db 89 48 5C 48 63 46 34 unregistersymbol(INF_SKILLS) INF_SKILLS2: db 89 48 5C 48 8B CE unregistersymbol(INF_SKILLS2) dealloc(newmem) Изменено 19 августа, 2020 пользователем Xipho Правила невнимательно читал? Код длиной более 10 строк должен быть дополнительно убран под спойлер. Ссылка на комментарий Поделиться на другие сайты Поделиться
FENIX145 Опубликовано 19 августа, 2020 Автор Поделиться Опубликовано 19 августа, 2020 (изменено) Так, разобрались с @TechnoBOY что можно изменить код, чтобы он выглядел так и все заработает: Спойлер [ENABLE] aobscanregion(INF_SKILLS,SkillValueHUD:Inc, SkillValueHUD:Inc+170, 89 48 5C 48 63 46 34) aobscanregion(INF_SKILLS2,SkillValueHUD:Dec, SkillValueHUD:Dec+b1, 89 48 5C 48 8B CE) alloc(newmem,$1000) label(lbl_INF_SKILLS) label(lbl_INF_SKILLSRet) registersymbol(INF_SKILLS) label(lbl_INF_SKILLS2) label(lbl_INF_SKILLS2Ret) registersymbol(INF_SKILLS2) newmem: lbl_INF_SKILLS: movsxd rax,dword ptr [rsi+34] jmp lbl_INF_SKILLSRet lbl_INF_SKILLS2: mov rcx,rsi jmp lbl_INF_SKILLS2Ret INF_SKILLS: jmp lbl_INF_SKILLS nop 2 lbl_INF_SKILLSRet: INF_SKILLS2: jmp lbl_INF_SKILLS2 nop lbl_INF_SKILLS2Ret: [DISABLE] INF_SKILLS: db 89 48 5C 48 63 46 34 unregistersymbol(INF_SKILLS) INF_SKILLS2: db 89 48 5C 48 8B CE unregistersymbol(INF_SKILLS2) dealloc(newmem) и теперь у меня след вопрос: Какого .... оно не ушло в цикличность? Разве код не интерпретируемый? Если да, то здесь явно должна быть цикличность так как lbl_INF_SKILLS джампится на lbl_INF_SKILLSRet а ниже там дергается INF_SKILLS2 и пошло поехало, там не только зависимость, но и кривые инжекты получаются. НО ОНО РАБОТАЕТ? КАК (ПОЧЕМУ)? Изменено 19 августа, 2020 пользователем Xipho То же замечание, что и выше Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 19 августа, 2020 Поделиться Опубликовано 19 августа, 2020 Тема по объединению скриптов же есть уже. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 19 августа, 2020 Поделиться Опубликовано 19 августа, 2020 11 часов назад, FENIX145 сказал: Вот собственно сама болванка: и первый и второй скрипты не верны. ЗЫ: а не - второй верный. Спойлер Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения