function S_Pointer(s,o,b) for i,v in ipairs(gg.getRangesList(s[1])) do if v.state==s[2] then a=v.start+o[1] for i=2,#o do a=gg.getValues({{address=a,flags=b and 32 or 4}})[1].value+o[i] end return string.format('0x%X',a) end end end function so(n) return gg.getRangesList(n)[1].start end function freeze(a,b,c,d) if type(a)=="number" and type(b)=="number" then gg.setValues({{address=a,flags=b,value=c}}) gg.addListItems({{address=a,flags=b,value=c,freeze=true}}) else local t={} for i=1,#b do t[i]={address=a+b[i],flags=c,value=type(d)=="table" and d[i] or d} end gg.setValues(t) local f={} for i=1,#b do f[i]={address=a+b[i],flags=c,value=type(d)=="table" and d[i] or d,freeze=true} end gg.addListItems(f) end end Bypass=function() local so = gg.getRangesList('libanogs.so')[1].start gg.setValues({{address=so+0x4B3548, flags=4, value=-698416192}}) end Main=function() Get=gg.choice({ "Crash>", "Bypass", "Exit" },1,"") if Get == 1 then Bypass() gg.alert("OK") elseif Get == 2 then local so = gg.getRangesList('libanogs.so')[1].start gg.setValues({ -- CRC调用栈 {address = so + 0x1C5C84, flags = 4, value = "~A8 MOV W0, WZR"}, {address = so + 0x1C6098, flags = 4, value = "~A8 MOV W0, WZR"}, {address = so + 0x1C6300, flags = 4, value = "~A8 MOV W0, WZR"}, -- 举报接口 {address = so + 0x1C8DF0, flags = 4, value = 335544817}, -- vm_auto_defence {address = so + 0x213000, flags = 4, value = -698416192}, -- memcpy扫描 {address = so + 0x33054C, flags = 4, value = -721215457}, -- hash扫描 {address = so + 0x39F598, flags = 4, value = 335544356}, -- crc32扫描 {address = so + 0x3DFAE0, flags = 4, value = 943720076}, -- case16扫描 {address = so + 0x3E4694, flags = 4, value = 943719467}, {address = so + 0x37C958, flags = 4, value = -721215457} }) local so2 = gg.getRangesList('libanort.so')[1].start gg.setValues({ {address = so2 + 0xA52E4, flags = 4, value = -1440807968}, {address = so2 + 0xA52E8, flags = 4, value = -698416192}, {address = so2 + 0x115E60, flags = 4, value = 943719435}, {address = so2 + 0x122E90, flags = 4, value = -1440807968}, {address = so2 + 0x122E94, flags = 4, value = -698416192}, {address = so2 + 0x11B384, flags = 4, value = 335544329} }) gg.alert("OK") elseif Get == 3 then os.exit() end end while true do if gg.isVisible(true) then Main() gg.setVisible(false) end end