1樓:
用IDA反彙編過乙個8M的so鏈結檔案,花了乙個月,手動改了很多指令來使之相容並通過編譯,以C語言函式為單位,做成了內嵌彙編,編譯成功且執行與之前相同。
2樓:
剛好最近有想做這件事,首先上答案,理論上完全可以。
下面推薦一些資源
objdump的結果不符合組合語言編譯器的語法,不過objconv可以,並且支援多種語法。
cfi這工程是為了對二進位制程式加control flow integrity (CFI),所以有一次反彙編然後再編譯的過程,裡面指令碼實現了轉換過程,並且反彙編就是來自objdump的輸出,詳細過程可以看工程裡的dump2asm.pl
Patcherex這個工程為了給二進位制程式打patch,裡面有兩個後端,乙個的方式就是比較傳統的detour,另乙個方法是利用angr中的reassembler(https://
3樓:zephyr z
取決於什麼樣的修改。如果只是簡單替換幾條指令並且新指令長度和原來的一樣,那麼是有可能的
如果修改後長度不同那麼基於PC的相對定址就變了如果不做相應修改的話很大可能無法正確執行
人類的火力輸出可以有多猛?
人類火力很猛 但只能和人比 和自然母親比一下,提鞋都不配 隨便乙個很小很小的火山,就是看著像個土包一樣的只要冒著煙的,其能量就超過人類能夠造出的火力,之和好像沒有那麼誇張畢竟這要啥力量才可以讓你在地表看到冒煙,要知道地球的直徑。毛子挖到10000多。連菸都沒冒出來 阿涼 我想起來某動漫 超神學院 裡...
如何正確的理解漏極開路輸出跟推挽輸出?
linzw 當初我看到漏極開路跟推挽兩種結構時候,就想為什麼會有這兩種的設計存在?肯定不是閒的沒事蛋疼。如果能理解這兩種設計的目的,個人覺得非常有助於記憶!對於驅動裝置的IO來說,在不知道被驅動裝置是多少V作為邏輯高收入,0V為邏輯低大多數情況下通用,OD是個非常好的選擇,因為可以自由選擇外部上拉電...
有什麼專業可以不斷看書並輸出自己的觀點?
一棵柿子砸頭上 歷史學呀,天天就幹這個。除了畢業不好找工作,找了工作不怎麼賺錢,搞研究學著學著迷茫我是誰我在哪我在幹什麼,掉頭髮,容易出現掉書袋變油膩傾向 好像完美符合要求 不應該以給別人帶去價值為起點,然後去看書,然後用書中的知識來創造價值嘛。單純的看書輸出觀點,但是給別人帶去不了價值,帶去不了價...