C++反彙編基礎:Win32平臺(逆向例項、動態除錯例項)
Glorevo老師的C++反彙編基礎:Win32平臺(逆向例項、動態除錯例項)一共有20課時、用到技術:反彙編虛擬函式、反彙編單繼承、反彙編多繼承、涉及專案:C語言逆向例項、C++ 逆向例項、動態除錯例項。需要學習的同學可聯絡QQ704271672
課程主要探討如何讀懂 C/C++ 語言程式的反彙編程式碼。所謂反彙編,簡單的講就是把可執行檔案的二進位制編碼翻譯成組合語言程式碼,從彙編程式碼中讀懂原高階語言的含義。這是一套基礎課程,著重講解反彙編程式碼與 C/C++ 語法的對應關係,抓住最核心的知識點。
課程大綱:
第一講基本概念
暫存器
定址方式
常用匯編指令
C++內聯彙編
C++入口函式
反彙編識別main函式
第二講整型與浮點型
原碼、反碼與補碼
整數的表示
大端與小端位元組序
浮點數編碼方式
浮點暫存器與浮點指令
整型與浮點型相互轉換
第三講指標與常量
地址
指標
引用
常量
第四講布林型與字元(串)
布林型
字元型
字串的表示
字串求長度
字串操作
第五講表示式
無效表示式
賦值表示式
算術表示式
關係表示式
邏輯表示式
條件表示式
位運算表示式
第六講選擇結構
if語句
if… else語句
if… else if… else語句
switch… case語句
線性跳轉表
第七講迴圈結構
while語句
do…while語句
for語句
巢狀迴圈
break、continue和goto語句
各種迴圈結構的效率比較
編譯器對迴圈結構的優化
第八講變數
全域性變數
區域性變數
靜態變數
堆變數
第九講函式
引數傳遞
呼叫約定
返回值
ebp定址與esp定址
第十講陣列
陣列的儲存
下標定址與指標定址
二維陣列與多維陣列
區域性變數的陣列
函式引數的陣列
函式返回值的陣列
第十一講結構體與類
結構體與類的異同
物件的儲存與對齊
this指標與成員函式
成員變數的訪問
靜態成員變數
物件作為函式引數
物件作為函式返回值
第十二講建構函式
預設建構函式
區域性物件的建構函式
堆物件的建構函式
全域性物件的建構函式
區域性靜態物件的建構函式
第十三講拷貝建構函式
物件定義時進行拷貝
函式傳參時進行拷貝
函式返回物件的拷貝
預設拷貝建構函式
第十四講解構函式
區域性物件的析構
堆物件的析構
堆物件陣列的析構
全域性物件和靜態物件的析構
函式引數的析構
函式返回物件的析構
第十五講虛擬函式
虛擬函式與虛擬函式表
多型的實現
虛擬函式的識別
第十六講單繼承
繼承關係的記憶體佈局
繼承關係的構造與析構
繼承關係的虛擬函式
第十七講多繼承
多重繼承的記憶體佈局
多重繼承的型別轉換
多重繼承的構造過程
多重繼承的析構過程
多繼承與虛擬函式
第十八講C語言逆向例項
第十九講C++ 逆向例項
第二十講動態除錯例項
課程主要探討如何讀懂 C/C++ 語言程式的反彙編程式碼。所謂反彙編,簡單的講就是把可執行檔案的二進位制編碼翻譯成組合語言程式碼,從彙編程式碼中讀懂原高階語言的含義。這是一套基礎課程,著重講解反彙編程式碼與 C/C++ 語法的對應關係,抓住最核心的知識點。
課程大綱:
第一講基本概念
暫存器
定址方式
常用匯編指令
C++內聯彙編
C++入口函式
反彙編識別main函式
第二講整型與浮點型
原碼、反碼與補碼
整數的表示
大端與小端位元組序
浮點數編碼方式
浮點暫存器與浮點指令
整型與浮點型相互轉換
第三講指標與常量
地址
指標
引用
常量
第四講布林型與字元(串)
布林型
字元型
字串的表示
字串求長度
字串操作
第五講表示式
無效表示式
賦值表示式
算術表示式
關係表示式
邏輯表示式
條件表示式
位運算表示式
第六講選擇結構
if語句
if… else語句
if… else if… else語句
switch… case語句
線性跳轉表
第七講迴圈結構
while語句
do…while語句
for語句
巢狀迴圈
break、continue和goto語句
各種迴圈結構的效率比較
編譯器對迴圈結構的優化
第八講變數
全域性變數
區域性變數
靜態變數
堆變數
第九講函式
引數傳遞
呼叫約定
返回值
ebp定址與esp定址
第十講陣列
陣列的儲存
下標定址與指標定址
二維陣列與多維陣列
區域性變數的陣列
函式引數的陣列
函式返回值的陣列
第十一講結構體與類
結構體與類的異同
物件的儲存與對齊
this指標與成員函式
成員變數的訪問
靜態成員變數
物件作為函式引數
物件作為函式返回值
第十二講建構函式
預設建構函式
區域性物件的建構函式
堆物件的建構函式
全域性物件的建構函式
區域性靜態物件的建構函式
第十三講拷貝建構函式
物件定義時進行拷貝
函式傳參時進行拷貝
函式返回物件的拷貝
預設拷貝建構函式
第十四講解構函式
區域性物件的析構
堆物件的析構
堆物件陣列的析構
全域性物件和靜態物件的析構
函式引數的析構
函式返回物件的析構
第十五講虛擬函式
虛擬函式與虛擬函式表
多型的實現
虛擬函式的識別
第十六講單繼承
繼承關係的記憶體佈局
繼承關係的構造與析構
繼承關係的虛擬函式
第十七講多繼承
多重繼承的記憶體佈局
多重繼承的型別轉換
多重繼承的構造過程
多重繼承的析構過程
多繼承與虛擬函式
第十八講C語言逆向例項
第十九講C++ 逆向例項
第二十講動態除錯例項
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29212814/viewspace-1243670/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 基於SEH的靜態反除錯(例項分析)除錯
- 反除錯:雜項除錯
- Billy Belceb 病毒編寫教程for Win32 ----Win32 反除錯Win32除錯
- 基於VC平臺下C++反彙編與逆向分析研究——No.1C++
- 物件導向例項--常用元件物件元件
- 教你如何動態除錯 iOS App(反編譯App)除錯iOSAPP編譯
- Jack整理的Win32彙編基礎知識Win32
- Win32彙編的環境和基礎(轉)Win32
- Win32彙編的環境和基礎 (轉)Win32
- Watir基礎使用例項
- 動態刪除和新增table行程式碼例項行程
- 單例項刪除ASM例項單例ASM
- Python基礎——切片例項Python
- javascript動態刪除和新增表格行程式碼例項JavaScript行程
- 動態的新增或者刪除指定元素程式碼例項
- html元素的動態新增和刪除程式碼例項HTML
- GCC內聯彙編(2)GCC生成彙編程式碼簡單例項GC單例
- 啟動ASM 例項報錯ASM
- 三通基礎與例項
- js動態新增和刪除table表格行程式碼例項JS行程
- javascript動態刪除或者新增table表格行程式碼例項JavaScript行程
- .Net平臺下ActiveMQ入門例項MQ
- win32平臺下研究除錯SSL通訊機制Win32除錯
- 例項動態註冊跟蹤
- 動態VLAN詳細配置例項
- 彙編基礎
- 刪除ASM例項ASM
- iOS逆向之旅(基礎篇) — 彙編(一)— 彙編基礎iOS
- js動態建立table表格和刪除指定行列程式碼例項JS
- 多例項資料庫刪除例項資料庫
- Oracle 10G windows 平臺 DataGuard 例項Oracle 10gWindows
- javascript動態建立元素程式碼例項JavaScript
- 如何動態刪除css的偽物件選擇器程式碼例項CSS物件
- IOS動態除錯彙總-傻瓜版教程iOS除錯
- asm例項刪除方法ASM
- 在Windows平臺下修改Oracle例項不隨服務啟動WindowsOracle
- Python入門基礎知識例項,Python
- android原生開發recyclerview基礎例項AndroidView