怎样修改程序入口地址

 时间:2026-02-12 12:03:04

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 "C" int __cdecl mainCRTStartup(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容器怎么重新指定容器长度?
  • 什么是亚健康?
  • 热门搜索
    校园手抄报 手抄报素材 美丽家园手抄报内容 禁毒手抄报的内容 迎接期中考试手抄报 治污减霾手抄报 科技节手抄报资料 一年级教师节手抄报 护林防火手抄报 认识大自然的手抄报