一、逆向修改,增加記事本功能(參考1)
將視窗位址a=01003429,替換為0100874c,再跳到視窗位址a。
exwndproc函式式通過lordpe對輸入表進行匯入dll和響應的函式。
exwndproc(const dword reserved,
hwnd hwnd,uint umsg,wparam wparam,lparam lparam);//5個引數,主要是有兩個call導致的
//windows內部在呼叫,wndproc函式時,從左到右入棧,4個引數、內部位址a,即下條指令的位址,
//call exwndproc時,又壓入下條指令位址,這時棧空間是,4個引數、內部位址a、跳轉位址b、
//exwndproc執行完返回時,esp指向內部位址a,就回到了原來的狀態
整體來說:先跳過去,呼叫匯入的dll函式,再跳到原函式輸入地方。
1、下斷點bp registerclas***,找到視窗函式位址
2、restorator 2009編輯exe選單資源,新增選單
3、編寫exwndproc函式,增加選單功能
4、loadpe載入exe檔案,在輸入表中,增加dll和函式
5、在exe中的檔案text節空白處,新增上面的跳轉**
6、完二、**分析
dword exwndproc(const dword reserved, hwnd hwnd, uint umsg, wparam wparam, lparam lparam)
}break;
}return 0;
}//to_upper(hwnd)實現
g_hedit = getdlgitem(hwnd,0xf)//讀取edit框的控制代碼,
//獲取text長度,new乙個相同大小的記憶體,再getwindowtext到記憶體中,再charupper(記憶體字元區),setwindowtext顯示
//to_lower實現,同上,只不過用函式charlower來轉換。
//count(hwnd)實現
wsprintf(char strtext[max_paht],_t("字數為:%d"),getwindowtextlenght)
messagebox(strtext)
//加密實現
//獲取長度,對每個字元進行加密,再顯示,送到edit內部,由它管理
三、拓展(參考2)
1、用lordpe新建1個資料段,1個**區段
找到選單命令處理訊息wm_command函式入口處,跳轉到新建的**區,編寫**即可。
參考:1、
為記事本增加功能
2、逆向初步,增加xp記事本功能
3、程式設計擴充套件「記事本」功能
登錄檔 給右鍵增加 去除「用記事本開啟」
給右鍵增加 用記事本開啟 windows registry editor version 5.00 hkey classes root shell notepad 用記事本開啟 當前檔案 hkey classes root shell notepad command hex 2 6e,00,6f,0...
Vue實現記事本簡單功能 新增刪除統計清空隱藏
上次一些補充 html部分 js部分 new vue 結果 按照012排列的乙個列表 無奈 難過 開心 記事本新增 data methods 刪除 複習 splice 只提新增的 js部分 methods remove function index html部分 統計 列表元素個數 item lef...
如何充分利用手機便簽或記事本功能
不過,怎樣才能充分利用手機上的便簽或記事本功能,幫助自己快速備忘呢?看到這裡,可能很多人都會疑惑 開啟手機上的便簽或記事本,正常記事備忘就可以了唄,難道還有其他可以開發的功能?下面,就讓小編來給大家解開這個疑惑吧!其次,雲便簽有 時間軸 功能,時間軸自動備份個人便簽內容記錄 所以,使用者可以去時間軸...