读书人

哪位高手能告诉小弟我这段代码是如何运

发布时间: 2012-09-04 14:19:30 作者: rapoo

谁能告诉我这段代码是怎么运行的?
[code=C/C++][/code]//hello.c by MentalDease
#include <stdio.h>
void print()
{
#pragma comment(linker, "/entry:print")
#pragma comment(linker, "/SECTION:.text,REW")
int mainCRTStartup();
void main();
__asm
{
MOV EAX, OFFSET main
MOV BYTE PTR[EAX], 0xB8//MOV EAX, 0x
MOV DWORD PTR[EAX+1], OFFSET SHOWSTRING
MOV WORD PTR[EAX+5], 0xE0FF// JMP EAX
}
mainCRTStartup();
SHOWSTRING:
printf ("i am MentalDease\n");
printf ("helloworld!!\n");
getchar();
}
void main()
{

}

[解决办法]
#pragma comment(linker, "/entry:print")
入口函数改成print

MOV WORD PTR[EAX+5], 0xE0FF // JMP EAX
跳到EAX寄存器内地址

预编译控制和汇编语言,技巧秀吗?
完全没价值的玩意。

读书人网 >C语言

热点推荐