原创 MessageBox 單線程同步問題

寫一個Windows程序 void SetPtr(class* pClass) {g_pClass=pClass; } void Do(){g_pClass->Do()}; Main() {SetPtr(xxx);Do(); } OnM

原创 獲取Kernel32的shellcode

如果你寫ShellCode 那麼必須從內存中尋找Kernel32的地址,然後才能通過PE結構找到LoadLibrary等函數地址 __declspec(naked) void* FindKernel32() { __asm {

原创 簡易VM混淆編程--使用C語言源碼

(1)本文提出一種不同尋常的混淆,即類似VMP的一種方法,但本文不提供類似VMP的自動工具 (2)本方法主要用於核心算法區域核心加密函數的混淆 (3)但本方法因沒有相關輔助開發工具,需要使用匯編的方式 首先,我們寫2篇代碼,實現一個基於堆

原创 一種通用 RAII 對象模板類

該類主要方便寫單行的利用RAII思想進行析構的對象, 兩種功能(1)通過Func(xxx)形式釋放(2)通過obj->Func(xxx)形式釋放 使用了比較猥瑣的__if_exist語法     #include <assert.h>

原创 ATL CString 的代碼 整理

從ATL整理的CString代碼 可以用於其他項目 #pragma once #include <assert.h> #include <mbstring.h> #include <atlexcept.h> #define IN_O

原创 VS2015 編譯EDK2

VS2015 編譯EDK2經過測試,如下方法爲可行:(1)下載edk2代碼,下載python2.7  + cx_Freeze-4.3.4.win-amd64-py2.7 + nasm + iaslcx_Fr

原创 XP crack ,解決高版本VS編譯程序不支持XP系統問題

;----------------------------------------------------------------------------------------------------------------------

原创 DebugView源代碼

自己實現一個DebugView #include "stdafx.h" #include "SimpleDbgView.h" #include "SimpleDbgViewDlg.h" #include <new> #include "

原创 Wow64cpu!CpuSimulate的一點點分析

.text:0000000078B625B0 CpuSimulate proc near ; DATA XREF: .text:off_78B63168o .text:0000000078B625B0

原创 VS2015 VS2017 MFC 動態佈局的改進

先提上代碼,然後再說怎麼回事// This is a part of the Microsoft Foundation Classes C++ library. // Copyright (C) Microsoft Corporation

原创 實現Lua腳本預處理工具

#include <map> using namespace std; /********************************************************************************

原创 VS2015 C++ 插件開發-代碼處理-格式化

// Command handler called when the user selects the "My Command" command. void OnMyCommand(CommandHandler* /*pSender*/,

原创 VS2015 中的MFC對話框動態佈局

From: http://mariusbancila.ro/blog/2015/07/27/dynamic-dialog-layout-for-mfc-in-visual-c-2015/ DynamicDialog Layout for

原创 ARM64 VS 編譯的C++程序導入表問題

如果存在這樣的導入表,可能是無法運行的,這是ARM64平臺,可能是微軟的編譯器的bug     我們寫一個ARM64彙編來屏蔽這個問題,當然這個方法不一定是最好的,經過分析,這些來自onecore.lib 因此最簡單的辦法就是忽略默認庫

原创 constexpr 進行編譯期間的字符串加密

constexpr 是C++11新的概念,一個constexpr 函數可以返回一個const 量,當傳遞的參數都是const 型的時候 根據這個特性,我們對代碼中硬編碼的字符串進行加密就可以防止被一些人輕易逆向識破或修改 代碼大致如下