1.コンパイル
2.API
3.メモリ
4.プロセス
5.ウィンドウ
あなたは、アセンブリ命令に精通している必要があります。
PUSHの スタック
MOVの 割り当て
JMP(JNZ JE) ジャンプ
CALLは、 関数を呼び出します
RETの 復帰
CMP 比較
テストの 比較
何を登録し、使用することを知っている必要があります
EAXレジスタの蓄積(一般的には、計算結果、呼び出しの結果)
EBXレジスタベースアドレス(ベースアドレスが格納されています)
ECXレジスタ数(カウントサイクル)
EDXデータレジスタ(データ)
ローカル変数またはパラメータEBP
ESPスタック
EDIインデックスレジスタオブジェクト(オブジェクト交換)
ESIソース・インデックス・レジスタ(ソース交換)
EIP現在の関数の動作位置
私たちは地域によってコンパイルされた形式の機能を理解することができるようにプログラムが、逆コンパイルすることはできません。
割り当ては、関数または変数アセンブラコードであってもよいです。
API:APIコールと読み取りAPI
Windowsシステム上のプログラムは、API関数を呼び出します、我々は唯一の主要なAPI関数を見つけるフックが予想外の効果に達することができ行なわ
メモリ:プログラムがメモリに格納されている学習
すべてのデータがメモリ内にある、このアドレス我々コールメモリアドレスのメモリアドレスが存在します
プロセス:フックが動作中です
各プロセスは、より多くのDLLの、DLLを注入し、ちょうどexeファイルフックを多く含む、株式を除き、独立して
ウィンドウ:メッセージメカニズム
Windowsシステムは、メッセージに基づいています