原创 逆向-識別循環

do - while 循環(後面 cmp + J指令) int v1 = 0; 0033172E C7 45 F8 00 00 00 00 mov dword ptr [v1],0 do {

原创 彙編-識別條件分歧

簡介: 本文主要內容是,反彙編過程中識別條件分歧。進行分析之前必須明白J系列指令,主要是JMP無條件跳轉和 JE(JNE)、JZ(JNZ)、JA(JNA)、JB(JNB)、JG(JNG)、GL(GNL)等指令。 上面指令中 E -

原创 C語言和C++的一些區別

C語言和C++的一些區別 C++在語法上比C語言有了一些改進 C語言的變量申明必須放在函數最上面,C++沒有這個限制 C語言的結構體不能直接當數據類型使用,必須加上struct關鍵字,而C++沒有限制 C語言的結構體使用: st

原创 C++類的學習,規範命名,構造函數,初始化列表等

1. 規範命名 在使用類(class)寫程序時有以下規範 成員變量的命名 //m代表member,同時標清成員的類型和具體名稱 int m_iAge; string m_strName; 成員函數及其參數的命名 //一般會有設

原创 C++ 結構體內存方式

對於這個問題,主要有兩方面的內容。其一,內存優化,其二,存儲順序 一、內存優化 所謂的內存優化是結構體成員的存儲按成員中數據寬度最寬的成員對齊的一種內存對齊方式。這樣做的最大好處就是可以提高處理速度(感興趣的可以查一下資料),但會增大存儲

原创 MFC原理簡介,新手看懂MFC代碼

在編程時程序員會看到一個以工程名爲類名的類創建的名爲 theAPP 的對象,這個對象就是我們要寫的程序。(該類是 CWinApp的派生類) 上面提到的以工程名爲類名的類有一個成員函數,其函數原型爲 BOOL InitInstance()

原创 彙編結構體聲明、定義、使用

一、結構體聲明規則 結構名 STRUC [Alignment][, NONUNIQUE] 數據定義語句序列 結構名 ENDS 代碼示例: .DATA aligned_student STRUC 4 m_Age

原创 C++只讀成員函數、只讀對象

什麼是隻讀成員函數?   只讀成員是C++中結構體或類的成員函數,在函數括號右邊用const關鍵修飾,只讀成員函數的代碼中成員變量不能爲作爲左值,也就是說只讀成員函數不能修改該成員變量,只能讀取成員變量。   只讀成員函數存在的意義只有

原创 Ring3枚舉進程

在Ring3枚舉進程通常有一下幾種方法:ToolHelper32PsapiZwQuerySystemInformationWTSEnumerateProcesses一、ToolHelper32頭文件:TlHelp32.h關鍵函數:Crea

原创 動態內存申請 new、delete、delete[]、delete()

申請單個數據空間 int* a = new int(50); //(50)是初始化爲50 delete a; 申請多個數據空間 int* a = new int[20]; delete[] a; 注意!!!   當動態申

原创 根據函數名稱導出函數

根據函數名稱導出函數 RVA(相對虛擬地址)和VA(虛擬地址)的關係 VA = RVA + DOS頭地址(模塊基地址) 相關的RVA IMAGE_DOS_HEADER結構體中的e_lfanew(LONG),指向NT頭 NT頭中IMA

原创 Windows 7 運行VS2015編譯的軟件提示缺少ucrtbased.dll文件的解決辦法

這個dll是Win10 SDK中的,正解是安裝Win10 SDK 下面是解決辦法 打開VS2015安裝包 進入packages\Win10_UniversalCRTSDK 安裝msi包即可 網上也有其他方法,比如VS2015編譯

原创 Shell函數返回探究

不多說,直接附Demo代碼加詳細註釋 #1-變量接受echo的輸出值 fun1() { echo "1" } result=`fun1` #接收方式1 result=$(fun1) #接收方式2 echo $resul

原创 解決VS2015中不顯示python模板的問題

問題描述: 我的VS2015只安裝了C++,後來通過安裝包安裝了python工具,但是在新建項目的時候在模板列表中python那一欄顯示的依然是“安裝針對Visual Studio 的 Python 工具” 解決方法: 下載安裝 Pyth

原创 彙編proto、proc、invoke僞指令與函數聲明、函數定義、函數調用

一、proto僞指令–函數聲明 功能和高級語言中的函數聲明一樣,在代碼最前面寫函數聲明,在後面寫函數定義 proto僞指令的格式 函數名 proto [距離] [語言] [參數1]:數據類型,[參數2]:數據類型,…… 代碼示例: A