Переглянути джерело

将重复的代码段定义成宏函数

Jeff Wang 3 роки тому
батько
коміт
b6de439c5e
1 змінених файлів з 25 додано та 0 видалено
  1. 25 0
      Source/Assist/Assist/Assist.cpp

+ 25 - 0
Source/Assist/Assist/Assist.cpp

@@ -21,6 +21,31 @@ DWORD dwESP = 0;
 DWORD dwESI = 0;
 DWORD dwEDI = 0;
 
+// 备份寄存器;
+#define BACK_REG __asm{\
+    mov dwEAX, EAX;\
+    mov dwEBX, EBX;\
+    mov dwECX, ECX;\
+    mov dwEDX, EDX;\
+    mov dwEBP, EBP;\
+    mov dwESP, ESP;\
+    mov dwESI, ESI;\
+    mov dwEDI, EDI;\
+}
+
+// 恢复寄存器;
+#define RECOVERY_REG(Back2Addr) __asm{\
+    mov EAX, dwEAX;\
+    mov EBX, dwEBX;\
+    mov ECX, dwECX;\
+    mov EDX, dwEDX;\
+    mov EBP, dwEBP;\
+    mov ESP, dwESP;\
+    mov ESI, dwESI;\
+    mov EDI, dwEDI;\
+    jmp Back2Addr;\
+}
+
 // 定义跳转函数;
 void Call_MyDisconnect();
 void Call_MyConnect();