【原創】OllyMachine Script之Dump易格式原體

看雪資料發表於2015-11-15

///////////////////////////////////////////////////////////////////////////////
//
//  FileName    :   DumpECode.oms(把易格式原體從PE檔案中分離出來)
//  Author      :   monkeycz
//  Date        :   2004-11-28 21:36
//  Comment     :   搜尋易格式所在的節,然後dump出易格式原體。由於沒有經過裝載器
//                  重定位,dump出來的原體也不需要修復重定位資訊。
//
///////////////////////////////////////////////////////////////////////////////


mov reg04,0x400000                        //ImageBase,需要自行修改
invoke Search, reg04, "2E65636F64"        //查詢易格式所在節
cmp reg00,-1
je nofind                                 //沒有找到:(
mov reg01,reg00

add reg01,0x0C                            //到VirtualAddress處
invoke ReadMemLong,reg01,0x04             //讀取易格式的VirtualAddress
mov reg05,reg00
//invoke PrintNum, reg05, 16
add reg05,reg04                           //當前易格式所在的節記憶體中的偏移
//invoke PrintNum, reg05, 16

add reg01,0x04                            //到SizeOfRawData處
invoke ReadMemLong,reg01,0x04             //取出易格式的尺寸
mov reg03,reg00
//invoke PrintNum, reg03, 16

invoke InputText,"Please input the filename:"
cmp reg00,0x00
je cancel
invoke DumpMem,reg05,reg03,FreeBufferReg  //dump
je error
invoke msg,"Dump the E code finish!"
halt

nofind:
invoke msg,"No find the E code!"
halt

cancel:
halt

error:
invoke msg,"Write file error!"
halt上非

相關文章