怎样修改程序入口地址

 时间:2024-10-14 22:45:40

1、extern "C" int __cdecl mainCRTStartup(void); //注意:若源文件是.c结尾的话,不需要这一句

2、 __asm { MOV EAX, OFFSET main MOV BYTE PTR[EAX], 0xB8 //MOV EAX, 0x //mov MOV DWORD PTR[EAX+1], OFFSET SHOWSTRING //将printf语句地址放在eax+1处 MOV WORD PTR[EAX+5], 0xE0FF // JMP EAX:FFE0 }

3、#include "stdio.h"extern &孥恶膈茯quot;C" int __cdecl mainC伊怕锱鳏RTStartup(void); //注意:若源文件是.c结尾的话,不需要这一句void print(){ #pragma comment(linker, "/entry:print") #pragma comment(linker, "/SECTION:.text,ERW") #pragma comment(lib, "msvcrt.lib") int mainCRTStartup(); void main(); __asm { MOV EAX, OFFSET main MOV BYTE PTR[EAX], 0xB8 //MOV EAX, 0x //mov MOV DWORD PTR[EAX+1], OFFSET SHOWSTRING //将printf语句地址放在eax+1处 MOV WORD PTR[EAX+5], 0xE0FF // JMP EAX:FFE0 } mainCRTStartup();// __asm// {// leave// ret// }SHOWSTRING: printf("hello,world!\n"); __asm { xor eax,eax ret }}void main(){}

  • 女孩子适合学什么专业
  • 星空之遇如何移除黑名单里的用户
  • 如何处理课堂教学中的突发事件
  • c++中的deque容器怎么重新指定容器长度?
  • 什么是亚健康?
  • 热门搜索
    怎么搜索电脑里的文件 怎么减掉大肚腩 怎么设置手机彩铃 蒙娜丽莎卫浴怎么样 寻常的近义词 粗心的近义词 锤石怎么玩 淘宝怎么取消订单 没工作怎么办 怎么粘贴