问题标签 [cheat-engine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 内存黑客中的指针扫描
如果您不熟悉指针扫描,请阅读这篇文章
我在使用作弊引擎在游戏或任何使用指针扫描方法的程序中查找静态地址时,现在我开始考虑在我自己的培训师中制作,所以经过一番搜索,我发现了这个: 伪代码
target 是要查找的动态内存地址
maxAdd 是任何偏移量的最大值
maxDepth 是指针路径的最大长度
pointerScan()pointerScan()
函数是扫描的入口点
。它接受参数 target(要查找的动态内存地址)、maxAdd(任何偏移的最大值)和 maxDepth(指针路径的最大长度)。然后循环遍历游戏中每个 4 字节对齐的地址,调用
rScan()
参数 address(当前迭代中的地址)、target、maxAdd、maxDepth 和 curDepth(路径的深度,在这种情况下始终为 1 )。
rScan()
该rScan()
函数从 0 和 maxAdd 之间的每个 4 字节对齐的偏移量中读取内存,如果结果等于 target 则返回。如果rScan()
在第一个循环中没有返回并且递归不是太深,它会增加 curDepth 并再次在每个 offset 上循环,为每次迭代调用自身。
address + offset
我对这个伪代码的 问题是我不明白为什么
我认为没有效果有人告诉我增加深度,但我看不到增加地址的点,因为第一个函数(pointerScan)循环遍历所有以 4 字节对齐的地址
assembly - 如何在知道指针的情况下获取内存地址
我应该采取什么措施才能到达这个地址:0DE1AC74 知道指针偏移量:194 5C 而这个:“bin.exe”+0121AC10 目标是使用指针而不是每次应用程序重新启动时搜索地址? 在此处输入图像描述
c# - Application.exe + 000000 读取内存
如您所见,我在获取 .exe 基地址时遇到了一些麻烦。
在这种情况下,假设是 Tutorial-x86_64.exe
如何获取进程地址?
希望任何人都可以提供帮助。
cheat-engine - 如何找到带偏移量的指针 [ecx+eax*4](地址偏移量?)
我看过这个话题:How to find a point with offset eax+ebx*4
但我仍然不明白如何确定 ebx?
这是我的情况:我正在尝试获取 Red Faction: Guerrilla (gfwl version) 的当前弹药指针
我看到当我加载另一个保存文件时,这个弹药的地址发生了变化。所以我使用“找出写入这个地址的内容”作为弹药指针(加载另一个保存文件后不再工作)
然后我加载另一个保存文件以查看它写入指针的内容:结果是带有偏移量的指针 [ecx+eax*4]
所以我做了一个这样的指针
ecx=00C1B988(地址00C1B988保存值:ECX=00C1B994)
EAX*4= 我不知道如何使用它,所以我只是输入:E71*4
但是当我加载另一个保存文件时它仍然不起作用。我卡在 E71*4,我应该为 E71 更换什么?我什至尝试搜索值 E71(或 3697),但似乎我无处可去。
c# - Unity3D Speed Hack 检测
我想知道,有没有办法在我们的游戏中检测到像游戏守护者这样的速度黑客应用程序?
我搜索了整个互联网,但没有得到满意的答案。
c++ - 读取进程内存多级指针(DLL 注入)
我已经成功地将 .dll 注入到 .exe 中,并且需要通过多级指针访问一个值。
这是一个获得正确值的工作示例:
我宁愿使用静态注入的 DLL,据我所知,我可以用 GetModuleHandle(NULL) 替换整个 dwGetModuleBaseAddress,因为它来自注入的 DLL。我也不需要打开任何进程。但是如果我不这样做,用什么来替换 ReadProcessMemory 呢?
我已经设法通过执行以下操作直接从静态地址访问值:
但无法弄清楚如何对指针和偏移量做同样的事情。
c# - C# 多级指针最后一次计算错误
我目前正在尝试在使用 Cheat Engine 找到的基本指针上实现 C# 中的内存读取。我 100% 确定我找到了正确的指针和偏移量,因为它们在 Cheat-Engine 中工作得很好,即使在重新启动之间也是如此。
我现在在 C# 中实现它,单级点没有任何问题,但由于某种原因,我无法让我的最后一个多级指针工作。
一切都很顺利,直到它必须添加的最后一个值,然后它返回一些“随机”的东西给我,这些是我找到的指针,我可以看到它在 Cheat Engine 中工作。
这是我在 C# 中的实现:
我使用以下方法调用它:
现在是“随机”部分,除了最后一个指针必须将 0x458 添加到指针 1E138F80 时,每个指针都正确添加,这应该返回 1E1393D8,但最终返回“41C00000”
我不确定这是否是由于我的最后一个指针不再是 4 个字节,或者是否由于某种方式发生了将其混淆的转换。这里的任何帮助将不胜感激!
assembly - 从 EAs FIFA 19 读取分数
你好,堆栈溢出者,
我准备创建一个程序,当它在足球模拟器 FIFA 19 中实际进球时播放主队的进球。
我知道游戏本身没有开放的 API。我看到使用的唯一方法是从内存中实际轮询结果。我不知道这是否符合游戏的最终用户许可协议,但我不打算以任何方式实际作弊。
对于研究,我从https://github.com/xAranaktu/FIFA-19---Career-Mode-Cheat-Table找到并查找了作弊引擎表。它提供了通过作弊引擎读取或写入比赛分数的能力。
可悲的是,我无法对表格进行逆向工程。我找到了从内存中读取值的代码。但是我很难弄清楚每条线的作用。
我对指针、堆栈是什么以及汇编程序的作用有基本的了解。但我无法理解这里发生的事情。也许你可以给我逐行描述正在发生的事情。
先感谢您。
python - 从python读取存储在绝对内存地址中的值
我使用作弊引擎找到了一个绝对地址(见下图) 内存地址
现在我想知道如何从地址“0x14340A654”中读取“1”的值
我尝试在 StackOverflow 上找到相同的内容,这就是我可以收集到的。
但这会返回一些乱码,例如
c++ - 没有使用指针和偏移量获得正确的地址
我是 C++ 的初学者,我试图在 CS:GO 中获得玩家的健康值,但我遇到了一些问题。使用 CheatEngine 我发现 playerbase 是“client_panorama.dll”+ 0xCBD6B4,健康值的偏移量是 0x100。效果很好,但是我无法将其转换为 c++。我正在使用 dll 注入,但在我注入的 DLL 中,我无法获得与 CheatEngine 中相同的地址。行政长官图片:https ://i.imgur.com/TlUwZV3.jpg
我在几个论坛上寻找解决方案,但我找不到一个。到目前为止,这是我的代码尝试:
但是通过这种尝试,我无法获得与 Cheatengine 中相同的 PlayerBase 地址。
背景:我不是在尝试破解,而是要学习如何从真实游戏中提取信息。将来我想尝试为真正的游戏编写 AI,因此如果你有更多的信息而不仅仅是游戏的视觉输出,这将非常有帮助。
谢谢你的帮助,瓦修斯