diff options
author | bloodstalker <thabogre@gmail.com> | 2018-02-24 09:01:00 +0000 |
---|---|---|
committer | bloodstalker <thabogre@gmail.com> | 2018-02-24 09:01:00 +0000 |
commit | 65db9c78c26456ac3c9b58b3e74b6e8f0e3da201 (patch) | |
tree | acad61f4a4979c8c96b144c3c984ff5687b71326 /bruiser/lua-scripts/demo2.lua | |
parent | removed lua docs [ci skip] (diff) | |
download | mutator-65db9c78c26456ac3c9b58b3e74b6e8f0e3da201.tar.gz mutator-65db9c78c26456ac3c9b58b3e74b6e8f0e3da201.zip |
bruiser will now run a lua script before startup so now you can easily use your lua rocks from inside bruiser. added a new demo using bruisers xobj module. added a new bruiser option for the default lua script to run prior to bruiser startup. updated the readme for bruiser.
Diffstat (limited to '')
-rw-r--r-- | bruiser/lua-scripts/demo2.lua | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/bruiser/lua-scripts/demo2.lua b/bruiser/lua-scripts/demo2.lua new file mode 100644 index 0000000..3b6007a --- /dev/null +++ b/bruiser/lua-scripts/demo2.lua @@ -0,0 +1,35 @@ + +xobj = require("lua-scripts.xobj") +colors = require("ansicolors") +elf_file = "../bfd/test/test.so" +elf_exe = "../bfd/test/test" + +function main() + xobj.getSO(elf_file) + local add2_code = xobj.codeTableByName_number("'add2'") + local sub2_code = xobj.codeTableByName_number("'sub2'") + local adddouble_code = xobj.codeTableByName_number("'adddouble'") + local subdouble_code = xobj.codeTableByName_number("'subdouble'") + local triple_code = xobj.codeTableByName_number("'triple'") + local quad_code = xobj.codeTableByName_number("'quad'") + local passthrough_code = xobj.codeTableByName_number("'passthrough'") + + --xobj.printFuncSizes() + + xobjregister(add2_code, "add2") + xobjregister(sub2_code, "sub2") + xobjregister(adddouble_code, "adddouble") + xobjregister(subdouble_code, "subdouble") + xobjregister(triple_code, "triple") + xobjregister(quad_code, "quad") + xobjregister(passthrough_code, "passthrough") +end + +function asm_rewriter() + local text_section = xobj.getTextSection() + for k,v in pairs(text_section) do io.write(colors("%{blue}"..string.format("%02x",k)),":",colors("%{green}"..string.format("%02x",v)),"\t") end + io.write("\n") +end + +--main() +asm_rewriter() |