aboutsummaryrefslogtreecommitdiffstats
path: root/bruiser/lua-scripts/df-demo.lua
diff options
context:
space:
mode:
authorbloodstalker <thabogre@gmail.com>2018-04-27 11:52:34 +0000
committerbloodstalker <thabogre@gmail.com>2018-04-27 11:52:34 +0000
commitde305c003e15bad254e92054d17a0655215bdfb8 (patch)
treeccf04588e9ceb1aca540a87ff3db21dcb00803b4 /bruiser/lua-scripts/df-demo.lua
parentfinally updated the readmes. they make more sense now. (diff)
downloadmutator-de305c003e15bad254e92054d17a0655215bdfb8.tar.gz
mutator-de305c003e15bad254e92054d17a0655215bdfb8.zip
relicensed everything excluding safercpp to GPL-3.0. fixes #31. now there is ramdump. i just need to write a luawrapper.
Diffstat (limited to 'bruiser/lua-scripts/df-demo.lua')
-rw-r--r--bruiser/lua-scripts/df-demo.lua45
1 files changed, 4 insertions, 41 deletions
diff --git a/bruiser/lua-scripts/df-demo.lua b/bruiser/lua-scripts/df-demo.lua
index 7db2f85..916db00 100644
--- a/bruiser/lua-scripts/df-demo.lua
+++ b/bruiser/lua-scripts/df-demo.lua
@@ -1,59 +1,22 @@
-xobj = require("lua-scripts.xobj")
-asmrw = require("lua-scripts.asmrw")
+xobj = require("xobj")
+asmrw = require("asmrw")
colors = require("ansicolors")
df_exe = "/home/bloodstalker/df/df_44_09_linux/df_linux/libs/Dwarf_Fortress"
-function main()
- local text_section = xobj.getTextSection(df_exe)
-end
-
-function pretty_dump()
- count = 0
- local text_section = xobj.getTextSection(df_exe)
- io.write(colors("%{blue}".." ".."\t".."00 ".."01 ".."02 ".."03 ".."04 ".."05 ".."06 ".."07 ".."08 ".."09 ".."0A ".."0B ".."0C ".."0D ".."0E ".."0F"))
- for k,v in pairs(text_section) do
- if count % 16 == 0 then
- print()
- io.write(colors("%{blue}".."0x"..string.format("%03x",count)), "\t")
- end
- io.write(colors("%{green}"..string.format("%02x", v)), " ")
- count = count + 1
- end
- count = 0
- print()
-end
-
function jmp_table_test()
io.write(colors("%{cyan}".."lua:getting text section...\n"))
local text_section = xobj.getTextSection(df_exe)
local rodata = xobj.getRODataSection(df_exe)
for k,v in pairs(rodata) do
- if v > 32 and v < 127 then
+ if v > 33 and v < 127 then
io.write(string.format("%c",v))
else
io.write(" ")
end
end
io.write("\0\n")
- io.write(colors("%{green}".."lua:got text section.\n"))
- local head = jmp_s_t()
- -- messes up the stack. I could fix it but not sure why i would want to keep this in
- --local head2 = jmp_s_t:new()
- io.write(colors("%{cyan}".."lua:calling getjmptable\n"))
- --head = getjmptable(#text_section, text_section)
-
- --if false then
- --while head:inext() ~= nil do
- --head:dump("entry")
- --io.write("type:", head:type(), "\tlocation:", "0x"..string.format("%x", head:location()))
- --print()
- --head = head:inext()
- --end
- --end
end
---main()
---pretty_dump()
-jmp_table_test()
+asmrw.strings(df_exe)