内联ASM jmp到新的内存
|
因此,我想从文件中加载一组汇编指令,然后执行这些指令。
要么
我想再次从文件(非exe)加载已编译的机器代码
我的想法:
到目前为止,我已经学习了足够的内联汇编语言,可以轻松地使用c / c ++变量。
asm volatile (
\"mov %1, %%ecx;\" // yes unnecessary, I know
\"add %2, %%ecx;\" // I know they\'re already loaded in a register
\"mov %%ecx ,%0 ;\"// just demonstrating what I\'ve learned
:\"=r\"(address)
:\"r\"(address),\"r\"(offset)
:\"%ecx\"
);
我已经开始学习操作码,并且已经获得了一些x86手册。我了解(某种程度上)硬件在基本级别上如何工作。
我知道我可以使用fstream的c ++将文件加载到内存中,我想知道是否有一种方法可以从该空间执行内存,或者它是否在内存的不可执行部分中? ..
原因:
目前,有几个原因我想这样做。我希望为我的程序创建一个基本的加密,以便有一个简单的密钥来运行该程序。虽然我可以轻松地加密和解密实际代码,但我希望程序在每次运行时都不会被加密,并且永远不要存储在硬盘驱动器上。我知道一些问题,但是我对此很感兴趣。
最后的问题:
我可以在asm中的c ++中从程序的内存空间执行机器代码吗?
asm是否必要?
还有其他方法可以更有效地完成此任务,如果可以,这些方法是什么?
我还在为正在制作的鼠标共享程序读一些DLL注入文件(两台计算机彼此相邻,都有显示器,但是您只有一个鼠标/键盘。而且我想知道在哪里我可以在该主题上找到一些很好的资源吗?Google很有帮助,但是我对某些IRC频道或类似内容感兴趣,无论如何,谢谢阅读!
没有找到相关结果
已邀请:
2 个回复
期差骇蓟
在这里,您正在为缓冲区分配内存。将指令放入缓冲区,然后从分配的内存中创建函数指针。请注意,内存也受到保护。 阅读本文以获得更好的理解,它还为您提供了Windows的等效功能。
钨蜡唤喉晤