assembly - Ollydbg - 更改字符串的第一个字母

标签 assembly reverse-engineering ollydbg

我用 C++ 编写了一个小型 .exe 程序。

int main()
{                         

    string myString = "Hello";
    printf("%s", myString);    
    return 0;
}

我需要使用 ollydbg 来替换字符串中的第一个字母,然后打印它。 或者,我可以打印完全不同的字符串。 我已经将.exe文件加载到ollydbg中,发现执行是在调用printf的地方,但找不到导致它的JMP命令。

如何克服这个问题? 我在 Google 上搜索了教程,但没有找到与此类似的内容。

提前致谢。

最佳答案

您可以使用以下命令找到该字符串 上下文菜单->搜索->所有引用的文本字符串

在与引用相同的窗口中,您可以使用 CTRL+E(二进制编辑)编辑地址

关于assembly - Ollydbg - 更改字符串的第一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35130171/

相关文章:

c - 如何在旧台式计算机上构建小型操作系统?

windows - IDA Pro 反汇编显示 ?而不是 .data 中的十六进制或纯 ascii?

exe - 是否可以修改 EXE 以要求以管理员身份运行?

linux - 如何在多线程程序中使用 Ollydbg?

debugging - 在打包的 EXE 文件中查找 OEP

从 c 调用汇编函数

linux - 如何在 Gasm (Gnu Assembler) 中比较符号和字符串?

assembly - 有没有关于指令 `jmpi`的权威文件

google-chrome - 如何使用 Google Chrome 的 devtools 配置文件报告(cpuprofile 文件)计算自身时间和总时间

c - 如何将任意字节发送到 gdb 中程序的 STDIN?