脫ASPack2.12加殼的DLL檔案簡便方法

看雪資料發表於2004-12-18

前言:
看了別人的一些文章,為了用起來方便,總結了如下規律,其中*****1A3代表虛擬地址的後3位,估計大家和我的應該一樣

首先要做的就是用Lordpe檢視OEP,用OD載入後計算出基址大小。

1.dump檔案

在如下位置:

*****1A3 0F851EFFFFFF JNZ 00C700C7<======此處轉跳若干次

*****1A9 6800800000 PUSH 00008000 <======到此處後,即可完全DUMP

2.重定位表地址以及大小的確定:

*****1E5    8BB5 39050000   MOV ESI,DWORD PTR SS:[EBP+539]<=====重定位表段的開始地址賦給ESI
*****1EB    03B5 22040000   ADD ESI,DWORD PTR SS:[EBP+422]<=====轉換成VA
*****1F1    833E 00            CMP DWORD PTR DS:[ESI],0  <===ESI就是重定位表段開始的VA地址(1)

...........

*****25D    8BB5 41050000   MOV ESI,DWORD PTR SS:[EBP+541]<==ESI就是重定位表段結束的RVA地址(2)

重定位表RVA=[EBP+539],SIZE=(2)-(1)。

3.輸入表開始地址的確定:

*****278    BE 70C30000     MOV ESI,0C370      <=====輸入表段的開始地址賦給ESI

4.OEP確定

*****3AF    61              popad
*****3B0    75 08           jnz *****3BA
*****3B2    B8 01000000     mov eax,1
*****3B7    C2 0C00         retn 0C
*****3BA    68 D0E48B00     push *******<====真正入口點

然後用Lordpe修改OEP、重定位表RVA和大小以及輸入表RVA即可。

相關文章