简单的加花指令和加密MessageBox

类别:编程语言 点击:0 评论:0 推荐:

不要调用AfxMessageBox,因为mfc只是对api的封装。反汇编后显示的还是api。

例子:

char m[]="你成功了!!";
char n[]="恭喜!!";? 

__asm {
mov ebx,esp  //
PUSH? MB_OK OR MB_ICONINFORMATION
 lea  edx , m  // 全局变量用 OFFSET
 push  edx
 LEA  EAX, n // 局部变量用 LEA
 PUSH EAX
 PUSH 0


 jnz label1 //花指令
 jz label1
 _EMIT 0E8h


label1:
 lea eax,[MessageBoxExA+4] //不直接调用MessageBoxExA
 sub eax,4 CALL DWORD PTR [EAx] // eax为MessageBoxExA
 mov esp,ebx //为了平衡堆栈,我也不知道为什么要,应该不要的,但不要不行
  }

本文地址:http://com.8s8s.com/it/it28479.htm