LEG及BLUE2012去壳编译手把手视频教程

时间:2021-07-27 11:24:57
【文件属性】:

文件名称:LEG及BLUE2012去壳编译手把手视频教程

文件大小:64.39MB

文件格式:7Z

更新时间:2021-07-27 11:24:57

blueM2

VMProtect使用说明 一. 接口说明 //开始保护处标记(对应于功能设置:反调试、内存保护等等) VMProtectBegin(const char *); //开始虚拟化代码处标记(包括保护设置) VMProtectBeginVirtualization(const char *); //开始变异代码处标记(包括保护设置) VMProtectBeginMutation(const char *); //开始虚拟+代码变异标记处 VMProtectBeginUltra(const char *); VMProtectBeginVirtualizationLockByKey(const char *); VMProtectBeginUltraLockByKey(const char *); //保护结束处标记 VMProtectEnd(void); //检测调试 BOOL VMProtectIsDebuggerPresent(BOOL); //检测虚拟机 BOOL VMProtectIsVirtualMachinePresent(void); //映像文件CRC校验 BOOL VMProtectIsValidImageCRC(void); //解密被保护的名为字符串A char * VMProtectDecryptStringA(const char *value); //解密被保护的名为字符串W wchar_t * VMProtectDecryptStringW(const wchar_t *value); 二. 使用方法 1. 保护函数必须有始有终出现 VMProtectBegin、 VMProtectBeginVirtualization、 VMProtectBeginMutation、 VMProtectBeginUltra 必须有相对应的VMProtectEnd结束。 比如: void FunName() { VMProtectBegin(“FunName”); //最好用函数名,否则会出现重名冲突 ..... VMProtectEnd(); } 2. 保护的单元是函数,而不是整个EXE代码 比如: //不保护 void fun1(char* msg) { char* szmsg = "fun1 none vm"; OutputDebugString( szmsg ); } //虚拟化保护 int fun2( int x, int y ) { int n = x + y; VMProtectBeginVirtualization("fun2"); OutputDebugString( "x+y= %d" ); VMProtectEnd(); return n; } //虚拟化和变异保护 void fun3() { VMProtectBeginUltra("fun3"); fun1("fun3 call fun1"); VMProtectEnd(); fun2( 2, 4 ); } 3. 保护嵌套情况 void main() { char* szMsg = "proxxb vm sapmle!"; //不被保护 VMProtectBegin("main"); //被保护 OutputDebugString( "vm protect test." ); //被保护 fun1(szMsg); //函数内部自己去保护 fun2( 2, 4 ); //函数内部自己去保护 fun1(szMsg); //函数内部自己去保护 fun3(); //不被保护 VMProtectEnd(); getchar(); //不被保护 } 4. 字符串保护 应使用VMProtectDecryptStringA或VMProtectDecryptStringW函数保护名为字符串,被保护后,明晚字符串不再出现在内存,除非被解密的那一刻! char* Decrypt( char* key, char* buffer, long length ) { VMProtectBeginUltra("Decrypt"); .... VMProtectEnd(); } 调用方法: Decrypt( VMProtectDecryptStringA(“DecryptKey”), //此时密文密钥被解密 buffer, 512 ); 5. 其它函数,暂时不用 哪里错了,及时提出了,纠正!


【文件预览】:
LEG及BLUE2012去壳编译手把手视频教程
----LEG及BLUE2012去壳编译手把手视频教程.wmv(111.06MB)
----去壳教程.txt(4KB)

网友评论