function getPointer(Address,Flags) return gg.getValues({ { address=Address, flags=Flags } })[1].value end local function getName(addr) local str = "" local t = {} for i=1, 128 do t[i] = {address=addr+(i-1), flags=gg.TYPE_BYTE} end t = gg.getValues(t) for i, v in ipairs(t) do if v.value==0 then break end if v.value<0 then return "" end str = str..string.char(v.value&0xFF) end return str end function aycXa(lib) ranges = {} for i, v in pairs(gg.getRangesList(lib)) do modjs = v.type:sub(2, 3) if modjs == '-x' then table.insert(ranges, v) end end return ranges[1].start end local xa=aycXa("libil2cpp.so") local function va(address, Type) local result = gg.getValues({{address = address, flags = Type}}) return result[1].value end function void(gx,gn) local bb=xa+gx local cc=xa+gn if bb < cc then local fun=bb-cc gg.addListItems({{address=bb,flags=4,name="更新函数"}}) gg.setValues({{address=bb,flags=4,value="~A8 B [PC,#-0x"..string.format("%X",fun).."]"}}) else fun=bb-cc gg.addListItems({{address=bb,flags=4,value="~A8 B [PC,#0x"..string.format("%X",fun).."]",name="更新函数"}}) gg.setValues({{address=bb,flags=4,value="~A8 B [PC,#-0x"..string.format("%X",fun).."]",name="更新函数"}}) print(string.format("%X",fun)) end end function shen(gx,ff,cs,lx,xg) local offset = ff - (gx + 0x4) local gx1 = xa+gx local ff1 = xa+ff if ff > gx then gg.addListItems({{address = gx1, flags = 4, name = "更新函数"}}) gg.setValues({ {address = gx1, flags = 4, value = "~A8 LDR X"..cs..", [PC,#0x8]"}, {address = gx1 + 0x4, flags = 4, value = "~A8 B [PC,#0x"..string.format("%X", offset).."]"}, {address = gx1 + 0x8, flags = lx, value = xg} }) else offset = (gx + 0x4) - ff gg.addListItems({{address = ff, flags = 4, name = "更新函数"}}) gg.setValues({ {address = gx1, flags = 4, value = "~A8 LDR X"..cs..", [PC,#0x8]"}, {address = gx1 + 0x4, flags = 4, value = "~A8 B [PC,#-0x"..string.format("%X", offset).."]"}, {address = gx1 + 0x8, flags = lx, value = xg} }) end end function mmap() local AddrList = {} local RangesList = gg.getRangesList() for _, __ in pairs(RangesList) do if __["state"] == "A" and __["type"] == "rwxp" then for ___=0, 4096, 8 do table.insert(AddrList, {address = __["start"]+___, flags = 32, value = 0}) end gg.setValues(AddrList) return __["start"] end end end local g1=io.open("/storage/emulated/0/Android/DunDunDun.txt","r") if g1==nil then a1=gg.prompt({"输入密码\n\n不知道密码?联系作者低价购买\n作者QQ:3475375971","自动登录"},{"",true},{"text","checkbox"}) if a1==nil or a1[1]~="shen6667" then gg.alert("密码错误,联系作者获取") gg.copyText("3475375971") os.exit(print("密码错误,联系作者获取\nQQ:3475375971")) end end if g1 or a1[1]=="shen6667" then io.open("/storage/emulated/0/Android/DunDunDun.txt","r+") gg.alert("✔️密码正确,欢迎使用辅助") function Main() xz=gg.choice({ "✔一键成神", "✔超级秒杀", "✔超级跳高", "✔超级移速", "✔超级护盾", "✔超级无敌", "✔超级攻速", "✔无限重生", "✔全屏攻击", "✔攻击数量", "✔开启飞行", "✔玩家隐藏", "✔无限金币", "✔无限钥匙", "✔无限炸弹", "✘退出脚本" },nil,"by.神之名") if xz==nil then else if xz==1 then she() end if xz==2 then Miao() end if xz==3 then a3() end if xz==4 then a4() end if xz==5 then a5() end if xz==6 then a6() end if xz==7 then a7() end if xz==8 then a8() end if xz==9 then a9() end if xz==10 then a10() end if xz==11 then a11() end if xz==12 then a12() end if xz==13 then a13() end if xz==14 then a14() end if xz==15 then a15() end if xz==16 then Exit() end end end function she()--一键成神 local a=xa+0x2868e14--0x2862c10 local b=xa+0x286af6c oo={ {value="~A8 B [PC,#0xB798]",flags=4,address=a}, {value="~A8 B [PC,#0x9564]",flags=4,address=b} } gg.setValues(oo) --void(0x2862c10,0x28745ac) --void(0x286af6c,0x28744d0) end function Miao()--超级秒杀 local v=xa+0x2658eb0 bb={ {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4}, {value=69999999,flags=16,address=v+0x8} } gg.setValues(bb) end function a3()--超级跳高 local v=xa+0x265c50c--0x265c5ec bb={ {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4}, {value=2300,flags=16,address=v+0x8} } gg.setValues(bb) end function a4()--超级移速 local v=xa+0x2634f2c bb={ {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4}, {value=48,flags=16,address=v+0x8} } gg.setValues(bb) end function a5()--超级盾牌 local v=xa+0x2649558 void(0x264955C,0x26469d8) tt={ {value="~A8 MOV X1, #500",flags=4,address=v} } gg.setValues(tt) end function a6()--超级无敌 shen(0x2643910, 0x2646058, 1, 4, "10000")--更新函数偏移,功能函数偏移,参数,修改类型,修改值 end function a7()--超级攻速 local v=xa+0x2658d60--攻速 local c=xa+0x2658e08--范围 bb={ {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4}, {value=4,flags=16,address=v+0x8}, {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=c}, {value="~A8 RET",flags=4,address=c+0x4}, {value=6666,flags=16,address=c+0x8} } gg.setValues(bb) end function a8()--无限重生 local v=xa+0x264a140 bb={ {value="~A8 MOV W0, #1",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4} } gg.setValues(bb) end function a9()--全屏攻击 local v=xa+0x2658f6c bb={ {value="~A8 LDR S0, [PC,#0x8]",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4}, {value=180,flags=16,address=v+0x8} } gg.setValues(bb) end function a10()--全屏子弹 local v=xa+0x2658ca8 bb={ {value="~A8 MOV W0, #100",flags=4,address=v}, {value="~A8 RET",flags=4,address=v+0x4} } gg.setValues(bb) end function a11()--开启飞行 local e=xa+0x2635188 void(0x2636b50,0x265afc4) cc={ {value="~A8 LDR X16, [PC,#0xC]",flags=4,address=e}, {value="~A8 FMOV S0, X16",flags=4,address=e+0x4}, {value="~A8 RET",flags=4,address=e+0x8}, {value=35,flags=16,address=e+0xC} } end function a12()--玩家隐藏 local v=xa+0x286b3d4 bb={ {value="~A8 MOV W1, #1",flags=4,address=v}, {value="~A8 STRB W1, [X0,#0x297]",flags=4,address=v+0x4}, {value="~A8 RET",flags=4,address=v+0x8} --{value=1,flags=4,address=v+0xC} } gg.setValues(bb) end function a13()--无限金币 shen(0x28627e0, 0x286e518, 1, 4, "2")--更新函数偏移,功能函数偏移,参数,修改类型,修改值 end function a14()--无限钥匙 shen(0x2874378, 0x286dabc, 1, 4, "99")--更新函数偏移,功能函数偏移,参数,修改类型,修改值 end function a15()--无限炸弹 local v=xa+0x3a121b4 cc={ {value="~A8 MOV X0, X0",flags=4,address=v}, {value="~A8 MOV X1, #99",flags=4,address=v+0x4}, {value="~A8 B [PC,#0x8860]",flags=4,address=v+0x8} } gg.setValues(cc) end function Exit() os.exit() end gg.showUiButton() while false do if gg.isClickedUiButton()==true then Main() end end while(true) do if gg.isVisible(true) then gg.setVisible(false) Main() end end end