string.toMusic("开启成功正在连接脚本") string.toMusic("开启成功正在连接脚本") ffvpn = "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x = tostring(gg.makeRequest(ffvpn)) if not x or not x:sub(1, 20) then gg.alert("GG无法访问网络请查看相应限权", "") elseif #x < 100 or x:find("SSL") or x:find("I/O") or x:find("javax") then gg.alert("你已开启了NPN环境请勿用抓包���=�防抓包开启成功=�=�警告=�否则发现关闭使用权") for _FORV_3_ = 1, 3 do function AA(A0_325, A1_326, A2_327) local L3_328, L4_329, L5_330, L6_331 L3_328 = 1 L4_329 = 999999 for _FORV_6_ = 1, 999999 do end end function BB()for _FORV_4_, _FORV_5_ in pairs({"999999", "0000000"}) do bytes = tonumber(_FORV_5_) AA(bytes, result1, result2) end end BB() print("网络请求警告:\n\n~~~~~ 警告 �~~~~~ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n~~~~~� 警告 �~~~~~ ") end for _FORV_3_ = 1, 10 do gg.setVisible(true) gg.setVisible(false) end while true do os.exit(gg.setVisible(true)) end end string.toMusic("NPN环境开启成功")string.toMusic("正在检测环境,请稍等.....") if gg.isHTTPdump() == false then string.toMusic("环境正常,正在开启脚本") end if gg.isHTTPdump() == true then gg.alert("环境异常,检测到你使用了抓包W\n正在退出脚本W") os.exit() end if gg.isHTTPdump() == "error" then gg.alert("请检查网络是否良好W") end string.toMusic("正在二次检测环境,请稍等.....") if gg.isHTTPdump() == false then string.toMusic("环境正常,正在开启脚本") end if gg.isHTTPdump() == true then string.toMusic("环境异常,检测到你使用了抓包W\n正在退出脚本W") os.exit() end if gg.isHTTPdump() == "error" then string.toMusic("请检查网络是否良好W") end string.toMusic("开启成功正在连接脚本") string.toMusic("开启成功正在连接脚本")if gg.isPackageInstalled("sstool.only.com.sstool") or gg.isPackageInstalled("sstool.only.com.sstool") or gg.isPackageInstalled("sstool.only.com.sstool") then gg.alert("检测到解密解密工具\n赶紧删除不然不给你进=") os.remove(string.gsub(gg.getFile(), "@", "")) gg.alert("检测到解密工具\n赶紧删除不然不给你进=") os.exit() while true do end end if gg.isPackageInstalled("com.fan.ggluadec") or gg.isPackageInstalled("com.fan.ggxxls") or gg.isPackageInstalled("com.fan.ggxxls-1.10") then gg.alert("花里胡哨的东西没用的!") os.exit() while true do end end if gg.isPackageInstalled("com.guoshi.httpcanary") then gg.alert("检测到你有黄鸟抓包!\n赶紧删除不然不给你进=") gg.processKill() os.exit() while true do end end if gg.isPackageInstalled("com.maggienorth.max.postdata") then gg.alert("检测到你有抓包软件!\n赶紧删除不然不给你进=") gg.processKill() os.exit() while true do end end if gg.isPackageInstalled("com.chenlun.autumncloudlua") then gg.alert("检测到你有云解密工具!\n赶紧删除不然不给你进=") gg.processKill() os.exit() while true do end end function panduan(A0_332) fille, err = io.open(A0_332) if fille == nil then do return false end return end return true end function panduan(A0_333)fille, err = io.open(A0_333) if fille == nil then do return false end return end return true end ffvpn = "https://biaozhunshijian.bmcx.com" ffvpn = "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x = tostring(gg.makeRequest(ffvpn)) if not x or not x:sub(1, 20) then gg.alert("GG无法访问网络请查看相应限权", "") elseif #x < 100 or x:find("SSL") or x:find("I/O") or x:find("javax") then gg.alert("你已开启了NPN环境请勿用抓包⚠⚠⚠🛡防抓包开启成功🛡🛡警告🛡否则发现关闭使用权") for _FORV_4_ = 1, 3 do function AA(bytes,result1,result2) for i=1,999 do local bytesa=load(bytes) end end function BB() local dataArr={'999999','0000000'} for index,value in pairs(dataArr) do bytes = tonumber(value) AA(bytes,result1,result2) end end BB() print("网络请求警告:\n\n╾╾╾╾╾ 警告 ⚠╾╾╾╾╾ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") end end string.toMusic(os.date("欢迎使用望神UI,稳定拉闸认准望神")) --------秒开配置---------------------------------------------------------------------------- function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast("修改"..#data.."条数据.修改成功") local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else gg.toast(":搜索0条数据.修改失败", false) return false end else gg.toast("搜索0条数据.修改失败") return false end end function Fs3Fs4(Fs1, Fs2, Fs3, Fs4, Fs5) gg.clearResults() gg.setRanges(Fs2) gg.setVisible(false) gg.searchNumber(Fs3[1][1], Fs3[1][3]) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Fs3[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Fs3 do local tmp = {} local offset = Fs3[k][2] - base local num = Fs3[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Fs3[k][3] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast(Fs1..'\n搜索到{'..#data..'}条数据') local t = {} local base = Fs3[1][2] if Fs5 == '' and Fs5 > 0 and Fs5 < #data then Fs5 = Fs5 else Fs5 = #data end for i=1, Fs5 do for k, w in ipairs(Fs4) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Fs1..'️\n已修改{'..#t..'}条数据') else gg.toast(Fs1..'\n数据搜索失败', false) return false end else gg.toast(Fs1..'\n数据修改失败', false) return false end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = numlocal GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end ---------秒开配置---------------------------------------------------------------------------- function readPointer ( name , offset , i ) local re = gg.getRangesList ( name ) local x64 = gg.getTargetInfo ( ).x64 local va = { [ true ] = 32 , [ false ] = 4 } if re [ i or 1 ] then local addr = re [ i or 1 ].start + offset [ 1 ] for i = 2 , # offset do addr = gg.getValues ( { { address = addr , flags = va [ x64 ] } } ) if not x64 then addr [ 1 ].value = addr [ 1 ].value & 0xFFFFFFFF end addr = addr [ 1 ].value + offset [ i ] end return addr end end So_X32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( 'so模块未加载 请重新选择游戏进程' ) else local So = Somod.start local Add = So + Address gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "1EFF2FE1r" } } ) end end function searchwb(a,b,c) gg.setRanges(c) gg.searchNumber(a,b) end function xgwb(a1,a2) gg.getResults(gg.getResultsCount()) gg.editAll(a1,a2) end ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- function readPointer(name, offset, i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i = 2,#offset do addr = gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.clearResults() j={} xgz={} ZY = 'Main0' gg.clearResults() sj={} xgz={} function xqmnb(Search,Modification) gg.clearResults() gg.setRanges(Search[1].memory) gg.searchNumber(Search[3].value,Search[3].type,false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Search[2].name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum for index=4,#Search do sum=0 for i=1,#Result do if gg.getValues({{address=Result[i].address+Search[index].offset,flags=Search[index].type}})[1].value~=Search[index].lv then Result[i].Usable=true sum=sum+1 end end if sum==#Result then gg.toast(Search[2].name..'开启失败') return end end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in ipairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value.offset,flags=value.type,value=value.value,freeze=true} if value.freeze then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end sum=sum+1 end end end gg.setValues(Data) gg.addListItems(Freeze) if Freezes==0 then gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据') else gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据') end gg.clearResults() end function BL(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end besz = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) gg.setProcessX ( ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "1EFF2FE1r" } } ) gg.processResume ( ) end end function JG(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) end function ByFQ(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) end Sy_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end bl = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.alert("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function Fs3Fs4(Fs1, Fs2, Fs3, Fs4, Fs5) gg.clearResults() gg.setRanges(Fs2) gg.setVisible(false) gg.searchNumber(Fs3[1][1], Fs3[1][3]) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Fs3[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Fs3 do local tmp = {} local offset = Fs3[k][2] - base local num = Fs3[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Fs3[k][3] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast(Fs1..'\n搜索到{'..#data..'}条数据') local t = {} local base = Fs3[1][2] if Fs5 == '' and Fs5 > 0 and Fs5 < #data then Fs5 = Fs5 else Fs5 = #data end for i=1, Fs5 do for k, w in ipairs(Fs4) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Fs1..'️\n已修改{'..#t..'}条数据') else gg.toast(Fs1..'\n数据搜索失败', false) return false end else gg.toast(Fs1..'\n数据修改失败', false) return false end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end ---------秒开配置---------------------------------------------------------------------------- BYWT = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function CYC(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) end end function _error() ts=gg.alert([[ 开启失败 失败原因:进程存储太小或选择了错误的进程 解决方案:重选进程后开启 ]],"确定","选择进程","") if ts == 2 then gg.setProcessX() end end wt = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end Sy_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert([[开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "1EFF2FE1r" } } ) gg.processResume ( ) end end function WT(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:地铁跑酷进程存储太小 请选择>三百MB的地铁跑酷进程 解决方案:重新选择进程 ]]) end BYWT = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function a4c(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) end end function _error() ts=gg.alert([[ 开启失败 失败原因:进程存储太小或选择了错误的进程 解决方案:重选进程后开启 ]],"确定","选择进程","") if ts == 2 then gg.setProcessX() end end wt = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end Sy_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert([[开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "1EFF2FE1r" } } ) gg.processResume ( ) end end function WT(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:地铁跑酷进程存储太小 请选择>三百MB的地铁跑酷进程 解决方案:重新选择进程 ]]) end function Fs3Fs4(Fs1, Fs2, Fs3, Fs4, Fs5) gg.clearResults() gg.setRanges(Fs2) gg.setVisible(false) gg.searchNumber(Fs3[1][1], Fs3[1][3]) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Fs3[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Fs3 do local tmp = {} local offset = Fs3[k][2] - base local num = Fs3[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Fs3[k][3] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast(Fs1..'\n搜索到{'..#data..'}条数据') local t = {} local base = Fs3[1][2] if Fs5 == '' and Fs5 > 0 and Fs5 < #data then Fs5 = Fs5 else Fs5 = #data end for i=1, Fs5 do for k, w in ipairs(Fs4) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Fs1..'️\n已修改{'..#t..'}条数据') else gg.toast(Fs1..'\n数据搜索失败', false) return false end else gg.toast(Fs1..'\n数据修改失败', false) return false end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.alert("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.alert("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function Get_Search(fname) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end fname=fname or {} local m=getRanges() local many={} if "table"==type(fname) then--首信息1 for i in pairs(m) do local p=m[i].internalName:match("^.*/(.+)") if p==fname[1] and m[i].state==fname[2] then many={state=m[i].state,start=m[i].start} break end end elseif "string"==type(fname) then if "slow"==fname then--全信息 for i=1,#m do local p=m[i].internalName:match("^.*/(.+)") many[i]={name=p,state=m[i].state,start=m[i].start} end elseif "quick"==fname then--尾信息 for i=1,#m do local p=m[i].internalName:match("^.*/(.+)") many[p]={state=m[i].state,start=m[i].start} end else for i=1,#m do--首信息2 local p=m[i].internalName:match("^.*/(.+)") if p==fname then many={state=m[i].state,start=m[i].start} break end end if AddrInfoLen(many)~=2 then return false end end else error("填写'quick'或者'slow'或者文件名或者{文件名,状态}") end return many end function Get_Address(Head,Offset,Flag) local tinfom=gg.getTargetInfo() Flag=Flag or 32 local t={} local Addr if Head then t[1]={address=Head+Offset[1],flags=Flag} if not (#Offset==1) then for i=2,#Offset do local place=gg.getValues(t) t={} if not tinfom.x64 then place[1].value=place[1].value & 0xFFFFFFFF end t[1]={address=place[1].value+Offset[i],flags=Flag} end end Addr=t[1].address end return string.format("0x%X",Addr) end function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end JFYx32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end function gg.edits(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) end local json = json ms = { } function setvalue ( add , value , falgs) qx={} qx[#qx+1]={} qx[#qx].value=value qx[#qx].flags=falgs qx[#qx].freeze=true qx[#qx].address=add gg.addListItems (qx) end il2cpp_so_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function py1(value,lx,py) gg.setVisible(false) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("偏移了 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function SearchWrite(Search, Write, Type, Name) local time=os.clock() gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast("搜索到"..#data.."条数据") local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) local time=string.sub(os.clock()-time,0,5) gg.toast("开启成功 已修改:"..#t.."条数据 本次启动耗时:"..time.."秒") gg.addListItems(t) else gg.toast("开启失败未搜索到任何数据", false) return false end else gg.toast("开启失败未搜索到任何数据") return false end end function WT(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end j={} xgz={} ZY='Main' gg.toast('欢迎使用科技') gg.clearResults() sj={} xgz={} gg.toast("欢迎进入") function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,gg.SIGN_EQUAL,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("??搜索到 "..sl.." 个结果??") gg.clearResults() else gg.toast("?未搜索到结果?") end else gg.toast("?无搜索值类型?") end else gg.toast("?无需搜索值?") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("?共偏移 "..#sj.." 个数据?") else gg.toast("?没有搜索数据?") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("?共偏移 "..#sj.." 个数据?") else gg.toast("?没有搜索数据?") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("??共修改 "..#z.." 个数据??") else gg.toast("?没有搜索数据?") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("??共修改 "..#z.." 个数据??") else gg.toast("??没有搜索数据??") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("?无数据?") end end function search(ss,lx,nc,dz1,dz2) gg.setVisible(false) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function editData(qmnb,qmxg)gg.setVisible(false)gg.clearResults()qmnbv=qmnb[3]["value"]or qmnb[3][1]qmnbt=qmnb[3]["type"]or qmnb[3][2]qmnbn=qmnb[2]["name"]or qmnb[2][1]gg.setRanges(qmnb[1]["memory"]or qmnb[1][1])gg.searchNumber(qmnbv,qmnbt)gg.refineNumber(qmnbv,qmnbt)sz=gg.getResultCount()if sz==0 then gg.toast(qmnbn.."开启失败")else sl=gg.getResults(999999)for i=1,sz do pdsz=true for v=4,#qmnb do if pdsz==true then pysz={{}}pysz[1].address=sl[i].address+(qmnb[v]["offset"]or qmnb[v][2])pysz[1].flags=qmnb[v]["type"]or qmnb[v][3]szpy=gg.getValues(pysz)tzszpd=tostring(qmnb[v]["lv"]or qmnb[v][1]):gsub(",","")pyszpd=tostring(szpy[1].value):gsub(",","")if tzszpd==pyszpd then pdjg=true pdsz=true else pdjg=false pdsz=false end end end if pdjg==true then szpy=sl[i].address for x=1,#qmxg do xgsz=qmxg[x]["value"]or qmxg[x][1]xgpy=szpy+(qmxg[x]["offset"]or qmxg[x][2])xglx=qmxg[x]["type"]or qmxg[x][3]xgdj=qmxg[x]["freeze"]or qmxg[x][4]xg={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xg[1].freeze=xgdj gg.addListItems(xg)else gg.setValues(xg)end end xgjg=true end end if xgjg==true then gg.toast(qmnbn.."开启成功")else gg.toast(qmnbn.."开启失败")end end end qmnb = function(daarr) local array = {} for i = 1, #daarr["搜索数组"] do local data = {["lv"] =daarr["搜索数组"][i][1], ["offset"] = daarr["搜索数组"][i][2], ["type"] = daarr["搜索类型"]} table.insert(array, i, data) end local isok, data = app.memorysearch(daarr["搜索内存"], array) if isok then for i = 1, #data do for x = 1, #daarr["修改数组"] do app.memorywrite(data[i] + daarr["修改数组"][x][2], daarr["搜索类型"], daarr["修改数组"][x][1]) end end gg.toast(daarr["功能名称"] .. "共修改" .. #data * #daarr["修改数组"] .. "条数据") else gg.toast(daarr["功能名称"] .. "开启失败") end end function xg1(value,lx,py,dj) if sj~=nil and #sj>0 then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx if value == nil then value = readValue(z[i].address, lx) end z[i].value= value z[i].freeze = dj and true or false end if dj == true or dj == false then gg.addListItems(z) else gg.setValues(z) end gg.toast('') else gg.toast('') end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast('') else gg.toast('') end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast('') end end Qr_UIP2FazG='Main' gg.clearResults() sj={} xgz={} gg.toast("欢迎使用SG全防") function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,gg.SIGN_EQUAL,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) if gg.getTargetInfo().x64==true then t=gg.getValues({[1]={address=add,flags=32}}) return t[1].value else t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end DWORD=gg.TYPE_DWORD DOUBLE=gg.TYPE_DOUBLE FLOAT=gg.TYPE_FLOAT WORD=gg.TYPE_WORD BYTE=gg.TYPE_BYTE XOR=gg.TYPE_XOR QWORD=gg.TYPE_QWORD D=gg.TYPE_DWORD E=gg.TYPE_DOUBLE F=gg.TYPE_FLOAT W=gg.TYPE_WORD B=gg.TYPE_BYTE X=gg.TYPE_XOR Q=gg.TYPE_QWORD -------------不懂勿动------------ ------------道具赛配置--------------- menu ={} name ={} id = 0 play = false song = "" _G_ = { function() local searchMusic = gg.prompt({ "歌曲•歌手", "列表•限制", },{"","10"},{ "text", "text", }) if not searchMusic then gg.setVisible(false) Main() elseif searchMusic[1] == "" then gg.alert("请输入歌曲/歌手!") _G_[1]() else local results = gg.makeRequest("http://music.163.com/api/search/get?s="..searchMusic[1].."&type=1&offset=0&total=true&limit="..searchMusic[2]) if results.code == 200 then n=1 for v,k in results.content:gmatch('"id":(.-),"name":"(.-)"') do if n%4 == 1 then menu[n/4+1] = v..";"..k end if n%4 == 2 then menu[n/4+1] = menu[n/4+1]..";"..k end n=n+1 end _G_[2]() else local s = gg.alert("请求异常,请检查网络……","返回","退出") if not s then gg.setVisible(false) Main() end if s == 1 then os.exit() end if s == 2 then _G_[1]() end end end end, function() if #menu == 0 then gg.alert("没有搜索记录") Main() else for n=1,#menu do name[n] = menu[n]:gsub("[0-9]+;",""):gsub(";","\n歌手:") end local mu = gg.choice(name,0,"歌单") if not mu then _G_[1]() else song = name[mu] local sn=gg.choice({"播放","查看歌词"},nil,"歌曲:"..name[mu]) if not sn then _G_[1]() end if sn == 1 then id = menu[mu]:match("(.-);") gg.toast("正在播放音乐:"..name[mu],true) gg.playMusic("http://music.163.com/song/media/outer/url?id="..id..".mp3") play = true end if sn == 2 then id = menu[mu]:match("(.-);") song = name[mu] _G_[3]() end end end end, function() if id == 0 then gg.alert("未有播放记录") Main() else local results = gg.makeRequest("http://music.163.com/api/song/media?id="..id).content rs = results:match('"lyric":"(.-)","code'):gsub("\\n","\n"):gsub("[[!-z]+]","") gg.alert("\n《"..song:gsub("\n","》\n").."\n\n"..rs) gg.setVisible(false) end end, function() if play then play = false gg.toast("正在停止播放...") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end gg.toast("播放已停止") else gg.toast("无正在播放的音乐") end end, function() gg.setVisible(false) if play then _G_[4]() end LSP() end } function WTYY() local emo = gg.choice({ "搜索歌曲", "搜索列表", "显示歌词", "暂停播放", },nil,"望神音乐功能") if not emo then gg.setVisible(false) end if emo then _G_[emo]() end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end local json =json local g = {} g.file = gg.getFile() g.sel = nil gqlb={"请先搜索歌曲",} idb={"1010"} SN,gc=1,nil g.config = gg.getFile():gsub("%lua$", "").."cfg" function bei() g.data = loadfile("-- WSG PRO 1.0.9(109)\n"..g.config) if g.data ~= nil then g.sel = g.data() g.data = nil end if g.sel == nil then g.sel = {"","10"} end end bei() --搜索歌曲 function start(name,sl) fw=gg.makeRequest("http://music.163.com/api/search/get?s="..name.."&type=1&offset=0&total=true&limit="..sl) return fw end --歌词 --播放音乐 function play(id,name) gg.toast("正在播放音乐:"..name,true) gg.playMusic("http://music.163.com/song/media/outer/url?id="..id..".mp3") end --停止播放 function stop() gg.toast("正在停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end ---- function Play(gqlb,idb) SN = gg.choice(gqlb,nil,ts) if SN == nil then XGCK =-1 else sn=gg.choice({"播放歌曲","播放并下载"},nil,"歌曲:"..gqlb[SN]) if sn == nil then end if sn == 1 then play(idb[SN],gqlb[SN]) end if sn == 2 then local XEY=gg.makeRequest("http://music.163.com/song/media/outer/url?id="..idb[SN]..".mp3").content local XEY1=gg.getFile():gsub("[^/]+$","")..gqlb[SN]..".mp3" io.open(XEY1,"w"):write(XEY) gg.alert("提示:\n\n音乐已成功下载位置:\n\n"..XEY1) end XGCK=-1 end end function zjson(jsonr) local str = jsonr -- 匹配Json Key的正则表达式 local pattern = "\"[%w]+\":" string.gsub(str, pattern, function(v) if string.find(str, v) then str = string.gsub(str, v, string.gsub(v, "\"", "")) end end) str = string.gsub(str, ":", "=") str = string.gsub(str, "%[", "{") str = string.gsub(str, "%]", "}") local data = "-- WSG PRO 1.0.9(109)\nreturn " .. str local res = load(data)() return res end function json(con) res=zjson(con) zd=res.result.songCount pd=go3-zd if pd <= 0 then else go3=zd end ts="《"..go1.."》找到"..zd.."首歌曲,当前显示"..go3.."首" gqlb={} idb={} for i=1,go3 do gqlb[i]=res.result.songs[i].name idb[i]=res.result.songs[i].id end --print(idb) end function YY998() Obtain=gg.makeRequest("https://api.uomg.com/api/rand.music?sort=热歌榜&format=json").content muchen=Obtain:match('url":"(.-)","picurl') gg.playMusic(muchen) end SG = {} local SG = SG local android = import('android.*') function write(fileName, content) --f = assert( io.open( fileName, 'w')) f:write( content ) f:close() if file.write(fileName, content) == false then gg.alert("请给框架和修改器 文件储存权限\n否则无法正常运行") os.exit() end end function panduan(rec) fille, err = io.open(rec) if fille == nil then return false else return true end end function pdcf(lujing) rec = "/sdcard/XQ全防/配置文件/" .. lujing fille, err = io.open(rec) if fille == nil then return false else return true end end sleep = gg.sleep if gg.isHTTPdump() == true and panduan("/sdcard/XQ全防/配置文件/vpn.txt") == false then gg.alert("\n抓包?") os.exit() end function read(fileName) f = assert(io.open(fileName, 'r')) content = f:read("*all") f:close() return content end function wtcf(lujing, neirong) write("/sdcard/XQ全防/配置文件/" .. lujing, neirong) end function rdcf(lujing) return read("/sdcard/XQ全防/配置文件/" .. lujing) end function pmusic(x) if audiokg == "开" then tmp1 = 0 gg.playMusic(x) tmp1 = 1 end end if pdcf("audio") ~= true then wtcf("audio", "开") end audiokg = rdcf("audio") function camusic(ress) tmp1 = 0 if audiokg == "开" then if panduan("/sdcard/XQ全防/音频/" .. ress) == true then pmusic("/sdcard/XQ全防/音频/" .. ress) tmp1 = 1 else file.download("https://escape2020-1303126286.cos.ap-shenzhen-fsi.myqcloud.com/" .. ress, "/sdcard/XQ全防/音频/" .. ress) pmusic("/sdcard/XQ全防/音频/" .. ress) tmp1 = 1 end end end 开 = "开" 关 = "关" function checkimg(tmp) if panduan("/sdcard/XQ全防/图片/" .. tmp) ~= true then gg.toast("正在下载资源" .. tmp .. "\n请耐心等待") file.download("https://escape2020-1303126286.cos.ap-shenzhen-fsi.myqcloud.com/" .. tmp, "/sdcard/XQ全防/图片/" .. tmp) end end BxCa = io.open('/sdcard/XQ全防/图片/switch开', 'r') if BxCa == nil then file.download("https://ayangwp.icu/down.php/683c92a3c8881a0d4afd1d4e9d91a182.", "/sdcard/XQ全防/图片/switch开") --方持续添加你要下载的东西 else --不用添加 end file.getdirs("/sdcard/XQ全防/状态读取/") ckimg = { "dz3logo", "pink", "blue", "check1", "check2", "exit", "sj", "hsj" } for i = 1, #ckimg do jindu = i checkimg(ckimg[i]) end context = app.context window = context:getSystemService("window") -- 获取窗口管理器 function getLayoutParams() LayoutParams = WindowManager.LayoutParams layoutParams = luajava.new(LayoutParams) if (Build.VERSION.SDK_INT >= 26) then -- 设置悬浮窗方式 layoutParams.type = LayoutParams.TYPE_APPLICATION_OVERLAY else layoutParams.type = LayoutParams.TYPE_PHONE end layoutParams.format = PixelFormat.RGBA_8888 -- 设置背景 layoutParams.flags = LayoutParams.FLAG_NOT_FOCUSABLE -- 焦点设置Finish layoutParams.gravity = Gravity.TOP|Gravity.LEFT -- 重力设置 layoutParams.width = LayoutParams.WRAP_CONTENT -- 布局宽度 layoutParams.height = LayoutParams.WRAP_CONTENT -- 布局高度 return layoutParams end function getj6() jianbian6 = luajava.new(GradientDrawable) jianbian6:setCornerRadius(20) jianbian6:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbian6:setColors({0xaaFF6EBF,0x660072ff}) jianbian6:setStroke(4,"0xeeffffff") --边框宽度和颜色 return jianbian6 end slctb2 = luajava.loadlayout({ GradientDrawable, color = "#7f7fd5", cornerRadius = 10 }) function getseekgra() jianbian7 = luajava.new(GradientDrawable) jianbian7:setCornerRadius(20) jianbian7:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbian7:setColors({ 0x33000000, 0x33000000 }) jianbian7:setStroke(2, "0x44000000") return jianbian7 end slctb = getseekgra() slcta = luajava.loadlayout({ GradientDrawable, color = "#33000000", cornerRadius = 20 }) slctc = luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 8 } slctd = luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 8 } slcte = luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 12 } slctf = luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 12 } SG2 = {} SG2.controlFlip = function(control, time) luajava.runUiThread(function() import "android.view.animation.Animation" import "android.animation.ObjectAnimator" xuanzhuandonghua = ObjectAnimator:ofFloat(control, "rotationY", { 0, 360 }) xuanzhuandonghua:setRepeatCount(0) xuanzhuandonghua:setRepeatMode(Animation.REVERSE) xuanzhuandonghua:setDuration(time) xuanzhuandonghua:start() end) end SG2.controlWater = function(control, time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control, "scaleX", { 1, 0.8, 0.9, 1 }):setDuration(time):start() ObjectAnimator():ofFloat(control, "scaleY", { 1, 0.8, 0.9, 1 }):setDuration(time):start() end ) end SG2.controlWater2 = function(control, time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control, "scaleX", { 1, 1.1, 0.9, 1 }):setDuration(time):start() ObjectAnimator():ofFloat(control, "scaleY", { 1, 0.9, 1.1, 1 }):setDuration(time):start() end ) end SG2.controlBig = function(control, time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control, "scaleX", { 0, 0.4, 0.7, 1 }):setDuration(time):start() ObjectAnimator():ofFloat(control, "scaleY", { 0, 0.4, 0.7, 1 }):setDuration(time):start() end) end SG.controlRotation2 = function(control, time) luajava.runUiThread(function() import "android.view.animation.Animation" import "android.animation.ObjectAnimator" xuanzhuandonghua = ObjectAnimator:ofFloat(control, "rotation", { 0, 360 }) xuanzhuandonghua:setRepeatCount(0) xuanzhuandonghua:setRepeatMode(Animation.RESTART) xuanzhuandonghua:setDuration(time) xuanzhuandonghua:start() end) end function getSelector3() jianbians = luajava.new(GradientDrawable) jianbians:setCornerRadius(10) jianbians:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbian:setColors({0xaaFF6EBF,0x660072ff}) jianbians:setStroke(1,"0xee000000") --边框宽度和颜色 selector = luajava.getStateListDrawable() selector:addState({ android.R.attr.state_pressed }, luajava.loadlayout { GradientDrawable, color = "#000000", cornerRadius = 12 }) -- 点击时候的背景 selector:addState({ -android.R.attr.state_pressed }, jianbians) -- 没点击的背景 return selector end function getSelector() selector = luajava.getStateListDrawable() selector:addState({ android.R.attr.state_pressed }, slcta) -- 点击时候的背景 selector:addState({ -android.R.attr.state_pressed }, slctb) -- 没点击的背景 return selector end function getSelector2() selector = luajava.getStateListDrawable() selector:addState({ android.R.attr.state_pressed }, slctd) -- 点击时候的背景 selector:addState({ -android.R.attr.state_pressed }, slctc) -- 没点击的背景 return selector end jianbian = luajava.new(GradientDrawable) jianbian:setCornerRadius(30) jianbian:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbian2 = luajava.new(GradientDrawable) jianbian2:setCornerRadius(30) jianbian2:setGradientType(GradientDrawable.LINEAR_GRADIENT) local isswitch YoYoImpl = luajava.getYoYoImpl() SG.menu = function(sview) if isswitch then return false end isswitch = true cebian = { LinearLayout, id = "侧边", visibility = "gone", layout_height = "wrap_content", layout_width = "68dp", orientation = "vertical", background = { GradientDrawable, color = "#00fffff", cornerRadius = 10 }, } gund = { LinearLayout, orientation = "vertical", } for i = 1, #stab do _ENV["jm" .. i] = luajava.loadlayout({ LinearLayout, id = "jm" .. i, layout_height = "31dp", layout_width = "68dp", layout_marginTop = "3dp", layout_marginBottom = "3dp", background = getSelector(), { TextView, gravity = "center", text = stab[i][1], layout_height = "28dp", layout_width = "68dp", onClick = function() 切换(i) SG2.controlFlip(_ENV["jm" .. i], 400) SG2.controlWater2(floatWindow, 400) end } }) gund[#gund + 1] = _ENV["jm" .. i] end cebian[#cebian + 1] = { ScrollView, layout_height = "190dp", layout_width = "68dp", gund } cebian[#cebian + 1] = { ImageView, id = "exit", src = "/sdcard/XQ全防/图片/exit", layout_width = "0dp", layout_height = "0dp", layout_marginTop = "0dp", layout_marginLeft = "0dp", } cebian = luajava.loadlayout(cebian) for i = 1, #stab do _ENV["layout" .. i] = luajava.loadlayout({ ScrollView, fillViewport = "true", padding = "10dp", id = "layout" .. i, visibility = "gone", layout_height = "wrap_content", layout_height = "wrap_content", orientation = "horizontal", { LinearLayout, id = "layoutm" .. i, background = getj6(), gravity = "top", layout_width = "210dp", orientation = "vertical", gravity = "center_horizontal", } }) end ckou = { LinearLayout, id = "chuangk", visibility = "gone", layout_width = "wrap_content", layout_height = "match_parent", orientation = "horizontal", cebian, } for i = 1, #stab do ckou[#ckou + 1] = _ENV["layout" .. i] end --luajava.newThread(function() develo(ckou) end):start() ckou = luajava.loadlayout(ckou) title = luajava.loadlayout({ TextView, id = "title", textColor = "#282F4B", visibility = "gone", text = stab[1][2], gravity = "center", textSize = "24sp", layout_marginLeft = "30dp", layout_width = "fill_parent", }) control1 = luajava.loadlayout({ ImageView, id = "control", background =悬浮窗, layout_width = "44dp", layout_height = "44dp", }) floatWindow = { LinearLayout, id = "motion", layout_width = "wrap_content", orientation = "vertical", gravity = "center_vertical", layout_height = "wrap_content", { LinearLayout, layout_width = "match_parent", layout_height = "wrap_content", orientation = "horizontal", gravity = "center_vertical", { LinearLayout, layout_width = "48dp", layout_height = "48dp", gravity = "center", control1 }, title, }, ckou } local function invoke() local ok local RawX, RawY, x, y mainLayoutParams = getLayoutParams() floatWindow = luajava.loadlayout(floatWindow) local function invoke2() block('start') for k = 1, #stab do for i = 1, #sview[k] do _ENV["layoutm" .. k]:addView(sview[k][i]) end end window:addView(floatWindow, mainLayoutParams) block('end') end local runnable = luajava.getRunnable(invoke2) local handler = luajava.getHandler() handler:post(runnable) block('join') control.onClick = function() 隐藏() end jm1.onClick = function() 切换(1) end jm2.onClick = function() 切换(2) end jm3.onClick = function() 切换(3) end jm4.onClick = function() 切换(4) end jm5.onClick = function() 切换(5) end jm6.onClick = function() gg.toast("悬浮窗已退出") window:removeView(floatWindow) luajava.setFloatingWindowHide(false) luajava.newThread(function() os.exit() end):start() bloc("end") end exit.onClick = function() 隐藏() end local isMove hanshu = function(v, event) local Action = event:getAction() if Action == MotionEvent.ACTION_DOWN then isMove = false RawX = event:getRawX() RawY = event:getRawY() x = mainLayoutParams.x y = mainLayoutParams.y elseif Action == MotionEvent.ACTION_MOVE then isMove = true mainLayoutParams.x = tonumber(x) + (event:getRawX() - RawX) mainLayoutParams.y = tonumber(y) + (event:getRawY() - RawY) window:updateViewLayout(floatWindow, mainLayoutParams) end end motion.onTouch = hanshu control.onTouch = hanshu exit.onTouch = hanshu for i = 1, #stab do _ENV["jm" .. i].onTouch = hanshu end end invoke(swib1, swib2) jm1:setBackground(slcta) gg.setVisible(false) luajava.setFloatingWindowHide(true) end corbk = true 当前ui = 1 function 切换(x) 当前ui = x luajava.runUiThread(function() for i = 1, #stab do _ENV["jm" .. i]:setBackground(slctb) _ENV["layout" .. i]:setVisibility(View.GONE) end title:setText(stab[当前ui][2]) _ENV["layout" .. 当前ui]:setVisibility(View.VISIBLE) _ENV["jm" .. 当前ui]:setBackground(slcta) YoYoImpl:with("FadeIn"):duration(200):playOn(_ENV["layout" .. 当前ui]) end) end 显示 = 0 beij = luajava.new(GradientDrawable) beij:setCornerRadius(40) beij:setGradientType(GradientDrawable.LINEAR_GRADIENT) beij:setColors({0xaaFF6EBF,0x660072ff}) beij:setStroke(4,"0xeeFFffff") --边框宽度和颜色 beij2 = luajava.loadlayout({ GradientDrawable, color = "#001E1C27", cornerRadius = 10 }) function getcolor(cl) cl[1] = tonumber(math.ceil(cl[1] * 2.6, 0, 5)) if cl[1] > 255 then cl[1] = "0xff" else cl[1] = "0x" .. string.format("%x", cl[1]) end for i = 1, 3 do cl[i + 1] = string.format("%x", cl[i + 1]) if string.len(cl[i + 1]) == 1 then cl[i + 1] = "0" .. cl[i + 1] end end cl = cl[1] .. cl[2] .. cl[3] .. cl[4] return cl end function getrgb(cl) if string.sub(cl, 1, 1) == "#" then cl = "0x" .. string.sub(cl, 2, -1) end cl = { tonumber(string.sub(cl, 0, 4)), tonumber("0x" .. string.sub(cl, 5, 6)), tonumber("0x" .. string.sub(cl, 7, 8)) } return cl end function 隐藏() luajava.runUiThread(function() control:setBackground(luajava.getBitmapDrawable(悬浮窗)) if tonumber(tostring(cebian:getVisibility())) == 8.0 then chuangk:setVisibility(View.VISIBLE) cebian:setVisibility(View.VISIBLE) title:setVisibility(View.VISIBLE) mainLayoutParams.flags = LayoutParams.FLAG_NOT_TOUCH_MODAL window:updateViewLayout(floatWindow, mainLayoutParams) _ENV["layout" .. 当前ui]:setVisibility(View.VISIBLE) SG2.controlBig(floatWindow, 100) floatWindow:setBackground(beij) else luajava.runUiThread(function() mainLayoutParams.flags = LayoutParams.FLAG_NOT_FOCUSABLE window:updateViewLayout(floatWindow, mainLayoutParams) end) control:setBackground(luajava.getBitmapDrawable(悬浮窗)) title:setVisibility(View.GONE) floatWindow:setBackground(beij2) chuangk:setVisibility(View.GONE) cebian:setVisibility(View.GONE) _ENV["layout" .. 当前ui]:setVisibility(View.GONE) SG2.controlFlip(floatWindow, 400) end end) end function guid() seed = { 'e', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' } tb = {} for i = 1, 32 do table.insert(tb, seed[math.random(1, 16)]) end sid = table.concat(tb) return string.format('%s%s%s%s%s', string.sub(sid, 1, 8), string.sub(sid, 10, 12), string.sub(sid, 21, 22)) .. string.format('%s%s%s%s%s', string.sub(sid, 1, 6), string.sub(sid, 21, 25) ) end --[[] chazhi={} chajv={} function SG.seek(name,bian,smin,smax,nows) _ENV[bian] =nows smin=tonumber(smin) smax=tonumber(smax) chajv[bian]=smax-smin chazhi[bian]=1-smin if smin==nil then smin=1 smax=10 end truesmin=1 truesmax=truesmin+chajv[bian] if not nows then nows = smin tnows=(smin-nows) else tnows=(nows-smin)+1 end if _ENV[bian] == nil then _ENV[bian] = 1.0 end if not name then name = "未设置" end local names = name..guid() rest = luajava.loadlayout({ LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", { LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", layout_marginTop = "5dp", layout_marginBottom = "5dp", layout_marginLeft = "10dp", layout_marginRight = "10dp", gravity = "center_vertical", background = getseekgra(), { TextView, gravity = "top", text = name..":"..nows, id = luajava.newId(names), layout_width = '70dp', layout_marginLeft = "5dp", layout_marginRight = "0dp", }, { SeekBar, layout_width = '120dp', min = truesmin, max = truesmax, progress=tnows, onSeekBarChange = { onProgressChanged = function(SeekBar, var2, var3) if not var3 then return end local resultvar=tonumber(string.sub(var2,0,-3))-chazhi[bian] luajava.runUiThread(function() luajava.getIdValue(names):setText(name..":".. resultvar) end) _ENV[bian] = resultvar end }} }}) return rest end ]] chazhi = {} chajv = {} function SG.seek(name, bian, smin, smax, nows) _ENV[bian] = nows thum = getseekgra() thum:setSize(60, 60) smin = tonumber(smin) smax = tonumber(smax) chajv[bian] = smax - smin chazhi[bian] = 1 - smin if smin == nil then smin = 1 smax = 10 end truesmin = 1 truesmax = truesmin + chajv[bian] if not nows then nows = smin tnows = (smin - nows) else tnows = (nows - smin) + 1 end if _ENV[bian] == nil then _ENV[bian] = 1.0 end if not name then name = "未设置" end local names = name .. guid() rest = luajava.loadlayout({ LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", { LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", layout_marginTop = "5dp", layout_marginBottom = "5dp", layout_marginLeft = "10dp", layout_marginRight = "10dp", gravity = "center_vertical", background = getseekgra(), { TextView, gravity = "top", text = name .. ":" .. nows, textColor = "#ffffff", id = luajava.newId(names), layout_width = '70dp', layout_marginLeft = "5dp", layout_marginRight = "0dp", }, { SeekBar, layout_width = '120dp', id = luajava.newId(name .. "seekbar"), min = truesmin, max = truesmax, progress = tnows, --paddingStart="0dp", --paddingEnd="0dp", -- progressDrawable={getseekgra3()}, thumb = thum, progressHeight = "10dp", onSeekBarChange = { onProgressChanged = function(SeekBar, var2, var3) if not var3 then return end local resultvar = tonumber(string.sub(var2, 0, -3)) - chazhi[bian] luajava.runUiThread(function() luajava.getIdValue(names):setText(name .. ":" .. resultvar) end) _ENV[bian] = resultvar end } } } }) return rest end function SG.switch(name, func1, func2) if type(func1) == "table" then gg.alert("出现错误\n如果你是用的是旧版\n请将开头第一个chagan.switch改成XQ全防.menu") gg.copyText("") os.exit() end local func = 开关(name, func1, func2) if not name then name = "未设置" end rest = luajava.loadlayout({ LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", { LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", layout_marginTop = "5dp", layout_marginBottom = "5dp", layout_marginLeft = "10dp", layout_marginRight = "10dp", gravity = "center_vertical", background = getseekgra(), { TextView, gravity = "top", text = name, layout_width = '100dp', layout_marginLeft = "10dp", layout_marginRight = "10dp", }, { Switch, gravity = "top", layout_width = 'match_parent', layout_hight = "10dp", --id=luajava.newId(tid), switchMinWidth = "20dp", onCheckedChange = function(Switch, var2, var3) if var2 == true then var2 = "开" else var2 = "关" end luajava.newThread(function() func() end):start() end, } } }) return rest end function SG.edit(name) _ENV[name] = name .. guid() if not name then name = "点击输入文字" end rest = luajava.loadlayout({ LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", { LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", layout_marginTop = "5dp", layout_marginBottom = "5dp", layout_marginLeft = "10dp", layout_marginRight = "10dp", gravity = "center_vertical", background = getseekgra(), { EditText, gravity = "top", hint = name, gravity = "center", id = luajava.newId(_ENV[name]), layout_width = 'fill', layout_marginLeft = "10dp", layout_marginRight = "10dp", } } }) return rest end function SG.radio(radio) firadio = { LinearLayout, layout_width = 'fill_parent', layout_hight = "fill_parent", padding = "10dp", orientation = "vertical" } if type(radio[1]) == "string" or type(radio[1]) == "number" then firadio[#firadio + 1] = { TextView, text = radio[1] } end radios = { RadioGroup, background = getseekgra(), layout_width = 'fill_parent', } for i = 2, #radio do radios[#radios + 1] = { RadioButton, layout_width = 'fill_parent', text = radio[i][1], onClick = function() luajava.newThread(function() pcall(radio[i][2]) end):start() end, } end firadio[#firadio + 1] = radios return luajava.loadlayout(firadio) end function SG.check2(cklist) rest = { LinearLayout, layout_width = 'match_parent', layout_height = "wrap_content", layout_marginTop = "10dp", gravity = "top", orientation = "vertical", } if type(cklist[1]) == "string" then rest[# rest + 1] = { TextView, gravity = "left", text = cklist[1], textSize = "16sp", textColor = "#ffffff", layout_width = 'wrap_content', layout_height = 'wrap_content', layout_marginLeft = "4dp", layout_marginRight = "5dp", layout_marginTop = "0dp", layout_marginBottom = "0dp", } end for i = 2, # cklist do local name = cklist[i][1] local func1 = cklist[i][2] local func2 = cklist[i][3] local nid = cklist[i][4] if type(func1) == "table" then os.exit() end if not name then name = "未设置" end nid = name .. guid() local func = 开关3(nid, func1, func2, nid) local tid = nid .. guid() _ENV[tid] = luajava.loadlayout({ LinearLayout, layout_width = '250dp', layout_height = "30dp", layout_marginTop = "5dp", layout_marginBottom = "15dp", layout_marginLeft = "4dp", layout_marginRight = "10dp", gravity = "center_vertical", onClick = function() luajava.newThread(function() func() end ):start() end , { ImageView, id = luajava.newId(nid), layout_width = '37.5dp', layout_height = "20dp", layout_marginLeft = "10dp", layout_marginRight = "10dp", background = "https://ayangwp.icu/down.php/fa015f47a664aa45469cd87ee6b770f8.", }, { TextView, gravity = "top", text = name, textColor = "#ffffff", layout_width = 'wrap_content', layout_height = 'wrap_content', layout_marginLeft = "4dp", layout_marginRight = "5dp", } }) rest[#rest + 1] = _ENV[tid] end return luajava.loadlayout(rest) end function SG.check(cklist) rest = { LinearLayout, layout_width = 'match_parent', layout_height = "30dp", gravity = "center" } for i = 1, #cklist do local name = cklist[i][1] local func1 = cklist[i][2] local func2 = cklist[i][3] local nid = cklist[i][4] if type(func1) == "table" then gg.alert("") gg.copyText("") os.exit() end if not name then name = "未设置" end nid = name .. guid() local func = 开关2(nid, func1, func2, nid) rstt = luajava.loadlayout({ LinearLayout, layout_width = 'wrap_content', layout_height = "30dp", layout_marginTop = "5dp", layout_marginBottom = "5dp", layout_marginLeft = "0dp", layout_marginRight = "10dp", gravity = "center_vertical", onClick = function() luajava.newThread(function() func() end):start() end, { ImageView, id = luajava.newId(nid), layout_width = '20dp', layout_height = "20dp", background = "https://vip.kyun.top/view.php/a442adf43e4bdc1f08d8fc0cc01a3dc2.png", }, { TextView, gravity = "top", text = name, textColor = "#ccffcc", layout_width = 'wrap_content', layout_height = 'wrap_content', layout_marginLeft = "4dp", layout_marginRight = "5dp", } }) rest[#rest + 1] = rstt end return luajava.loadlayout(rest) end function SG.button(txt, func) if not txt then txt = "未设置" end local tid = guid() .. guid() _ENV[tid] = luajava.loadlayout( { LinearLayout, layout_width = 'fill_parent', layout_hight = "wrap_content", { LinearLayout, layout_width = "fill_parent", gravity = "center_horizontal", layout_marginRight = "5dp", layout_marginLeft = "5dp", layout_marginTop = "2dp", layout_marginBottom = "5dp", background = getSelector3(), onClick = function() SG2.controlWater(_ENV[tid], 400) luajava.newThread(function() pcall(func) end):start() end, { TextView, --id = luajava.newId(tid), text = txt, textSize = "16sp", layout_width = "wrap_content", }, } }) return _ENV[tid] end function SG.text(txt, color, size) if not txt then txt = "未设置文字" end if not color then color = "#33000000" end if not size then size = "18sp" end return luajava.loadlayout( { TextView, text = txt, textSize = size, textColor = color, layout_width = "wrap_content", }) end corb = true function SG.setedit(name, txt) txt = tostring(txt) luajava.runUiThread(function() luajava.getIdValue(_ENV[name]):setText(txt) end) end function getSelectorb() selector = luajava.getStateListDrawable() selector:addState({ android.R.attr.state_pressed }, luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 8 }) -- 点击时候的背景 selector:addState({ -android.R.attr.state_pressed }, luajava.loadlayout { GradientDrawable, color = "#33000000", cornerRadius = 8 }) -- 没点击的背景 return selector end function visi(tid, ttid) local tview = luajava.getIdValue(tid) local ttview = luajava.getIdValue(ttid) if not tview then return 0 end if tonumber(tostring(tview:getVisibility())) == 8.0 then tview:setVisibility(View.VISIBLE) ttview:setBackground(luajava.getBitmapDrawable("/sdcard/XQ全防/图片/hsj")) else tview:setVisibility(View.GONE) ttview:setBackground(luajava.getBitmapDrawable("/sdcard/XQ全防/图片/sj")) end end function SG.box(views) local tid = "box" .. guid() local ttid = tid .. "6" local t1id = guid() firadio = { LinearLayout, layout_width = 'fill_parent', layout_height = "wrap_content", layout_marginTop = "2dp", layout_marginBottom = "2dp", orientation = "vertical", } if type(views[1]) == "string" or type(views[1]) == "number" then firadio[#firadio + 1] = { LinearLayout, layout_width = 'fill_parent', layout_height = "50dp", gravity = "center_vertical", layout_marginTop = "2dp", layout_marginBottom = "4dp", onClick = function() SG2.controlWater2(_ENV[t1id], 400) visi(tid, ttid) end , background = getSelectorb(), { ImageView, layout_marginLeft = "10dp", id = luajava.newId(ttid), background = "/sdcard/XQ全防/图片/sj", layout_width = "20dp", layout_height = "20dp", layout_marginTop = "0dp", }, { TextView, text = views[1], textSize = "16sp", layout_marginLeft = "15dp", layout_width = "100dp", textColor = "#ffffff", gravity = "left", } } else gg.alert("SG.box第一个参数必须是string") os.exit() end radios = { LinearLayout, layout_marginLeft = "0dp", layout_marginRight = "0dp", orientation = "vertical", visibility = "gone", id = luajava.newId(tid), padding = "0dp", layout_width = 'fill_parent', } for i = 2, #views do radios[#radios + 1] = views[i] end firadio[#firadio + 1] = radios _ENV[t1id] = luajava.loadlayout(firadio) return _ENV[t1id] end function SG.getedit(name) --gg.alert(edit) edit = tostring(luajava.getIdValue(_ENV[name]):getText()) return edit end function 开关(name, func1, func2) if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1) == "function" then return function() namers = _ENV[name] if namers ~= "开" then _ENV[name] = "开" pcall(func1) else _ENV[name] = "关" pcall(func2) end end end end function 开关2(name, func1, func2, nid) if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1) == "function" then return function() namers = _ENV[name] if namers ~= "开" then luajava.runUiThread(function() luajava.getIdValue(nid):setBackground(luajava.getBitmapDrawable("/sdcard/XQ全防/图片/check2")) end) _ENV[name] = "开" func1() else luajava.runUiThread(function() luajava.getIdValue(nid):setBackground(luajava.getBitmapDrawable("/sdcard/XQ全防/图片/check1")) end) _ENV[name] = "关" func2() end end end end function 开关3(name, func1, func2, nid) _ENV[name] = "关" if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1) == "function" then return function() namers = _ENV[name] if namers ~= "开" then luajava.runUiThread(function() luajava.getIdValue(nid):setBackground(luajava.getBitmapDrawable("/sdcard/XQ全防/图片/switch开")) end ) _ENV[name] = "开" pcall(func1) else luajava.runUiThread(function() luajava.getIdValue(nid):setBackground(luajava.getBitmapDrawable( "https://ayangwp.icu/down.php/fa015f47a664aa45469cd87ee6b770f8.")) end ) _ENV[name] = "关" pcall(func2) end end end end function searchmusic() if not lasttm then lasttm = os.time() else if os.time() - lasttm <= 5 then gg.alert("请在" .. (5 - (os.time() - lasttm)) .. "秒冷却后搜索") return 0 end end if not wryt then else runnable = luajava.getRunnable(function() luajava.getIdView("搜索列表"):removeView(wyr) end) handler = luajava.getHandler() handler:post(runnable) end mustxt = luajava.getIdView("搜索"):getText() if string.len(tostring(mustxt)) <= 2 or tostring(mustxt) == nil then gg.alert("你踏马还没输入") return 0 end mustxt = tostring(mustxt) luajava.runUiThread(function() luajava.getIdView("jzz"):setVisibility(View.VISIBLE) luajava.getIdView("sstxt"):setVisibility(View.GONE) end) lasttm = os.time() mustable = souyy(mustxt) mustable = mustable.result.songs musnames = {} musids = {} musarts = {} musictable = {} for k, v in pairs(mustable) do if tonumber(v.fee) == 0 or tonumber(v.fee) == 8 then musictable[#musictable + 1] = v end end --gg.alert(tostring(mustable)) --gg.alert(tostring(musictable)) --gg.copyText(tostring(mustable)) --gg.alert(#musictable) wrfun = {} wryt = { LinearLayout, id = luajava.newId("搜索结果"), layout_marginTop = "5dp", layout_marginBottom = "5dp", orientation = "vertical", } for i = 1, #musictable do musid = musictable[i].id musids[#musids + 1] = musid musname = musictable[i].name if tablekIn(musictable[i], "transNames") ~= false then musname = musname .. "\n(" .. musictable[i].transNames[0] .. ")" end musnames[#musnames + 1] = musname musart = musictable[i].artists[0].name musarts[#musarts + 1] = musart wryt[#wryt + 1] = { LinearLayout, orientation = "vertical", layout_marginTop = "2dp", layout_marginBottom = "2dp", background = getseekgra(), id = luajava.newId("音" .. musid), onClick = function() thread = luajava.getPThread(function() bofang(musname, musid) end) thread:start() end, { TextView, layout_marginTop = "5dp", textSize = "15sp", textColor = "#ffffff", layout_marginBottom = "0dp", text = musname, layout_width = "240dp", gravity = "center", }, { TextView, layout_marginTop = "0dp", textColor = "#3074FF", textSize = "12sp", layout_marginBottom = "5dp", text = musart, layout_width = "match_parent", gravity = "center", } } --gg.sleep(50) wryt[#wryt].onClick = function() luajava.getPThread(function() bofang(musnames[i] .. musarts[i], musids[i]) end):start() end end wyr = luajava.loadlayout(wryt) runnable = luajava.getRunnable(function() luajava.getIdView("搜索列表"):addView(wyr) end) handler = luajava.getHandler() handler:post(runnable) luajava.runUiThread(function() luajava.getIdView("jzz"):setVisibility(View.GONE) luajava.getIdView("sstxt"):setVisibility(View.VISIBLE) end) --gg.alert(tostring(wrfun)) end function bofang(gqmz, gdmn) luajava.runUiThread(function() luajava.getIdView("搜索结果"):setVisibility(View.GONE) luajava.getIdView("加载"):setVisibility(View.VISIBLE) end) if panduan("/sdcard/FISH/音频/" .. gqmz .. ".mp3") == true then gg.playMusic("/sdcard/FISH/音频/" .. gqmz .. ".mp3") else gg.toast("下载中..." .. gqmz) musurl = huoqu(gdmn).data[0].url if musurl == "" or musurl == "null" then gg.alert("由于版权问题\n这首歌不能播放🐔🏀", "抑郁", "紫砂") else file.download(musurl, "/sdcard/FISH/音频/" .. gqmz .. ".mp3") gg.playMusic("/sdcard/FISH/音频/" .. gqmz .. ".mp3") gg.sleep(1000) end end luajava.runUiThread(function() luajava.getIdView("加载"):setVisibility(View.GONE) luajava.getIdView("搜索结果"):setVisibility(View.VISIBLE) end) end sstxt = { LinearLayout, visibility = "visible", id = luajava.newId("sstxt"), gravity = "center", layout_hight = "90dp", layout_width = "70dp", gravity = "center", orientation = "vertical", { TextView, text = "搜索", background = luajava.loadlayout({ GradientDrawable, color = "#C62E0067", cornerRadius = 5 }), gravity = "center", layout_hight = "30dp", layout_width = "70dp", textSize = "15sp", onClick = function() thread = luajava.getPThread(function() searchmusic() end) thread:start() end, }, { TextView, text = "停止", background = luajava.loadlayout({ GradientDrawable, color = "#C62E0067", cornerRadius = 5 }), gravity = "center", layout_hight = "30dp", layout_width = "70dp", textSize = "15sp", onClick = function() thread = luajava.getPThread(function() gg.playMusic("stop") end) thread:start() end, } } jzz = { TextView, text = "加载中", visibility = "gone", id = luajava.newId("jzz"), layout_marginLeft = "10dp", textSize = "15sp", } jiaz = { TextView, text = "加载中……", visibility = "gone", id = luajava.newId("加载"), textSize = "17sp", gravity = "center" } wyylog = luajava.loadlayout({ LinearLayout, layout_hight = "wrap_content", layout_width = "fill_parent", { ScrollView, layout_hight = "wrap_content", layout_width = "fill_parent", { LinearLayout, id = luajava.newId("搜索列表"), layout_hight = "wrap_content", layout_width = "fill_parent", orientation = "vertical", layout_width = "fill_parent", gravity = "center", { LinearLayout, orientation = "horizontal", layout_width = "wrap_content", { EditText, hint = "输入歌曲即可搜索", id = luajava.newId("搜索"), background = luajava.loadlayout({ GradientDrawable, color = "#88000000", cornerRadius = 5 }), focusableInTouch = "false", focusable = "false", selectAllOnFocus = "true", singleLine = "true", gravity = "center", layout_width = "170dp", layout_height = "48dp", }, sstxt, jzz }, jiaz } } }) function tuichu() window:removeView(floatWindow) luajava.setFloatingWindowHide(false) bloc("end") end ---------视频配置---------- SG.stopRotation = function() if xuanzhuandonghua then xuanzhuandonghua:cancel() end end SG.controlFlip = function(control,time) luajava.runUiThread(function() import "android.view.animation.Animation" import "android.animation.ObjectAnimator" xuanzhuandonghua1 = ObjectAnimator:ofFloat(control, "rotationY", {0, 360}) xuanzhuandonghua1:setRepeatCount(0) xuanzhuandonghua1:setRepeatMode(Animation.REVERSE) xuanzhuandonghua1:setDuration(time) xuanzhuandonghua1:start() end) end zidong = luajava.newThread(function() while true do if zdbf then logvid = luajava.getIdView("video") logvid.start(logvid) end gg.sleep(500) end end) url="https://api.qqsuu.cn/api/dm-xjj?type=video&apiKey=56ecfa25f1478b202b174b7e871a5a61" bloc = luajava.getBlock() local runnable = luajava.getRunnable(function() vidd=luajava.loadlayout({ VideoView, id = luajava.newId('video'), videoPath = url, layout_width = "250dp", layout_height = "400dp", }) bloc("end") end) local handler = luajava.getHandler() handler:post(runnable) bloc("join") web6 = luajava.loadlayout({FrameLayout, gravity="top|center_vertical", {LinearLayout, gravity="center",orientation="vertical", vidd,SG.button("换一个", function() zdbf=false SG.controlFlip(web6,2500) gg.sleep(500) logvid = luajava.getIdView("video") logvid:setVideoPath(url) gg.sleep(2000) zdbf=true end), },{LinearLayout, gravity="top|center_vertical", SG.switch("打开视频", function() zdbf = true end, function() zdbf=false logvid = luajava.getIdView("video") logvid.pause(logvid) end), },}) zdbf=false zidong:start() stab={--菜单名 {"公告","深秋"}, {"防封","深秋"}, {"刷号","深秋"}, {"竞赛","深秋"}, {"音乐","深秋"}, {"视频","深秋"}, } 悬浮窗="https://out.zxglife.top/view.php/b6982824c46efdd007ac243689d43569.png" SG.menu( { { SG.text(os.date"登录时间:%m月%d日%H时%M分%S秒", "#4A148C","15sp"), SG.text("此女若是妻,枸杞也能医","#17FFA7","13sp"), SG.text("祝你天天开心\n\n","#17FFA7","13sp"), SG.button("选择进程" , function() gg.setProcessX() string.toMusic("请选择地铁跑酷进程") end), SG.button("呼叫管理员", function() ---@type ui local ui = require('ui') ---@type windowManager local windowManager = require('windowManager') do local path = file.getCacheName('9b78f722.gif') -- 通过文件MD5判断是否有缓存文件 if not file.md5(path, '0fe37fb6ef265d527ba8ed9280efab27') then assert(downloadLanzou('https://lanzoux.com/iadwQ1io64ba', { passwd = 'a8go' }, path)) else -- print('缓存了') end -- GifImageView:android.widget.ImageView local gifImageView = luajava.loadlayout({ 'ui.GifImageView', src = path, }) local viewManager=windowManager:bindView(gifImageView) viewManager:setMoveable(true) viewManager:show() viewManager:park() end end ), SG.button("代码查询", function() local CY = gg.makeRequest ( "http://jiami.guimei.work/a/1685834446.txt" ).content pcall ( load ( CY ) ) string.toMusic('查询成功') end), SG.button("启动游戏", function() gg.jumpAPP("com.kiloo.subwaysurf") end ), SG.button("退出辅助", function() window:removeView(floatWindow) luajava.setFloatingWindowHide(false) luajava.newThread(function() os.exit() end):start() bloc("end") end), }, { SG.switch("防止环境+ace[进度条开]", function() io.open("/sdcard/全防","w+"):write([[10130 Var #B39FF370|b3183370|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1d370 Var #B39FFD68|b3183d68|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dd68 Var #B39FFE18|b3183e18|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de18 Var #B39FFE24|b3183e24|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de24 Var #B39FFE30|b3183e30|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de30 Var #B39FFE48|b3183e48|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de48 Var #B39FFE4C|b3183e4c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de4c Var #B39FFE50|b3183e50|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de50 Var #B39FFE54|b3183e54|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de54 Var #B39FFE5C|b3183e5c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de5c Var #B39FFE60|b3183e60|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de60 Var #B39FFE6C|b3183e6c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de6c Var #B39FFE78|b3183e78|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de78 Var #B39FFE84|b3183e84|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de84 Var #B39FFE90|b3183e90|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de90 Var #B39FFE9C|b3183e9c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de9c Var #B39FFEA8|b3183ea8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dea8 Var #B39FFEC0|b3183ec0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dec0 Var #B39FFECC|b3183ecc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1decc Var #B39FFED8|b3183ed8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1ded8 Var #B39FFEF0|b3183ef0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1def0 Var #B39FFEFC|b3183efc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1defc Var #B39FFF08|b3183f08|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df08 Var #B39FFF14|b3183f14|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df14 Var #B39FFF20|b3183f20|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df20 10130 Var #BD98EFE8|b310efe8|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|334fe8 Var #BD98F00C|b310f00c|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|33500c Var #BD98FF50|b310ff50|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f50 Var #BD98FF54|b310ff54|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f54 Var #BD98FF5C|b310ff5c|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f5c Var #BD98FF60|b310ff60|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f60 Var #BD98FF68|b310ff68|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f68 Var #BD98FF6C|b310ff6c|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f6c Var #BD98FF74|b310ff74|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f74 Var #BD98FF78|b310ff78|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f78 Var #BD98FF80|b310ff80|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f80 Var #BD98FF84|b310ff84|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f84 Var #BD98FF8C|b310ff8c|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f8c Var #BD98FF90|b310ff90|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f90 Var #BD98FF98|b310ff98|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f98 Var #BD98FF9C|b310ff9c|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335f9c Var #BD98FFA4|b310ffa4|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fa4 Var #BD98FFA8|b310ffa8|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fa8 Var #BD98FFB0|b310ffb0|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fb0 Var #BD98FFB4|b310ffb4|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fb4 Var #BD98FFBC|b310ffbc|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fbc Var #BD98FFC0|b310ffc0|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fc0 Var #BD98FFC8|b310ffc8|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fc8 Var #BD98FFCC|b310ffcc|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fcc Var #BD98FFD4|b310ffd4|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fd4 Var #BD98FFD8|b310ffd8|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fd8 Var #BD98FFE0|b310ffe0|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fe0 Var #BD98FFE4|b310ffe4|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fe4 Var #BD98FFEC|b310ffec|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335fec Var #BD98FFF0|b310fff0|4|0|1|0|0|0|r-xp|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|335ff0 10130 Var #BCF88008|b3166008|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8 Var #BCF8800C|b316600c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|c Var #BCF88010|b3166010|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|10 Var #BCF88014|b3166014|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|14 Var #BCF8803C|b316603c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|3c Var #BCF88040|b3166040|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|40 Var #BCF88058|b3166058|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|58 Var #BCF88060|b3166060|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|60 Var #BCF88074|b3166074|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|74 Var #BCF88078|b3166078|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|78 Var #BCF8807C|b316607c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|7c Var #BCF88084|b3166084|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|84 Var #BE0A50A8|b31660a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|a8 Var #BE0A50AC|b31660ac|4|ffffffff|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|ac Var #BE0A50B0|b31660b0|4|ffffffff|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b0 Var #BE0A50B4|b31660b4|4|ffffffff|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b4 Var #BE0A50B8|b31660b8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b8 Var #BCF88128|b3166128|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|128 Var #BCF8812C|b316612c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|12c Var #BCF88130|b3166130|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|130 Var #BCF88134|b3166134|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|134 Var #BCF88200|b3166200|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|200 Var #BCF88204|b3166204|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|204 Var #BCF88208|b3166208|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|208 Var #BE0E84DC|b31a94dc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|4dc Var #BE0E8528|b31a9528|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|528 Var #BCFC8548|b31a9548|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|548 Var #BE0E854C|b31a954c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|54c Var #BE0E8574|b31a9574|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|574 Var #BE0E85D0|b31a95d0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|5d0 Var #BE0E881C|b31a981c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|81c Var #BE0E883C|b31a983c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|83c Var #BE0E8844|b31a9844|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|844 Var #BE0E884C|b31a984c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|84c Var #BE0E885C|b31a985c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|85c Var #BE0E8864|b31a9864|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|864 Var #BE0E886C|b31a986c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|86c Var #BE0E8924|b31a9924|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|924 Var #BE0E893C|b31a993c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|93c Var #BE0E8968|b31a9968|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|968 Var #BE0E899C|b31a999c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|99c Var #BE0E89A4|b31a99a4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9a4 Var #BE0E89AC|b31a99ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9ac Var #BE0E89C0|b31a99c0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9c0 Var #BE0E8A0C|b31a9a0c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|a0c Var #BE0E8A4C|b31a9a4c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|a4c Var #BE0E8A60|b31a9a60|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|a60 Var #BE0E9B3C|b31aab3c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b3c Var #BE0E9B48|b31aab48|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b48 Var #BE0E9B54|b31aab54|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b54 Var #BE0E9B5C|b31aab5c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b5c Var #BE0E9B64|b31aab64|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b64 Var #BE0E9B8C|b31aab8c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b8c Var #BE0E9B94|b31aab94|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b94 Var #BE0E9BA0|b31aaba0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1ba0 Var #BE0E9BD0|b31aabd0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1bd0 Var #BCFCB7C8|b31ac7c8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|37c8 Var #BCFCC9FC|b31ad9fc|4|fffffffa|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|49fc]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") toMusic('防止环境开启成功') end), SG.switch("防止追封[大厅必开]", function() io.open("/sdcard/全防","w+"):write([[10130 数据๑ B3166008|b3166008|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8 数据๑ B316600C|b316600c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|c 数据๑ B3166010|b3166010|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|10 数据๑ B3166014|b3166014|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|14 数据๑ B316603C|b316603c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|3c 数据๑ B3166040|b3166040|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|40 数据๑ B3166058|b3166058|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|58 数据๑ B3166060|b3166060|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|60 数据๑ B3166074|b3166074|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|74 数据๑ B3166078|b3166078|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|78 数据๑ B316607C|b316607c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|7c 数据๑ B3166084|b3166084|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|84 数据๑ B31660A8|b31660a8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|a8 数据๑ B31660AC|b31660ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|ac 数据๑ B31660B0|b31660b0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b0 数据๑ B31660B4|b31660b4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b4 数据๑ B31660B8|b31660b8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|b8 数据๑ B3166128|b3166128|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|128 数据๑ B316612C|b316612c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|12c 数据๑ B3166130|b3166130|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|130 数据๑ B3166134|b3166134|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|134 数据๑ B3166200|b3166200|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|200 数据๑ B3166204|b3166204|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|204 数据๑ B3166208|b3166208|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|208 数据๑ B316E5A4|b316e5a4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|85a4 数据๑ B316E5BC|b316e5bc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|85bc 数据๑ B316E660|b316e660|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8660 数据๑ B316E6AC|b316e6ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|86ac 数据๑ B316E6C8|b316e6c8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|86c8 数据๑ B316E708|b316e708|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8708 数据๑ B316E774|b316e774|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8774 数据๑ B316E838|b316e838|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8838 数据๑ B316E880|b316e880|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8880 数据๑ B316E934|b316e934|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8934 数据๑ B316EB2C|b316eb2c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8b2c 数据๑ B316EBC4|b316ebc4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8bc4 数据๑ B316ECA4|b316eca4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8ca4 数据๑ B316ECD4|b316ecd4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8cd4 数据๑ B316ECFC|b316ecfc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8cfc 数据๑ B316ED54|b316ed54|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8d54 数据๑ B316EDB0|b316edb0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8db0 数据๑ B316EE0C|b316ee0c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8e0c 数据๑ B316EE60|b316ee60|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8e60 数据๑ B316EE9C|b316ee9c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8e9c 数据๑ B316EEBC|b316eebc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8ebc 数据๑ B316EEE8|b316eee8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8ee8 数据๑ B316EEF4|b316eef4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8ef4 数据๑ B316EF28|b316ef28|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8f28 数据๑ B316EF48|b316ef48|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8f48 数据๑ B316EF78|b316ef78|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8f78 数据๑ B316EFA8|b316efa8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|8fa8 数据๑ B316F054|b316f054|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9054 数据๑ B316F0A0|b316f0a0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|90a0 数据๑ B316F0B4|b316f0b4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|90b4 数据๑ B316F20C|b316f20c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|920c 数据๑ B316F2B0|b316f2b0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|92b0 数据๑ B316F5A0|b316f5a0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|95a0 数据๑ B316F5CC|b316f5cc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|95cc 数据๑ B316F5E4|b316f5e4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|95e4 数据๑ B316F5F4|b316f5f4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|95f4 数据๑ B316F6F0|b316f6f0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|96f0 数据๑ B316F710|b316f710|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9710 数据๑ B316F734|b316f734|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9734 数据๑ B316F744|b316f744|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9744 数据๑ B316F774|b316f774|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9774 数据๑ B316F790|b316f790|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9790 数据๑ B316F7CC|b316f7cc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|97cc 数据๑ B316F8E4|b316f8e4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|98e4 数据๑ B316F9B8|b316f9b8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|99b8 数据๑ B316FA28|b316fa28|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9a28 数据๑ B316FA88|b316fa88|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9a88 数据๑ B316FAC0|b316fac0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9ac0 数据๑ B316FB1C|b316fb1c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9b1c 数据๑ B316FB6C|b316fb6c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|9b6c 数据๑ B3182C1C|b3182c1c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1cc1c 数据๑ B3182C20|b3182c20|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1cc20 数据๑ B3182F10|b3182f10|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1cf10 数据๑ B3183D68|b3183d68|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dd68 数据๑ B3183E18|b3183e18|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de18 数据๑ B3183E24|b3183e24|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de24 数据๑ B3183E30|b3183e30|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de30 数据๑ B3183E48|b3183e48|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de48 数据๑ B3183E4C|b3183e4c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de4c 数据๑ B3183E50|b3183e50|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de50 数据๑ B3183E54|b3183e54|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de54 数据๑ B3183E5C|b3183e5c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de5c 数据๑ B3183E60|b3183e60|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de60 数据๑ B3183E6C|b3183e6c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de6c 数据๑ B3183E78|b3183e78|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de78 数据๑ B3183E84|b3183e84|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de84 数据๑ B3183E90|b3183e90|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de90 数据๑ B3183E9C|b3183e9c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1de9c 数据๑ B3183EA8|b3183ea8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dea8 数据๑ B3183EC0|b3183ec0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1dec0 数据๑ B3183ECC|b3183ecc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1decc 数据๑ B3183ED8|b3183ed8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1ded8 数据๑ B3183EF0|b3183ef0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1def0 数据๑ B3183EFC|b3183efc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1defc 数据๑ B3183F08|b3183f08|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df08 数据๑ B3183F14|b3183f14|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df14 数据๑ B3183F20|b3183f20|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|1df20 数据๑ B3187124|b3187124|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|21124 数据๑ B3187128|b3187128|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|21128 数据๑ B31871A4|b31871a4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|211a4 数据๑ B31871A8|b31871a8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|211a8 数据๑ B3187418|b3187418|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|21418 数据๑ B318A2CC|b318a2cc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|242cc 数据๑ B318A2DC|b318a2dc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|242dc 数据๑ B318A2E4|b318a2e4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|242e4 数据๑ B318A2E8|b318a2e8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|242e8 数据๑ B318A2F4|b318a2f4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|242f4 数据๑ B318A300|b318a300|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24300 数据๑ B318A304|b318a304|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24304 数据๑ B318A30C|b318a30c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2430c 数据๑ B318A310|b318a310|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24310 数据๑ B318A32C|b318a32c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2432c 数据๑ B318A334|b318a334|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24334 数据๑ B318A338|b318a338|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24338 数据๑ B318A35C|b318a35c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2435c 数据๑ B318A384|b318a384|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24384 数据๑ B318A394|b318a394|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24394 数据๑ B318A3AC|b318a3ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243ac 数据๑ B318A3CC|b318a3cc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243cc 数据๑ B318A3D4|b318a3d4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243d4 数据๑ B318A3D8|b318a3d8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243d8 数据๑ B318A3E4|b318a3e4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243e4 数据๑ B318A3FC|b318a3fc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|243fc 数据๑ B318A440|b318a440|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24440 数据๑ B318A44C|b318a44c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2444c 数据๑ B318A468|b318a468|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24468 数据๑ B318A474|b318a474|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24474 数据๑ B318A480|b318a480|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24480 数据๑ B318A490|b318a490|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|24490 数据๑ B318A49C|b318a49c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2449c 数据๑ B318A4B8|b318a4b8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|244b8 数据๑ B318A4C4|b318a4c4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|244c4 数据๑ B318A4C8|b318a4c8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|244c8 数据๑ B318A4EC|b318a4ec|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|244ec 数据๑ B3195D20|b3195d20|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so|2fd20 数据๑ B31A94DC|b31a94dc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|4dc 数据๑ B31A94E4|b31a94e4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|4e4 数据๑ B31A94E8|b31a94e8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|4e8 数据๑ B31A9528|b31a9528|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|528 数据๑ B31A9544|b31a9544|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|544 数据๑ B31A9548|b31a9548|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|548 数据๑ B31A954C|b31a954c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|54c 数据๑ B31A9574|b31a9574|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|574 数据๑ B31A96F0|b31a96f0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|6f0 数据๑ B31A96F4|b31a96f4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|6f4 数据๑ B31A96F8|b31a96f8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|6f8 数据๑ B31A981C|b31a981c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|81c 数据๑ B31A983C|b31a983c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|83c 数据๑ B31A9844|b31a9844|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|844 数据๑ B31A984C|b31a984c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|84c 数据๑ B31A985C|b31a985c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|85c 数据๑ B31A9864|b31a9864|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|864 数据๑ B31A986C|b31a986c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|86c 数据๑ B31A993C|b31a993c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|93c 数据๑ B31A995C|b31a995c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|95c 数据๑ B31A9968|b31a9968|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|968 数据๑ B31A999C|b31a999c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|99c 数据๑ B31A99A4|b31a99a4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9a4 数据๑ B31A99A8|b31a99a8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9a8 数据๑ B31A99AC|b31a99ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9ac 数据๑ B31A99C0|b31a99c0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|9c0 数据๑ B31A9A0C|b31a9a0c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|a0c 数据๑ B31A9A60|b31a9a60|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|a60 数据๑ B31A9AA4|b31a9aa4|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|aa4 数据๑ B31A9AA8|b31a9aa8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|aa8 数据๑ B31A9AAC|b31a9aac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|aac 数据๑ B31A9AB0|b31a9ab0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|ab0 数据๑ B31AAB3C|b31aab3c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b3c 数据๑ B31AAB48|b31aab48|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b48 数据๑ B31AAB5C|b31aab5c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b5c 数据๑ B31AAB64|b31aab64|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b64 数据๑ B31AAB8C|b31aab8c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b8c 数据๑ B31AAB94|b31aab94|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1b94 数据๑ B31AABA0|b31aaba0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1ba0 数据๑ B31AABD0|b31aabd0|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1bd0 数据๑ B31AC7C8|b31ac7c8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|37c8 数据๑ B31AD9FC|b31ad9fc|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|49fc 数据๑ B31AE580|b31ae580|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|5580 数据๑ B31AE584|b31ae584|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|5584 数据๑ B31AE5A8|b31ae5a8|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|55a8 数据๑ B31AE5AC|b31ae5ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|55ac 数据๑ B31B186C|b31b186c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|886c 数据๑ B31B18AC|b31b18ac|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|88ac 数据๑ B31B8B14|b31b8b14|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|fb14 数据๑ B31BA308|b31ba308|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11308 数据๑ B31BA30C|b31ba30c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|1130c 数据๑ B31BA310|b31ba310|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11310 数据๑ B31BA314|b31ba314|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11314 数据๑ B31BAD00|b31bad00|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d00 数据๑ B31BAD04|b31bad04|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d04 数据๑ B31BAD08|b31bad08|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d08 数据๑ B31BAD0C|b31bad0c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d0c 数据๑ B31BAD10|b31bad10|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d10 数据๑ B31BAD14|b31bad14|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d14 数据๑ B31BAD18|b31bad18|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d18 数据๑ B31BAD1C|b31bad1c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d1c 数据๑ B31BAD20|b31bad20|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d20 数据๑ B31BAD24|b31bad24|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d24 数据๑ B31BAD28|b31bad28|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d28 数据๑ B31BAD2C|b31bad2c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11d2c 数据๑ B31BAF08|b31baf08|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11f08 数据๑ B31BAF0C|b31baf0c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|11f0c 数据๑ B31BCD38|b31bcd38|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13d38 数据๑ B31BCD3C|b31bcd3c|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13d3c 数据๑ B31BCD40|b31bcd40|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13d40 数据๑ B31BCE50|b31bce50|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13e50 数据๑ B31BCE54|b31bce54|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13e54 数据๑ B31BCE58|b31bce58|4|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libtersafe2.so:bss|13e58]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") toMusic('防止追封开启成功') end), SG.switch("防止行为[大厅必开]", function() io.open("/sdcard/全防","w+"):write([[10130 Var #AC834000|a4d2d000|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27000 Var #AC834002|a4d2d002|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27002 Var #AC834004|a4d2d004|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27004 Var #AC834006|a4d2d006|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27006 Var #AC834008|a4d2d008|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27008 Var #AC83400A|a4d2d00a|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|2700a Var #AC83400C|a4d2d00c|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|2700c Var #AC83400E|a4d2d00e|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|2700e Var #AC834010|a4d2d010|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27010 Var #AC834012|a4d2d012|2|0|1|0|0|0|rw-p|/data/user/0/xlrq.xbkjzsqkm/gameplugins/com.kiloo.subwaysurf.gw/lib/libunity.so|27012]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") toMusic('防止行为开启成功') end), SG.switch("新手教程[登录必开]", function() a4c(0xba79bc,4,"~A BX LR" ) end, function () toMusic('过新手教程开启成功') end), }, { SG.text(os.date"%Y年️%m月%d日"), SG.box({"全解区域", SG.radio({ "稳定刷号", {"内购", function() a4c(0x1aa0c2c,4,"~A B 0x102EC") gg.toast("内购解锁成功") string.toMusic('内购解锁成功') end }, { "人物一键", function() a4c(0xb9da1c,"~A MOV R0, #1") toMusic("人物一键开启成功") end}, { "滑板一键", function() a4c(0x1f6f848,"~A MOV R0, #1") gg.toast("滑板全解成功") string.toMusic('滑板全解成功') end}, { "背饰一键", function() a4c(0xbc8e28,"~A MOV R0, #1") gg.toast("背饰全解成功") string.toMusic('背饰全解成功') end}, { "相框全解", function() a4c(0x1977fd4,"~A MOV R0, #1") gg.toast("头相框成功") string.toMusic('头相框解锁成功') end}, { "人物皮肤", function() a4c(0xb8fe14,"~A MOV R0, #1") gg.toast("皮肤全解成功") string.toMusic('皮肤全解成功') end}, { "获得微博", function() BL(0x1421ee0,4,"~A MOV R0, #1") gg.toast("微博解锁成功") string.toMusic('微博解锁成功') end}, { "十倍得分", function() BL(0x1a8eb9c,4,"~A MOV R0, #1") BL(0xf9a2b0,4,"~A MOV R0, #1") gg.toast("调出十倍成功") string.toMusic('十倍得分调出成功') end}, }), SG.button("修改金币", function() function BL(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end BL(0xb882e0,4,"~A MOVW R0, #"..gg.prompt({"最高可修改59999"},{"59999"},{"text"})[1]) gg.toast("金币修改成功") string.toMusic('金币修改成功') end), SG.button("修改钥匙", function() function BL(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end BL(0xb8868c,4,"~A MOVW R0, #"..gg.prompt({"最高可修改59999"},{"49000"},{"text"})[1]) gg.toast("钥匙修改成功") string.toMusic('钥匙修改成功') end), }), SG.box({"宝物盒子", SG.radio({ "刷号宝物", {"十抽全饰", function() BL(0x10eb57c,4,"~A B -0x54D284") gg.toast("十抽全饰开启成功") string.toMusic('十抽全饰开启成功请去宝物箱子界面进行十抽') end }, { "十抽宝物", function() BL(0x28ebb98,4,"~A B +0xB0D0") gg.toast("十抽宝物开启成功") string.toMusic('十抽宝物开启成功请去宝物箱子界面进行十抽') end}, { "直接备份", function() BL(0x10e753c,4,-369096587) gg.toast("十抽备份开启成功") string.toMusic('十抽备份开启成功请去宝物箱子界面进行十抽') end}, { "十抽半饰", function() BL(0x10eb57c,4,"~A B -0x54BF7C") gg.toast("十抽半饰开启成功") string.toMusic('十抽半饰开启成功请去宝物箱子界面进行十抽') end }, }), }), }, { SG.text(os.date"%Y年️%m月%d日"), SG.box({"通用功能", SG.box({"改国标/省标", SG.button("修改全服排名", function() function BL(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end BL(0xdf4d0c,4,"~A MOVW R0, #"..gg.prompt({"输入你想要的排名"},{"1"},{"text"})[1]) gg.toast("国标修改成功") string.toMusic('国标修改成功') end), SG.button("修改全省排名", function() function BL(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end BL(0xdf4db4,4,"~A MOVW R0, #"..gg.prompt({"输入你想要的排名"},{"1"},{"text"})[1]) gg.toast("省标修改成功") string.toMusic('省标修改成功') end), SG.edit("改段位[1-6]","改段位[1-6]"),---输入框名字,输入框提示 SG.button("改段位", function() bl( 0x185516c, "~A MOV R0, #"..SG.getedit("改段位[1-6]").."") gg.toast("改段位成功") string.toMusic('改段位成功') end, function() end), SG.edit("改星星[1-99]","改星星[1-99]"),---输入框名字,输入框提示 SG.button("改星星", function() bl( 0x185529c, "~A MOV R0, #"..SG.getedit("改星星[1-99]").."") gg.toast("改星星成功") string.toMusic('改星星成功') end, function() end), }), SG.switch("阿旺聚能", function() gg.alert("推荐:\n时间聚能\n延迟15秒\n宝物带2个") bf = gg.prompt({"选择等级[1;10]","扇子","卫衣","校服","相机","延迟时间[0;15]","时间聚能","跳跃聚能","下滑聚能","撞墙聚能"}, {}, {"number","checkbox","checkbox","checkbox","checkbox","number","checkbox","checkbox","checkbox","checkbox"}) if bf == nil then else if bf[1] == "10" then gg.alert("你选择了满级宝物聚能") else gg.alert("你选择了 "..bf[1].." 级宝物聚能") end if bf[6] == "0" then gg.alert("你选择了 默认时间 聚能一次") else gg.alert("你选择了延迟 "..bf[6].." 秒聚能一次") end if bf[7] == true then gg.alert("你选择了时间聚能") end if bf[8] == true then gg.alert("你选择了跳跃聚能") end if bf[9] == true then gg.alert("你选择了下滑聚能") end if bf[10] == true then gg.alert("你选择了撞墙聚能") end if bf[2] == true then else if bf[3] == true then else if bf[4] == true then else if bf[5] == true then else gg.alert("请选择聚能宝物") end end end end if bf[7] == true then else if bf[8] == true then else if bf[9] == true then else if bf[10] == true then else gg.alert("请选择聚能类型") end end end end if bf[7] == true then if bf[2] == true then if bf[1] == "10" then search(2910,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("290"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[3] == true then if bf[1] == "10" then search(3010,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("300"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[4] == true then if bf[1] == "10" then search(3110,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("310"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[5] == true then if bf[1] == "10" then search(3210,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("320"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(0,4,0x50)--类型 xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end end if bf[10] == true then if bf[2] == true then if bf[1] == "10" then search(2910,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("290"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[3] == true then if bf[1] == "10" then search(3010,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("300"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[4] == true then if bf[1] == "10" then search(3110,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("310"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[5] == true then if bf[1] == "10" then search(3210,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("320"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(5,4,0x50)--类型 xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end end if bf[9] == true then if bf[2] == true then if bf[1] == "10" then search(2910,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("290"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[3] == true then if bf[1] == "10" then search(3010,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("300"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[4] == true then if bf[1] == "10" then search(3110,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("310"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[5] == true then if bf[1] == "10" then search(3210,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("320"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(6,4,0x50)--类型 xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end end if bf[8] == true then if bf[2] == true then if bf[1] == "10" then search(2910,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("290"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[3] == true then if bf[1] == "10" then search(3010,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("300"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[4] == true then if bf[1] == "10" then search(3110,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("310"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end if bf[5] == true then if bf[1] == "10" then search(3210,4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50) xg1(3,4,0x4C) gg.clearResults() gg.clearList() else search("320"..bf[1],4,32) py1(1,4,0x4) py1(1,4,-0x4) xg1(1,16,0x74) xg1(0,16,0x64) xg1(0,16,0x60) xg1(0,16,0xA8) xg1(0,16,0x98) xg1(bf[6],16,0x94) xg1(0,4,0x5C) xg1(7,4,0x50)--类型 xg1(3,4,0x4C) gg.clearResults() gg.clearList() end end end end string.toMusic('阿旺聚能开启成功') end, function() end), SG.switch("无宝物聚能", function() bl(0x1e1d9dc,"~A MOVT R0, #1")--防卡顿 bl(0x1e1b988,"~A B +0x1E94")--无限能量无宝物聚能 gg.toast("无宝物成功") toMusic('无宝物开启成功') end), SG.switch ("过检聚能", function() gg.alert("请带:\n相机\n卫衣\n耳机") Name = "相机时间聚能" ms.ss ( "3210" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , 4 , 4 ) ms.edit ( 0 , 0x5C ,4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 3 , 0x4C , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x64 , 4 ) ms.edit ( 4.3 , 0x60 , 16 ) ms.edit ( 1.0 , 0xA8 , 16 ) ms.edit ( 0 , 0x98 , 4 ) ms.edit ( 4.3 , 0x94 , 16 ) Name = "校服时间聚能" ms.ss ( "3110" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , 4 , 4 ) ms.edit ( 0 , 0x5C ,4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 3 , 0x4C , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x64 , 4 ) ms.edit ( 4.2 , 0x60 , 16 ) ms.edit ( 1.0 , 0xA8 , 16 ) ms.edit ( 0 , 0x98 , 4 ) ms.edit ( 4.2 , 0x94 , 16 ) Name = "耳机时间聚能" ms.ss ( "3310" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , 4 , 4 ) ms.edit ( 0 , 0x5C ,4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 3 , 0x4C , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x64 , 4 ) ms.edit ( 4.1 , 0x60 , 16 ) ms.edit ( 1.0 , 0xA8 , 16 ) ms.edit ( 0 , 0x98 , 4 ) ms.edit ( 4.1 , 0x94 , 16 ) gg.toast("开启成功") end), SG.switch("免疫道具", function() io.open("/sdcard/.免疫道具","w+"):write([[ 7630 数据๑ A2FB59C8|a2fb59c8|4|e3a00001|0|0|0|0|r-xp|/data/app/com.kiloo.subwaysurf-IyKKAcP5Qg3m2nad3kuYgQ==/lib/arm/libil2cpp.so|28469c8 数据๑ A2FB59CC|a2fb59cc|4|e12fff1e|0|0|0|0|r-xp|/data/app/com.kiloo.subwaysurf-IyKKAcP5Qg3m2nad3kuYgQ==/lib/arm/libil2cpp.so|28469cc ]]) gg.loadList("/sdcard/.免疫道具", gg.LOAD_VALUES) os.remove("/storage/emulated/0/.免疫道具") gg.toast("开启成功") end), SG.switch("改全服", function() function jh(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end jh(0x97b634,4,"~A MOVW R0, #"..gg.prompt({"输入你想要的排名"},{"1"},{"text"})[1]) gg.toast("全服修改成功") string.toMusic('全服修改成功') end), SG.switch("无限滑板时长(防断网)", function() function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end gg.setRanges(32) local Name="滑板加速" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0xC},{0,0x1C},{1740.0,0x8}} SearchWrite(tb1, tb2, dataType) gg.setRanges(32) local Name="滑板延长" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0x4},{0,-0xC},{999999,-0x10}} SearchWrite(tb1, tb2, dataType) toMusic('开启成功') end, function() end), SG.switch("滑板加速+滑板延长", function() function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end gg.setRanges(32) local Name="滑板加速" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0xC},{0,0x1C},{1999.9,0x8}} SearchWrite(tb1, tb2, dataType) gg.setRanges(32) local Name="滑板延长" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0x4},{0,-0xC},{11500,-0x10}} SearchWrite(tb1, tb2, dataType) toMusic('开启成功') end), SG.switch("穿透", function() search(4.5,16,32) py1(5.5,16,16) py1(9.0,16,8) xg1(9192,16,16) xg1(9191,16,0) string.toMusic('开启成功') end, function() py1( 1091567616 , 4 , 32 ) py1 ( 1092616192 , 0x10 , 4 ) xg1 ( 4.5 , -0x8 , 16 ) xg1 ( 5.5 , 0x8 , 16 ) toMusic('已关闭') end), SG.switch("无视道具", function() bl(0x1bdefc8,4,"~A MOV R0, #2")--延迟道具 BL(0x1e21b20,4,"~A MOV R0, #0")--无视香蕉 gg.toast("无视道具开启成功") string.toMusic('无视道具开启成功') end, function() end), SG.switch("无视障碍", function() bl(0x1ef5f54,"~A MOV R0, #1") gg.toast("无视障碍开启成功") string.toMusic('无视障碍开启成功') end, function() end), SG.switch("直接结算", function() bl(0x1822554,'~A MOVW R0, #1') bl(0x1822554+4,'~A BX LR') gg.toast("结算成功") string.toMusic('结算成功') end, function() bl(0x1822554,'~A MOVW R0, #0') bl(0x1822554+4,'~A BX LR') gg.toast("关闭成功") string.toMusic('关闭成功') end), SG.button("改超长名", function() local il2cppmod=gg.getRangesList('il2cpp.so') gg.setValues({{address=il2cppmod[1].start+0x10fa020,flags=4,value='500000EAr'}}) gg.setValues({{address=il2cppmod[1].start+0x10fa020+4,flags=4,value='~A BX LR'}}) gg.setValues({{address=il2cppmod[1].start+0x10fa020,flags=4,value='~A B +0x00000148'}}) gg.toast("超长名成功") string.toMusic('改超长名开启成功') end), SG.box({"娱乐", SG.button("人物无敌[不能关闭]", function() BL(0xc2a784,4,"~A MOV R0, #1") gg.toast("人物无敌开启成功") string.toMusic('人物无敌开启成功') end, function() end), SG.button("人物瞬移[可关闭]", function() BL(0x1bde418,4,"~A MOV R0, #1") gg.toast("人物瞬移开启成功") string.toMusic('人物瞬移开启成功') end, function() BL(0x1bde418,4,"~A MOV R0, #0") gg.toast("人物瞬移关闭成功") string.toMusic('人物瞬移关闭成功') end), SG.button("二段跳[可关闭]", function() BL(0x1f6bc98,4,"0100A0E3r") gg.toast("二段跳开启成功") string.toMusic('二段跳开启成功') end, function() BL(0x1f6bc98,4,"0000A0E3r") gg.toast("二段跳关闭成功") string.toMusic('二段跳关闭成功') end), SG.button("无限连跳[可关闭]", function() BL(0x1be1080,4,"0100A0E3r") gg.toast("无限连跳开启成功") string.toMusic('无限连跳开启成功') end, function() BL(0x1be1080,4,"0000A0E3r") gg.toast("无限连跳关闭成功") string.toMusic('无限连跳关闭成功') end), SG.button("滑板滑翔[可关闭]", function() BL(0x1f6bf80,4,"0100A0E3r") gg.toast("滑板滑翔开启成功") string.toMusic('滑板滑翔开启成功') end, function() BL(0x1f6bf80,4,"0000A0E3r") gg.toast("滑板滑翔关闭成功") string.toMusic('滑板滑翔关闭成功') end), SG.button("滑板瞬移[可关闭]", function() BL(0x1f6c0f0,4,"0100A0E3r") gg.toast("滑板瞬移开启成功") string.toMusic('滑板瞬移开启成功') end, function() BL(0x1f6c0f0,4,"0000A0E3r") gg.toast("滑板瞬移关闭成功") string.toMusic('滑板瞬移关闭成功') end), SG.button("滑板高跳[可关闭]", function() BL(0x1f6bba0,4,"0100A0E3r") gg.toast("滑板高跳开启成功") string.toMusic('滑板高跳开启成功') end, function() BL(0x1f6bba0,4,"0000A0E3r") gg.toast("滑板高跳关闭成功") string.toMusic('滑板高跳关闭成功') end), }), }), }, { SG.button("普通搜索音乐", function() search = gg.prompt({ "输入要搜索的歌曲\n可加上歌手名字", "设置显示数量(数字)", },g.sel,{ "text", }) if not search then return end gg.saveVariable(search,g.config) bei() go1=search[1] go3=search[2] jg=start(go1,go3) if jg.code == 200 then fh=jg.content fh=json(fh) --print(fh) Play(gqlb,idb) else function inspect() gg.alert("访问网络异常,错误代码:\n\n"..jg.code) end if not pcall(inspect) then print("网络异常,请先连接上网络") os.exit() end end XGCK=-1 end), SG.button("深秋搜索音乐", function() WTYY() end), SG.button("好听音乐(可循环)", function() Obtain=gg.makeRequest("https://api.uomg.com/api/rand.music?sort=热歌榜&format=json").content muchen=Obtain:match('url":"(.-)","picurl') gg.playMusic(muchen) end), SG.button("随机热歌", function() A="https://api.uomg.com/api/rand.music?sort=热歌榜&format=json" Obtain=gg.makeRequest(A).content muchen=Obtain:match('url":"(.-)","picurl') name=Obtain:match('name":"(.-)","') gg.toast('开始播放['..name..']') gg.playMusic(muchen) end), SG.button("停止播放", function() gg.toast("正在停止播放...") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end gg.toast("播放已停止") gg.toast("无正在播放的音乐") end), SG.box({"音乐功能", SG.switch("你看到了我", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1377530437.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("可不可以", function() gg.playMusic("https://tc.1haodh.com/view.php/b62320eca1a8df9958fd26773d499105.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("Neeva", function() gg.playMusic("https://out.zxglife.top/view.php/16fa44c6165f5828dff9cfd7cecb84d9.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("旋律合集", function() gg.playMusic("https://stream.lestream.cn/streams/build/audio/2023/09/22/17/95da57c88db51f63985014f40b27c008.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("nightcruising", function() gg.playMusic("https://out.zxglife.top/view.php/f22c860d17cbb2f5718cbd5a9b68ae42.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("不问别离", function() gg.playMusic("https://out.zxglife.top/view.php/c92f3eb063ae9ee9ff28018bb3b8f847.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("打压魔怔", function() gg.playMusic("https://cloud.lestream.cn/oss/group1/storage/20230922/17/06/7/c3814d3221fb35868b6d2b9fd1a8fb1a.mp3?h=打压魔怔.mp3_out") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("压迫感", function() gg.playMusic("https://out.zxglife.top/view.php/f923557b0bb36ab3968503202964db1b.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("Walk", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=1873321491.mp3') end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("catch", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=26286214.mp3') end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("Me", function() gg.playMusic('https://music.163.com/song/media/outer/url?id=1990363532.mp3') end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("已魔怔求打压", function() gg.playMusic("https://tc.1haodh.com/view.php/81685e1fe940f87d9b03f5e831dfe5e2.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("魔怔了老弟🤓", function() gg.playMusic("https://tc.1haodh.com/view.php/be40342567bfef8d0a69056ca0cdddc0.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("烧酒歌", function() gg.playMusic("https://tc.1haodh.com/view.php/0f6ae6a555ad6e1869208e7b81ad9804.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("不是哥们你有啥实力", function() gg.playMusic("https://tc.1haodh.com/view.php/7a56ed4a29b425d731ea54c0e114fec4.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("旋律", function() gg.playMusic("https://cloud.lestream.cn/oss/group1/storage/20230922/17/00/7/8ef47fd8261953d52750a886b716fe69.mp3?h=旋律1.mp3_out") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("心做", function() gg.playMusic("https://tc.1haodh.com/view.php/941841d6be10e0450d71a8af19d21cd0.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("心如止水", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1928002636.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("篝火旁", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=518725853.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch( "凭什么觉得 I LOVE YOU", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2020310968.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch( "月亮之矢", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=419375250.mp3") end, function() gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end), SG.switch("把美好的回忆拼给你", function() gg.playMusic("https://tc.1haodh.com/view.php/a05030257801c32066a5e9ba7b49f438.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("爱人错过", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1972445487.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), SG.switch("旧金山", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2024109979.mp3") end, function() for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end), }), SG.box({"推荐音乐", SG.radio({"Music",--栏目名 { "你看到了我",--小功能名 function() gg.playMusic('http://music.163.com/song/media/outer/url?id=1377530437.mp3') end }, { "Neeva", function() gg.playMusic("https://out.zxglife.top/view.php/16fa44c6165f5828dff9cfd7cecb84d9.mp3") end }, { "Maple暖枫-时落叶影", function() gg.playMusic("https://out.zxglife.top/down.php/718197266dd3bad8fc0c59182beb6017.mid") end }, { "nightcruising", function() gg.playMusic("https://out.zxglife.top/view.php/f22c860d17cbb2f5718cbd5a9b68ae42.mp3") end }, { "不问别离", function() gg.playMusic("https://out.zxglife.top/view.php/c92f3eb063ae9ee9ff28018bb3b8f847.mp3") end }, { "清空", function() gg.playMusic("https://out.zxglife.top/view.php/8745c4542def50d29e8c9a63b330ed2a.mp3") end }, { "压迫感", function() gg.playMusic("https://out.zxglife.top/view.php/f923557b0bb36ab3968503202964db1b.mp3") end },{ "Walk", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=1873321491.mp3') end }, { "catch", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=26286214.mp3') end }, { "Me", function() gg.playMusic('https://music.163.com/song/media/outer/url?id=1990363532.mp3') end }, { "拉个勾说永远爱我", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1969373959.mp3") end }, { "心如止水", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1928002636.mp3") end }, { "篝火旁", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=518725853.mp3") end }, { "凭什么觉得 I LOVE YOU", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2020310968.mp3") end }, { "月亮之矢", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=419375250.mp3") end }, { "回忆拼好", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1403318151.mp3") end }, { "爱人错过", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1972445487") end }, { "追猎", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=17075871.mp3") end }, { "原来你也玩原神", function() gg.playMusic("https://txmov2.a.kwimgs.com/upic/2023/05/29/14/BMjAyMzA1MjkxNDQwMzlfMzI1NTAxNzY0NF8xMDQyNTc0Nzk5NzJfMl8z_b_Bd7bf9e37ec556137a11d60830b82cfeb.mp4?clientCacheKey=3x7dihem88z47ku_b.mp4&tt=b&di=df684890&bp=10000") end }, { "菲律宾没有雪", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1440570723.mp3") end }, { "太空旋律",--小功能名 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1895871919.mp3") end }, { "旋律王", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1937506314.mp3") end },{ "口水旋律v59", function() gg.playMusic("https://image.api.losfer.cn/view.php/7f6bb2b921cc08a194222e10779230b5.mp3") end },{ "口水旋律v41", function() gg.playMusic("https://image.api.losfer.cn/view.php/3d8332fb141642c536bb230da2ccdc64.mp3") end },{ "口水旋律v1", function() gg.playMusic("https://image.api.losfer.cn/view.php/6db13c5fcff2af5337e0c6f868e6e687.mp3") end },{ "口水旋律v54", function() gg.playMusic("https://image.api.losfer.cn/view.php/1487cf3d5ed4b968b4edc0f6240909f3.mp3") end },{ "领袖", function() gg.playMusic("https://p4.a.yximgs.com/ufile/atlas/NTIzMjA1Njk3NDI4NTgxNTU2MV8xNjg0NDA1NTA5NDc3.m4a") end },{ "旧金山", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2024109979.mp3") end },{ "Ferrari", function() gg.playMusic("https://image.api.losfer.cn/view.php/0d6131968fd02f96ed6e1c9de7acd88d.mp3") end },{ "停止音乐", function() gg.toast("已停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end sp="关闭成功" end }, }) }), }, { web6 } }) function proo() SG.controlRotation2(control1,8000) end luajava.newThread(function()--更新逻辑 while true do gg.sleep(3000) if 显示==0 then proo() end end end):start() jm1 : setBackground(slcta ) gg.setVisible(false ) luajava.setFloatingWindowHide(true ) bloc = luajava.getBlock() bloc('join')