--0.24 function mnnb(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] 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(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) 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 item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function HuaZhiYu(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 "By喵内提示修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false end end function Main() menu = gg.choice({ '✨界面防闪开启✨',--D '✨大厅功能区域✨',--A '✨普通加速区域✨',--ASU '✨落地功能区域✨',--C '✨定点飞天区域✨',--E '✨低端加速区域✨',--F '✨人物加速区域✨',--G '✨人物路飞区域✨',--H '✨追爆龟速区域✨',--Y '✨退出内部脚本✨'},--EXIT 2022,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu == 1 then D() end if menu == 2 then A() end if menu == 3 then ASU() end if menu == 4 then C() end if menu == 5 then E() end if menu == 6 then F() end if menu == 7 then G() end if menu == 8 then H() end if menu == 9 then Y() end if menu == 10 then Exit() end XGCK=-1 end function H() menu1 = gg.multiChoice({ '站立向前', '站立偏右', '趴下向前', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then h1() end if menu1[2] == true then h2() end if menu1[3] == true then h3() end if menu1[4] == true then HOME() end end GLWW=-1 end function h1() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("-4,596,664,798,720,407,275;-9,212,254,259,951,697,919", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-4,596,664,798,720,407,275", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-4,596,664,798,678,810,624", gg.TYPE_QWORD) end function h2() local SXG_1 = gg.alert local SXG_2 = gg.toast local SXG_3 = gg.searchNumber local SXG_4 = gg.editAll local SXG_5 = gg.setRanges local SXG_6 = gg.getResults local SXG_7 = gg.clearResults local SXG_8 = gg.searchAddress local SXG_9 = gg.getResultCount local SXG_10 = gg.REGION_BAD local SXG_11 = gg.REGION_ANONYMOUS local SXG_12 = gg.REGION_AXEYMEM local SXG_13 = gg.REGION_C_ALLOC local SXG_14 = gg.REGION_C_BSS local SXG_15 = gg.REGION_C_code local WKX_16 = gg.REGION_C_HEAP local WKX_17 = gg.REGION_CODE_APP local WKX_18 = gg.REGION_CODE_SYS local WKX_19 = gg.REGION_JAVA local WKX_20 = gg.REGION_JAVA_HEAP local WKX_21 = gg.REGION_OTHER local WKX_22 = gg.REGION_PPSSPP local WKX_23 = gg.REGION_STACK local WKX_24 = gg.TYPE_FLOAT local WKX_25 = gg.SIGN_EQUAL local WKX_26 = gg.TYPE_DWORD local WKX_27 = gg.TYPE_BYTE local WKX_28 = gg.TYPE_WORD local WKX_29 = gg.REGION_VIDEO local WKX_30 = gg.multiChoice local WKX_31 = print SXG_7() SXG_5(32) SXG_3("4.1359036e-25;-0.92030632496;0.39119872451;4.1359036e-25;18.38614463806;0.53446388245;-3.42664432526;1.7763571e-15;4.9052548e33;1.464711e13", WKX_24,false,WKX_25,0, -1) SXG_3("18.38614463806;0.53446388245", WKX_24,false,WKX_25,0, -1) SXG_6(4) SXG_4("125",WKX_24) end function h3() local SXG_1 = gg.alert local SXG_2 = gg.toast local SXG_3 = gg.searchNumber local SXG_4 = gg.editAll local SXG_5 = gg.setRanges local SXG_6 = gg.getResults local SXG_7 = gg.clearResults local SXG_8 = gg.searchAddress local SXG_9 = gg.getResultCount local SXG_10 = gg.REGION_BAD local SXG_11 = gg.REGION_ANONYMOUS local SXG_12 = gg.REGION_AXEYMEM local SXG_13 = gg.REGION_C_ALLOC local SXG_14 = gg.REGION_C_BSS local SXG_15 = gg.REGION_C_code local WKX_16 = gg.REGION_C_HEAP local WKX_17 = gg.REGION_CODE_APP local WKX_18 = gg.REGION_CODE_SYS local WKX_19 = gg.REGION_JAVA local WKX_20 = gg.REGION_JAVA_HEAP local WKX_21 = gg.REGION_OTHER local WKX_22 = gg.REGION_PPSSPP local WKX_23 = gg.REGION_STACK local WKX_24 = gg.TYPE_FLOAT local WKX_25 = gg.SIGN_EQUAL local WKX_26 = gg.TYPE_DWORD local WKX_27 = gg.TYPE_BYTE local WKX_28 = gg.TYPE_WORD local WKX_29 = gg.REGION_VIDEO local WKX_30 = gg.multiChoice local WKX_31 = print SXG_7() SXG_5(32) SXG_3("-3.42664432526;1.7763571e-15;4.9052548e33;1.464711e13;1.0097421e-28;13.27516365051", WKX_24,false,WKX_25,0, -1) SXG_3("-3.42664432526", WKX_24,false,WKX_25,0, -1) SXG_6(2) SXG_4("125",WKX_24) end function G() menu1 = gg.multiChoice({ '人物防拉', '纯人物开启', '纯人物关闭', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then g1() end if menu1[2] == true then g2() end if menu1[3] == true then g3() end if menu1[4] == true then HOME() end end GLWW=-1 end function g1() gg.clearResults() gg.setRanges(16384) gg.searchNumber('6.1630904e-33;-6.1526231e27;-9.9839328e27;-2.8246552e28:13', 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('6.1630904e-33;-6.1526231e27', 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(999) gg.editAll('0',16) gg.toast('防拉回1开启成功') gg.clearResults() gg.setRanges(16384) gg.searchNumber('-3.8369228e21;1.140804e-33;-4.4272672e22::9', 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-3.8369228e21;1.140804e-33;-4.4272672e22', 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(3) gg.editAll('0',16) gg.toast('防拉回2开启成功') gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,287,719,427,143,988,736", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1110) gg.editAll("-1,296,744,153,870,237,696", 32) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,296,744,149,883,614,555", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(190) gg.editAll("-1,296,744,153,870,237,696",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-6.15264497e27", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(50) gg.editAll("0",16) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-6.15262313e27", 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(50) gg.editAll("0", 16) end function g2() gg.clearResults() gg.setRanges(32) gg.searchNumber("0.05~0.1F;3.60133705e-43F;4.20389539e-45F;0.10000000149F;0.10000000149F;1.40129846e-45F::21",16) gg.searchNumber("0.05~0.1",16) gg.getResults(9999) gg.editAll("0.4",16) gg.toast("初始化") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,064,848,315,880", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,068,834,414,592",gg.TYPE_QWORD) gg.toast("关键") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744153870237696", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267068834414592",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1328550408728725571", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1328550408578138112",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("0;7.0064923e-45;1;100;1;2,500,000,000.0;0.10000000149;88", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("1", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("5", gg.TYPE_FLOAT) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(30) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.searchNumber("-1505254313802431360", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1505254313804899999", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('0.37999999523F;1.0F:6',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('0.37999999523',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-99999',gg.TYPE_FLOAT) gg.clearResults() gg.toast("开启成功") end function g3() mnnb({{-1296744149264269342,0,32}},{{-1296744149883614555,0,32}},16384,"关闭",true) mnnb({{4525216907473673257,0,32}},{{4525216907414147695,0,32}},32,"关闭",true) mnnb({{-1328550408576460390,0,32}},{{-1328550408728725571,0,32}},16384,"关闭",true) mnnb({{-1228926273126264269,0,32}},{{-1228926273201366461,0,32}},16384,"关闭",true) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,068,834,414,592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,064,848,315,880",gg.TYPE_QWORD) gg.toast("关闭") mnnb({{268464131,0,4},{290914307,4,4}},{{-6.15262313e27,24,16}},16384,"关闭",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.0005,236,16}},32,"关闭",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{9.99999997e-7,-4,16}},16384,"关闭",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.0,100,16}},32,"关闭",true) mnnb({{-1088801054,0,4}},{{10.90734863281,-8,16}},16384,"关闭",true) mnnb({{-1359975840,0,4}},{{-1228926276669014016,-12,32}},16384,"关闭",true) mnnb({{1139785728,0,4},{1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}},{{1.0,-12,16},{1.0,-8,16},{1.0,-4,16}},32,"关闭",true) end function F() menu1 = gg.multiChoice({ '浮空开', '加速开启', '加速关闭', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then f1() end if menu1[2] == true then f2() end if menu1[3] == true then f3() end if menu1[4] == true then HOME() end end GLWW=-1 end function f1() mnnb({{3600000000.0,0,16},{88.0,36,16},{60.0,40,16}},{{-48.0,40,16}},32,"浮空",true) end function f2() gg.setRanges(gg.REGION_CODE_APP) gg.clearResults() gg.setVisible(false) gg.searchNumber(2.465163E-32, gg.TYPE_FLOAT) gg.getResultsCount() gg.getResults(0) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.clearResults() gg.setVisible(false) gg.searchNumber(6.1630904E-33, gg.TYPE_FLOAT) gg.getResultsCount() gg.getResults(0) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.clearResults() gg.setVisible(false) gg.searchNumber(-2.7860151E28, gg.TYPE_FLOAT) gg.getResultsCount() gg.getResults(0) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.clearResults() gg.setVisible(false) gg.searchNumber(-980, gg.TYPE_FLOAT) gg.getResultsCount() gg.getResults(0) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.clearResults() gg.setVisible(false) gg.searchNumber(-1.8395645E26, gg.TYPE_FLOAT) gg.getResultsCount() gg.getResults(0) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("1.0587304e-22;1.0e-6:161", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("0;0.24", gg.TYPE_FLOAT) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-6.1526231e27;-1.0070975e28;::", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-6.15", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-6.1526231e27;-1.0070975e28;::", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-6.1526231e27", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("0", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-6.15264497e27", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(50) gg.editAll("0", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-6.1526231e27", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(50) gg.editAll("0", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_C_DATA) gg.searchNumber("-1,287,719,427,143,988,736", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResultsCount() gg.getResults(0) gg.getResultsCount() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("20000;750;0.0001;0.0005 ", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("0.0005", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0.05", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_C_DATA) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,895,342,427,272,904,704", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,895,342,427,383,806,976", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber(4740038608910024704.0, gg.TYPE_QWORD) gg.getResultsCount() end function f3() mnnb({{268464131,0,4},{290914307,4,4}},{{-6.15262313e27,24,16}},16384,"关闭",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.0005,236,16}},32,"关闭",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{9.99999997e-7,-4,16}},16384,"关闭",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.0,100,16}},32,"关闭",true) mnnb({{-1088801054,0,4}},{{10.90734863281,-8,16}},16384,"关闭",true) mnnb({{-1359975840,0,4}},{{-1228926276669014016,-12,32}},16384,"关闭",true) mnnb({{1139785728,0,4},{1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}},{{1.0,-12,16},{1.0,-8,16},{1.0,-4,16}},32,"关闭",true) end function E() menu1 = gg.multiChoice({ '定点开启', '飞天移动', '移动关闭', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then e1() end if menu1[2] == true then e2() end if menu1[3] == true then e3() end if menu1[4] == true then HOME() end end GLWW=-1 end function e1() HuaZhiYu({{false,150994944,0,4,nil,nil},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{90.0,16,16,false},{90.0,20,16,false}},4,32,'🔒帧') HuaZhiYu({{false,-998965248,0,4,nil,nil},{1101004800,232,4}},{{0.055,236,16,false}},4,32,'防') so=gg.getRangesList("libcubehawk.so")[1].start py=0x2A7D4 setvalue(so+py,2,-980) HuaZhiYu({{false,-5.7656695e27,0,16,nil,nil}, {0,-16,16},{0,-12,16},{0,72,16},}, {{-1.1144502e28,4,16,false},{-1.1144502e28,16,16,false}, {-1.1144502e28,28,16,false},{-1.1144502e28,40,16,false}, {-1.1144502e28,52,16,false}, {-1.1144502e28,64,16,false},},16,16384,"定点") gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber('-6.1526231e27;-1.0070975e28;::', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-6.15', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll('0', gg.TYPE_FLOAT) gg.toast("定点") HuaZhiYu({{false,268464131,0,4,nil,nil},{290914307,4,4}},{{0,24,16,false}},4,16384,'防') gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function e2() HuaZhiYu({{false,-8.66297292e22,0,16,nil,nil}}, {{0,-32,16,false}},16,16384,"YJYJY") HuaZhiYu({{false,-637534134,0,4,nil,nil}, {-309061114,-12,4}}, {{0,-16,16,false}},4,16384,'SJSJS.') HuaZhiYu({{false,-309327247,0,4,nil,nil}, {-308340220,4,4}}, {{0.285,-4,16,false}},4,16384,'人物') HuaZhiYu({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}}, {{1.01,100,16,false}},4,32,'全局') HuaZhiYu({{false,-1088801054,0,4,nil,nil}}, {{9,-8,16,false}},4,16384,'全局') HuaZhiYu({{false,-1359975840,0,4,nil,nil}}, {{-1228926273201366,-12,32,false}},4,16384,'全') gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function e3() HuaZhiYu({{false,268464131,0,4,nil,nil},{290914307,4,4}},{{-6.15262313e27,24,16,false}},4,16384,'关闭') HuaZhiYu({{false,-637534134,0,4,nil,nil},{-309061114,-12,4}},{{-5.10801854e27,-16,16,false}},4,16384,'关闭') HuaZhiYu({{false,-998965248,0,4,nil,nil},{1101004800,232,4}},{{0.0005,236,16,false}},4,32,'关闭') HuaZhiYu({{false,-309327247,0,4,nil,nil},{-308340220,4,4}},{{9.99999997e-7,-4,16,false}},4,16384,'关闭') HuaZhiYu({{false,1198153728,0,4,nil,nil},{1,20,4},{1,24,4}},{{1.0,100,16,false}},4,32,'关闭') HuaZhiYu({{false,-1088801054,0,4,nil,nil}},{{10.90734863281,-8,16,false}},4,16384,'关闭') HuaZhiYu({{false,-1359975840,0,4,nil,nil}},{{-1228926276669014016,-12,32,false}},4,16384,'关闭') gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function D() function HzYNB(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 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 Xa=gg.REGION_C_DATA HzYNB( { {["memory"] = Xa}, {["name"] = "防闪"}, {["value"] = 909456435, ["type"] = D}, {["lv"] = 1094268983,["offset"] =4, ["type"] = D}, {["lv"] = 1162101570,["offset"] =8, ["type"] = D}, }, { {["value"] = 99999999,["offset"] =-4, ["type"] = D,["freeze"] = true}, } ) gg.clearResults() gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function A() menu1 = gg.multiChoice({ '全枪无后', '枪械防抖', '准星据点', '自定义视角', '自定义帧数', '自定义范围大小', '圈圈自瞄(指针)', '沙漠地图',--a8 '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then a1() end if menu1[2] == true then a2() end if menu1[3] == true then a3() end if menu1[4] == true then a4() end if menu1[5] == true then a5() end if menu1[6] == true then a6() end if menu1[7] == true then a7() end if menu1[8] == true then a8() end if menu1[9] == true then HOME() end end GLWW=-1 end function ASU() menu1 = gg.multiChoice({ '稳定加速', '稳定关闭', '超快加速', '超快关闭', '反转加速', '反转关闭', '全速防拉', '自定义加速速度\n(关闭加速就用超快加速的关闭)', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then b1() end if menu1[2] == true then b2() end if menu1[3] == true then b3() end if menu1[4] == true then b4() end if menu1[5] == true then b5() end if menu1[6] == true then b6() end if menu1[7] == true then b7() end if menu1[8] == true then b8() end if menu1[9] == true then HOME() end end GLWW=-1 end function C() menu1 = gg.multiChoice({ '打击特效', '枪口特效', '细狗特效', '圈圈变黑', '圈圈变白', '杀猪子弹',--c6 '地皮防拉', '地皮关闭', '圈圈变粉', '返回上页'}, nil,'Spirit By mnnb 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then c1() end if menu1[2] == true then c2() end if menu1[3] == true then c3() end if menu1[4] == true then c4() end if menu1[5] == true then c5() end if menu1[6] == true then c6() end if menu1[7] == true then c7() end if menu1[8] == true then c8() end if menu1[9] == true then c9() end if menu1[10] == true then HOME() end end GLWW=-1 end function a1() so=gg.getRangesList("libUE4.so")[1].start py=0xDB0968 setvalue(so+py,16,0) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function a2() mnnb({{-308340221,0,4},{514853441,8,4},{-300938736,12,4}},{{0,12,4}},16384,"倍镜防抖",true) mnnb({{-827323830,0,4},{-286131696,4,4},{-300938736,8,4}},{{0,8,4}},16384,"手部防抖",true) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function a3() mnnb({{-308311547,0,4},{-300938736,16,4},},{{0,16,16}},16384,"准心聚点",true) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function a4() MIAONEI=gg.prompt({'请输入广角大小'},{[1]='360'},{[1]='number'}) if MIAONEI == nil or MIAONEI[1] == '' or MIAONEI[1] == '0' then gg.toast("取消") else mnnb({{-5.10803094e27,0,16},{360.0,24,16},},{{MIAONEI[1],24,16},},16384,"超广角",true) end end function a5() MIAONEI=gg.prompt({'请输入帧数大小'},{[1]='360'},{[1]='number'}) if MIAONEI == nil or MIAONEI[1] == '' or MIAONEI[1] == '0' then gg.toast("取消") else mnnb({{150994944,0,4},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{MIAONEI[1],16,16},{MIAONEI[1],20,16}},32,"帧数",true) end end function a6() MIAONEI=gg.prompt({'请输入广角大小'},{[1]='360'},{[1]='number'}) if MIAONEI == nil or MIAONEI[1] == '' or MIAONEI[1] == '0' then gg.toast("取消") else mnnb({{23.0,0,16},{25.0,4,16},{30.5,8,16},},{{MIAONEI[1],4,16},{MIAONEI[1],8,16},},32,"范围",true) end end function a7() mnnb({{-352321640,0,4},{-309327309,4,4},{-476053504,8,4},},{{-476053503,8,4}},16384,"持枪自瞄",true) mnnb({{-285787648,0,4},{-286131696,8,4},{-290108736,12,4},},{{0,8,4}},16384,"开火自瞄",true) mnnb({{-301258224,0,4},{167772309,-8,4},},{{0,0,4}},16384,"开镜自瞄",true) mnnb({{64.50088500977,0,16},},{{0,0,16}},16384,"磁性自瞄",true) mnnb({{-309478912,0,4},{-289924415,-4,4},},{{0,0,4},{0,-4,4},},16384,"自瞄范围",true) mnnb({{1324382787,0,4},{-305325242,-4,4},},{{0,0,4}},16384,"头部自瞄",true) mnnb({{-308925904,0,4},{-308471291,4,4},{2046820354,44,4},},{{1.66153519e35,44,16}},16384,"频率自瞄",true) mnnb({{5.533321713993693E-21,0,16},{2.6253290925755273E-27,52,16},},{{0,52,16}},16384,"圈圈透视",true) mnnb({{-403697535,0,4},{-534568960,-48,4},},{{-534568959,-48,4}},16384,"闪圈透视",true) mnnb({{2.06214214e-19,0,16},},{{0,0,16},},16384,"趴下照锁",true) gg.clearResults() gg.setRanges(16834) gg.searchNumber("-4.8188516e19", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(1) gg.editAll("-4.81885204e19", gg.TYPE_FLOAT) end function a8() so=gg.getRangesList('libUE4.so')[1].start py=0x217D054 setvalue(so+py,32,-1245234026973757440) gg.toast("开启成功") end function b1() mnnb({{-1296744149883614555,0,32}},{{-1296744149264269342,0,32}},16384,"全局",true) mnnb({{4525216907414147695,0,32}},{{4525216907473673257,0,32}},32,"人物",true) mnnb({{-1901117039636905984,0,32}},{{-1901117038551420109,0,32}},16384,"稳",true) mnnb({{-1328550408728725571,0,32}},{{-1328550408576460390,0,32}},16384,"优化",true) mnnb({{-1228926273201366461,0,32}},{{-1228926273126264269,0,32}},16384,"稳定",true) end function b2() mnnb({{-1296744149264269342,0,32}},{{-1296744149883614555,0,32}},16384,"人物关闭",true) mnnb({{4525216907473673257,0,32}},{{4525216907414147695,0,32}},32,"全局关闭",true) mnnb({{-1328550408576460390,0,32}},{{-1328550408728725571,0,32}},16384,"优化关闭",true) mnnb({{-1228926273126264269,0,32}},{{-1228926273201366461,0,32}},16384,"防掉帧关闭",true) end function b3() mnnb({{268464131,0,4},{290914307,4,4}},{{0,24,16}},16384,"开",true) mnnb({{150994944,0,4},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{90.0,16,16},{90.0,20,16}},32,"开",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.055,236,16}},32,"开",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{0.285,-4,16}},16384,"开",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.01,100,16}},32,"开",true) mnnb({{-1088801054,0,4}},{{9,-8,16}},16384,"开",true) mnnb({{-1901117039636905984,0,32}},{{-1901117038551420109,0,32}},16384,"纵横四海",true) end function b4() mnnb({{268464131,0,4},{290914307,4,4}},{{-6.15262313e27,24,16}},16384,"关闭",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.0005,236,16}},32,"关闭",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{9.99999997e-7,-4,16}},16384,"关闭",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.0,100,16}},32,"关闭",true) mnnb({{-1088801054,0,4}},{{10.90734863281,-8,16}},16384,"关闭",true) mnnb({{-1359975840,0,4}},{{-1228926276669014016,-12,32}},16384,"关闭",true) mnnb({{1139785728,0,4},{1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}},{{1.0,-12,16},{1.0,-8,16},{1.0,-4,16}},32,"关闭",true) end function b5() 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("found "..#data.." 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("found 8 data", false) return false end else gg.toast("found 8 data") return false end end HuaZhiYu({{false,-998965248,0,4,nil,nil},{1101004800,232,4}},{{0.055,236,16,false}},4,32,"喵内牛逼") HuaZhiYu({{false,-2.1515281e28,0,16,nil,nil},{-1.1144502e28,4,16}},{{-1.1221873e28,0,16,false},{-1.1221873e28,4,16,false}},32,16384,"喵内牛逼") mnnb({{268464131,0,4},{290914307,4,4}},{{0,24,16}},16384,"完美全局",true) mnnb({{150994944,0,4},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{90.0,16,16},{90.0,20,16}},32,"完美全局",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.055,236,16}},32,"完美全局",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{0.285,-4,16}},16384,"完美全局",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.01,100,16}},32,"完美人物",true) mnnb({{-1088801054,0,4}},{{9,-8,16}},16384,"完美人物",true) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-9.9162329e27;-5.7294064e27;-1.0530367e28;-1.3697734e28;-5.1080185e27:17", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-1.0530367e28", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("5", gg.TYPE_FLOAT) end function b6() mnnb({{268464131,0,4},{290914307,4,4}},{{-6.15262313e27,24,16}},16384,"关闭",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.0005,236,16}},32,"关闭",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{9.99999997e-7,-4,16}},16384,"关闭",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.0,100,16}},32,"关闭",true) mnnb({{-1088801054,0,4}},{{10.90734863281,-8,16}},16384,"关闭",true) mnnb({{-1359975840,0,4}},{{-1228926276669014016,-12,32}},16384,"关闭",true) end function b7() mnnb({{-1296744149883614555,0,32}}, {{-1296744153870237696,0,32},},16384,"牛逼牛逼",true) mnnb({{-1359975840,0,4}}, {{-1228926273201366,-12,32}},16384,'强制防拉',true) end function b8() KKK=gg.prompt({'请输入加速第一步速度'}, {[1]='360'}, {[1]='number'}) if KKK == nil or KKK[1] == '' or KKK[1] == '0' then gg.toast("取消") else mnnb({{-1296744149883614555,0,32}}, {{KKK[1],0,32}},16384,"第一步",true) end FFF=gg.prompt({'请输入加速第二步速度'}, {[1]='360'}, {[1]='number'}) if FFF == nil or FFF[1] == '' or FFF[1] == '0' then gg.toast("取消") else mnnb({{4525216907414147695,0,32}}, {{FFF[1],0,32}},32,"第二步",true) end ZZZ=gg.prompt({'请输入加速第三步速度'}, {[1]='360'},{[1]='number'}) if ZZZ == nil or ZZZ[1] == '' or ZZZ[1] == '0' then gg.toast("取消") else mnnb({{-1328550408728725571,0,32}}, {{ZZZ[1],0,32}},16384,"第三步",true) end MMM=gg.prompt({'请输入加速第四步速度'}, {[1]='360'},{[1]='number'}) if MMM == nil or MMM[1] == '' or MMM[1] == '0' then gg.toast("取消") else mnnb({{-1228926273201366461,0,32}}, {{MMM[1],0,32}},16384,"第四步",true) end end function c1() mnnb({{10.0,0,16},{46.0,4,16},},{{9999999,0,16},},32,"命中特效",true) end function c2() mnnb({{10.0,0,16},{46.0,4,16},},{{999,0,16},},32,"命中特效",true) end function c3() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-299365883", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) revert = gg.getResults(200, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("0", gg.TYPE_DWORD) gg.processResume() gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function c4() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber('-9.90656152e27;-443,481,612;-481,296,384:9',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('-9.90656152e27',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-9.90662763e27',gg.TYPE_FLOAT) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function c5() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber('-9.90656152e27;-443,481,612;-481,296,384:9',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('-9.90656152e27',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-9.9066194E27',gg.TYPE_FLOAT) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function c6() so=gg.getRangesList("libUE4.so")[1].start py=0xE598CC setvalue(so+py,16,-2.7859696e28) end function c7() gg.clearResults() gg.setRanges(16384) gg.searchNumber("-8.50068121e22;-9.98393277e27;-5.9029581e21;-2.84887926e28", 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-2.84887926e28", 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(520) gg.editAll("0", 16) end function c8() gg.clearResults() gg.setRanges(16384) gg.searchNumber("-8.50068121e22;-9.98393277e27;-5.9029581e21;0::", 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("0", 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(520) gg.editAll("-2.84887926e28", 16) end function c9() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber('-9.90656152e27;-443,481,612;-481,296,384:9',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('-9.90656152e27',gg.TYPE_AUTO,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-9.90686257e27',gg.TYPE_FLOAT) gg.toast("꯭热꯭情꯭死꯭在꯭了꯭断꯭断꯭续꯭续꯭的꯭聊꯭天꯭方꯭式꯭里꯭.꯭") end function Y() menu1 = gg.multiChoice({ '6.0巅峰之作开启', '6.0巅峰之作关闭', '8.0视角加速开启', '8.0视角加速关闭', '11.0新版加速开启', '11.0新版加速关闭', '12.0最终之作开启', '12.0最终之作关闭', '返回上页'}, nil,'Spirit By 木马\n轻体0.24功能修复\n木马牛逼') if menu1 == nil then else if menu1[1] == true then y1() end if menu1[2] == true then y2() end if menu1[3] == true then y3() end if menu1[4] == true then y4() end if menu1[5] == true then y5() end if menu1[6] == true then y6() end if menu1[7] == true then y7() end if menu1[8] == true then y8() end if menu1[9] == true then HOME() end end GLWW=-1 end function y1() function Searching(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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("\n🍂搜索到"..#data.."数据\n🍂开始进行偏移") 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) gg.sleep(400) gg.toast("\n🍂"..Name.."成功\n🍂共修改"..#t.."数据") else gg.toast("\n✔️"..Name.."成功") return false end else gg.toast("\n✔️"..Name.."成功") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type喵内是你爹") gg.toast("type喵内是你爹") os.exit() end else print("memory or array喵内是你爹") gg.toast("memory or array喵内是你爹") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze gg.setValues(t) return gg.addListItems(t) else return gg.setValues(t) end else return false 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 gg.toast(Name.."喵内是你爹"..#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) gg.sleep(500) gg.toast(Name.."喵内是你爹"..#t.."喵内是你爹") else gg.toast(Name.."喵内是你爹or喵内是你爹\n喵内是你爹") return false end else gg.toast(Name.."看不懂别二改") return false 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 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("Not Found", false) return false end else gg.toast("Not Found") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "看不懂别二改") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "RAVI") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function encodes(code) return (code:gsub("..", function(h) return string.char((tonumber(h, 16) + 256 - 13 + 255999744) % 256) end )) end do do for _FORV_3_ = 1, 2000 do load("local results = gg.getFile(5000)")() end end end gg.setRanges(16420) local results = gg.getFile() local results = gg.getResults(5000) gg.setValues(results) local results = gg.getFile() 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) gg.sleep(500) else return false end else return false end end function fxs(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) 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 = Search[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(Mingcg.."开启成功"..#data.."") local t = {} local base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) 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(Mingcg..""..#t.."") gg.addListItems(t) else gg.toast(Mingcg.."", false) return false end else gg.toast("") return false end end function PS() end function setvalue(address,flags,value) PS('(,,)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function configure(xgsz,sssz,gssz,xl) gg.clearResults() gg.setRanges(nc) flags=xl gg.searchNumber(sssz,xl, false, 56870912, 0, -1) ssjgsl=gg.getResultCount() if ssjgsl>0 then gg.toast(""..ssjgsl.."") gg.searchNumber(gssz,xl, false, 56870912, 0, -1) ssjgs=gg.getResultCount() if ssjgs>0 then else gg.toast(":") end gg.getResults(ssjgs) gg.All(xgsz, xl) gg.toast("开启成功 已修改"..ssjgs.."条数值") else gg.toast("开启成功 原因:结果无数值") end end function js(address,flags,value) local jz={} jz[1]={} jz[1].address=address jz[1].flags=flags jz[1].value=value gg.setValues(jz) end function jz(sxg,zs,zsnb) flags=zs value=zsnb so=gg.getRangesList(''..name..'')[1].start js(so+sxg,zs,zsnb) end local ZS_1 = gg.alert local ZS_2 = gg.toast local ZS_3 = gg.searchNumber local ZS_4 = gg.editAll local ZS_5 = gg.setRanges local ZS_6 = gg.getResults local ZS_7 = gg.clearResults local ZS_8 = gg.searchAddress local ZS_9 = gg.getResultCount local ZS_10 = gg.REGION_BAD local ZS_11 = gg.REGION_ANONYMOUS local ZS_12 = gg.REGION_AZSMEM local ZS_13 = gg.REGION_C_ALLOC local ZS_14 = gg.REGION_C_BSS local ZS_15 = gg.REGION_C_code local ZS_16 = gg.REGION_C_HEAP local ZS_17 = gg.REGION_CODE_APP local ZS_18 = gg.REGION_CODE_SYS local ZS_19 = gg.REGION_JAVA local ZS_20 = gg.REGION_JAVA_HEAP local ZS_21 = gg.REGION_OTHER local ZS_22 = gg.REGION_PPSSPP local ZS_23 = gg.REGION_STACK local ZS_24 = gg.TYPE_FLOAT local ZS_25 = gg.SIGN_EQUAL local ZS_26 = gg.TYPE_DWORD local ZS_27 = gg.TYPE_BYTE local ZS_28 = gg.TYPE_WORD local ZS_29 = gg.REGION_VIDEO local ZS_30 = gg.multiChoice local ZS_31 = print function baseAdd(t) local py = gg.getRangesList(t["奶辞yyds"])[1].start + t["by奶辞"] gg.setValues({ { address = py, flags = t["看不懂别二改"], value = t["奶辞牛逼"] }})end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function fxs(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 "修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false 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 gg.toast(Name.."共搜索到"..#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) gg.sleep(500) gg.toast(Name.."开启成功✔共修改"..#t.."条数据") else return false end else return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end end end function edit(orig,ret)_om=orig[1].memory or orig[1][1]_ov=orig[3].value or orig[3][1]_on=orig[2].name or orig[2][1]gg.clearResults()gg.setRanges(_om)gg.searchNumber(_ov,orig[3].type or orig[3][2])sz=gg.getResultCount()if sz<1 then gg.toast(_on.."开启成功✘")else sl=gg.getResults(720)for i=1,sz do ist=true for v=4,#orig do if ist==true and sl[i].value==_ov then cd={{}}cd[1].address=sl[i].address+(orig[v].offset or orig[v][2])cd[1].flags=orig[v].type or orig[v][3]szpy=gg.getValues(cd)cdlv=orig[v].lv or orig[v][1]cdv=szpy[1].value if cdlv==cdv then pdjg=true ist=true else pdjg=false ist=false end end end if pdjg==true then szpy=sl[i].address for x=1,#(ret)do xgpy=szpy+(ret[x].offset or ret[x][2])xglx=ret[x].type or ret[x][3]xgsz=ret[x].value or ret[x][1]xgdj=ret[x].freeze or ret[x][4]xgsj={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xgsj[1].freeze=xgdj gg.addListItems(xgsj)else gg.setValues(xgsj)end end xgjg=true end end if xgjg==true then gg.toast(_on.."开启成功")else gg.toast(_on.."开启成功✘")end 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 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) gg.toast("已修改"..#t.."条数据") gg.addListItems(t) else gg.toast("开启成功✘", false) return false end else gg.toast("开启成功✘") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end 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 local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) elsegg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end end fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}}, {{0,24,16,false}}, 4,16384,"初始化") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("0.0001;0::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("0", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("5.6",16) gg.toast("1") fxs({{false,150994944,0,4,nil,nil}, {58,-4,4},{58,-8,4},{89,40,4}, {1084227584,68,4}},{{90.0,16,16,false}, {90.0,20,16,false}}, 4,32,"帧率锁定") fxs({{false,-998965248,0,4,nil,nil}, {1101004800,232,4}}, {{0.055,236,16,false}}, 4,32,"防拉开启") gg.clearResults() gg.setRanges(16384) local dataType = 16 Name="防止灵魂" local search = {{-5.7342929e27,0},{-3.8369228e21,228},} local modify = {{-3.836923e21,228},} searchWrite(search,modify,dataType) gg.toast("防止出窍") fxs({{false,-309327247,0,4,nil,nil}, {-308340220,4,4}}, {{0.285,-4,16,false}}, 4,16384,"人物第一步注入") gg.setVisible(false) gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber('-2.793752e28;-3.7444097e28;-1.8638977e-20;-1.1144502e28;-1.8331477e27:17', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-1.86389771e-20', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll('0', gg.TYPE_FLOAT) gg.toast("人物第二步注入") gg.setRanges(16384) local dataType = 16 local tb1 = {{-6.1526231e27, 0}, {-2.4787818e20, -8}, {6.1630904e-33, -4}, {-9.9839328e27, 4}, {-2.8246552e28, 8}, } local tb2 = {{0, 0}, } SearchWrite(tb1, tb2, dataType) gg.setRanges(16384) local dataType = 16 local tb1 = {{10.90734863281, 0}, {-2.9687729e21, -8}, {0, -4}, {-1.8890966e26, 4}, {-0.60239994526, 8}, } local tb2 = {{9, 0}, } SearchWrite(tb1, tb2, dataType) gg.toast("人物第三步注入") gg.setRanges(16384) local dataType = 16 local tb1 = {{1.0e-6, 0}, {-1.1144502e28, -8}, {-2.0291021e20, -4}, {-5.572308e27, 4}, {-6.1549459e27, 8}, } local tb2 = {{0.22, 0}, } SearchWrite(tb1, tb2, dataType) gg.toast("人物第四步注入") fxs({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}}, {{1.01,100,16,false}}, 4,32,"全局第一步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.toast("全局第二步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744153870237696", gg.TYPE_QWORD) gg.toast("全局第三步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267068834414592",gg.TYPE_QWORD) gg.toast("全局第四步注入") fxs({{false,-1088801054,0,4,nil,nil}}, {{9,-8,16,false}}, 4,16384,"全局防拉注入") fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926273201366,-12,32,false}}, 4,16384,"人物防拉注入") fxs({{false,1139785728,0,4,nil,nil}, {1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}}, {{1100.0,-12,16,false},{1100.0,-8,16,false},{1100.0,-4,16,false}}, 4,32,"追爆龟速") gg.toast("有꯭些꯭心꯭动꯭从꯭一꯭开꯭始꯭就꯭覆꯭水꯭难꯭收꯭.") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744153870237696", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267068834414592",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1328550408728725571", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1328550408578138112",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("0;7.0064923e-45;1;100;1;2,500,000,000.0;0.10000000149;88", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("1", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("5", gg.TYPE_FLOAT) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(30) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.searchNumber("-1505254313802431360", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1505254313804899999", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('0.37999999523F;1.0F:6',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('0.37999999523',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-99999',gg.TYPE_FLOAT) gg.clearResults() qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1296744149883614555, ["type"] = 32},{["lv"] = -1245656510323684848, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 0, ["offset"] = 0, ["type"] = 16},{["value"] = 0, ["offset"] = 4, ["type"] = 16},{["value"] = 0, ["offset"] = 12, ["type"] = 16},{["value"] = 0, ["offset"] = 20, ["type"] = 16},{["value"] = 0, ["offset"] = 24, ["type"] = 16},{["value"] = 0, ["offset"] = 28, ["type"] = 16},{["value"] = 0, ["offset"] = 32, ["type"] = 16},{["value"] = 0, ["offset"] = 44, ["type"] = 16},{["value"] = 0, ["offset"] = 48, ["type"] = 16},{["value"] = 0, ["offset"] = 52, ["type"] = 16},{["value"] = 0, ["offset"] = 468, ["type"] = 16},{["value"] = 0, ["offset"] = 496, ["type"] = 16},{["value"] = 0, ["offset"] = 524, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1328550408728725571, ["type"] = 32},{["lv"] = -1324311156955805071, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 0.3, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 1144750080, ["type"] = 32},{["lv"] = 4728779609692288791, ["offset"] = 56, ["type"] = 32},{["lv"] = 4525216907414147695, ["offset"] = 64, ["type"] = 32},{["lv"] = 1053609165, ["offset"] = 68, ["type"] = 32},}qmxg = {{["value"] = 0.085, ["offset"] = 64, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1505254313802431360, ["type"] = 32},{["lv"] = -4676364914835832019, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 8.5, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 1331073956, ["type"] = 4},{["lv"] = 4, ["offset"] = -44, ["type"] = 4},{["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4},{["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4},}qmxg = {{["value"] = 1176255488, ["offset"] = -60, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -68, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -72, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -76, ["type"] = 4},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 100800, ["type"] = 4},{["lv"] = 4, ["offset"] = -12, ["type"] = 4},{["lv"] = 4, ["offset"] = -16, ["type"] = 4},{["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4},{["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4},}qmxg = {{["value"] = 1034147594, ["offset"] = -60, ["type"] = 4},}xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "核心提速"}, {["value"] = 1331073956, ["type"] = 4}, {["lv"] = 4, ["offset"] = -44, ["type"] = 4}, {["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4}, {["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1176255488, ["offset"] = -60, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -68, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -72, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -76, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1328550408728725571", 32, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1,328,550,408,586,191,176", 32) qmnb = { {["memory"] = 32}, {["name"] = "核心提速"}, {["value"] = 100800, ["type"] = 4}, {["lv"] = 4, ["offset"] = -12, ["type"] = 4}, {["lv"] = 4, ["offset"] = -16, ["type"] = 4}, {["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4}, {["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1034147594, ["offset"] = -60, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,895,342,427,272,904,704", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,895,342,427,383,806,976", gg.TYPE_QWORD) gg.clearResults() fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926273201366,-12,32,false}},4,16384,"闪现") fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}},{{0,24,16,false}},4,16384,"乱杀") gg.clearResults() gg.setRanges(16384) local dataType=gg.TYPE_FLOAT Name="伪装减速" local tb1={{-4.0471672e25,0x8510}} local tb2={{-3.836923e21,0x85C4}} SearchWrite(tb1,tb2,dataType) gg.clearResults() gg.setRanges(32) gg.searchNumber("479.5;1;1;1:100",16) gg.searchNumber("1",16) gg.getResults(300) gg.editAll("800", 16) gg.toast("提速") Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744149883614555, 0}} local Sz2 = {{-1296744153870237696, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 32 local Lx = 32 local Sz1 = {{4525216907414147695, 0}} local Sz2 = {{4525216907475015434, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408728725571, 0}} local Sz2 = {{-1328550408576460390, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 32 local Lx = 16 local Sz1 = {{10.0, 0},{46.0, 4}} local Sz2 = {{99999, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744149883614555, 0}} local Sz2 = {{-1296744153870237696, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313802431360, 0}} local Sz2 = {{-1505254313804169216, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408728725571, 0}} local Sz2 = {{-1328550408581493555, 0}} Searching(Nc, Lx, Sz1, Sz2) end function y2() function Searching(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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("\n🍂搜索到"..#data.."数据\n🍂开始进行偏移") 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) gg.sleep(400) gg.toast("\n🍂"..Name.."成功\n🍂共修改"..#t.."数据") else gg.toast("\n✔️"..Name.."成功") return false end else gg.toast("\n✔️"..Name.."成功") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type喵内是你爹") gg.toast("type喵内是你爹") os.exit() end else print("memory or array喵内是你爹") gg.toast("memory or array喵内是你爹") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze gg.setValues(t) return gg.addListItems(t) else return gg.setValues(t) end else return false 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 gg.toast(Name.."喵内是你爹"..#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) gg.sleep(500) gg.toast(Name.."喵内是你爹"..#t.."喵内是你爹") else gg.toast(Name.."喵内是你爹or喵内是你爹\n喵内是你爹") return false end else gg.toast(Name.."看不懂别二改") return false 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 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("Not Found", false) return false end else gg.toast("Not Found") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "看不懂别二改") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "RAVI") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function encodes(code) return (code:gsub("..", function(h) return string.char((tonumber(h, 16) + 256 - 13 + 255999744) % 256) end )) end do do for _FORV_3_ = 1, 2000 do load("local results = gg.getFile(5000)")() end end end gg.setRanges(16420) local results = gg.getFile() local results = gg.getResults(5000) gg.setValues(results) local results = gg.getFile() 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) gg.sleep(500) else return false end else return false end end function fxs(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) 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 = Search[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(Mingcg.."开启成功"..#data.."") local t = {} local base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) 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(Mingcg..""..#t.."") gg.addListItems(t) else gg.toast(Mingcg.."", false) return false end else gg.toast("") return false end end function PS() end function setvalue(address,flags,value) PS('(,,)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function configure(xgsz,sssz,gssz,xl) gg.clearResults() gg.setRanges(nc) flags=xl gg.searchNumber(sssz,xl, false, 56870912, 0, -1) ssjgsl=gg.getResultCount() if ssjgsl>0 then gg.toast(""..ssjgsl.."") gg.searchNumber(gssz,xl, false, 56870912, 0, -1) ssjgs=gg.getResultCount() if ssjgs>0 then else gg.toast(":") end gg.getResults(ssjgs) gg.All(xgsz, xl) gg.toast("开启成功 已修改"..ssjgs.."条数值") else gg.toast("开启成功 原因:结果无数值") end end function js(address,flags,value) local jz={} jz[1]={} jz[1].address=address jz[1].flags=flags jz[1].value=value gg.setValues(jz) end function jz(sxg,zs,zsnb) flags=zs value=zsnb so=gg.getRangesList(''..name..'')[1].start js(so+sxg,zs,zsnb) end local ZS_1 = gg.alert local ZS_2 = gg.toast local ZS_3 = gg.searchNumber local ZS_4 = gg.editAll local ZS_5 = gg.setRanges local ZS_6 = gg.getResults local ZS_7 = gg.clearResults local ZS_8 = gg.searchAddress local ZS_9 = gg.getResultCount local ZS_10 = gg.REGION_BAD local ZS_11 = gg.REGION_ANONYMOUS local ZS_12 = gg.REGION_AZSMEM local ZS_13 = gg.REGION_C_ALLOC local ZS_14 = gg.REGION_C_BSS local ZS_15 = gg.REGION_C_code local ZS_16 = gg.REGION_C_HEAP local ZS_17 = gg.REGION_CODE_APP local ZS_18 = gg.REGION_CODE_SYS local ZS_19 = gg.REGION_JAVA local ZS_20 = gg.REGION_JAVA_HEAP local ZS_21 = gg.REGION_OTHER local ZS_22 = gg.REGION_PPSSPP local ZS_23 = gg.REGION_STACK local ZS_24 = gg.TYPE_FLOAT local ZS_25 = gg.SIGN_EQUAL local ZS_26 = gg.TYPE_DWORD local ZS_27 = gg.TYPE_BYTE local ZS_28 = gg.TYPE_WORD local ZS_29 = gg.REGION_VIDEO local ZS_30 = gg.multiChoice local ZS_31 = print function baseAdd(t) local py = gg.getRangesList(t["奶辞yyds"])[1].start + t["by奶辞"] gg.setValues({ { address = py, flags = t["看不懂别二改"], value = t["奶辞牛逼"] }})end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function fxs(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 "修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false 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 gg.toast(Name.."共搜索到"..#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) gg.sleep(500) gg.toast(Name.."开启成功✔共修改"..#t.."条数据") else return false end else return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end end end function edit(orig,ret)_om=orig[1].memory or orig[1][1]_ov=orig[3].value or orig[3][1]_on=orig[2].name or orig[2][1]gg.clearResults()gg.setRanges(_om)gg.searchNumber(_ov,orig[3].type or orig[3][2])sz=gg.getResultCount()if sz<1 then gg.toast(_on.."开启成功✘")else sl=gg.getResults(720)for i=1,sz do ist=true for v=4,#orig do if ist==true and sl[i].value==_ov then cd={{}}cd[1].address=sl[i].address+(orig[v].offset or orig[v][2])cd[1].flags=orig[v].type or orig[v][3]szpy=gg.getValues(cd)cdlv=orig[v].lv or orig[v][1]cdv=szpy[1].value if cdlv==cdv then pdjg=true ist=true else pdjg=false ist=false end end end if pdjg==true then szpy=sl[i].address for x=1,#(ret)do xgpy=szpy+(ret[x].offset or ret[x][2])xglx=ret[x].type or ret[x][3]xgsz=ret[x].value or ret[x][1]xgdj=ret[x].freeze or ret[x][4]xgsj={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xgsj[1].freeze=xgdj gg.addListItems(xgsj)else gg.setValues(xgsj)end end xgjg=true end end if xgjg==true then gg.toast(_on.."开启成功")else gg.toast(_on.."开启成功✘")end 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 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) gg.toast("已修改"..#t.."条数据") gg.addListItems(t) else gg.toast("开启成功✘", false) return false end else gg.toast("开启成功✘") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end 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 local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) elsegg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end end Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313804169216, 0}} local Sz2 = {{-1505254313802431360, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408581493555, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) qmnb = { {["memory"] = 32}, {["name"] = "关闭"}, {["value"] = 100800, ["type"] = 4}, {["lv"] = 4, ["offset"] = -12, ["type"] = 4}, {["lv"] = 4, ["offset"] = -16, ["type"] = 4}, {["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4}, {["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 973279855, ["offset"] = -60, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,587,197,809", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,728,725,571", gg.TYPE_QWORD) qmnb = { {["memory"] = 32}, {["name"] = "关闭"}, {["value"] = 1331073956, ["type"] = 4}, {["lv"] = 4, ["offset"] = -44, ["type"] = 4}, {["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4}, {["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1139785728, ["offset"] = -60, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -68, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -72, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -76, ["type"] = 4}, } xqmnb(qmnb) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313804431360, 0}} local Sz2 = {{-1505254313802431360, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408577467023, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 32 local Lx = 32 local Sz1 = {{4525216907475015434, 0}} local Sz2 = {{4525216907414147695, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408576460390, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,895,342,427,383,806,976", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,895,342,427,272,904,704", gg.TYPE_QWORD) gg.clearResults() gg.toast("关闭") fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}}, {{-6.15262313e27,24,16,false}}, 4,16384,"关闭") fxs({{false,-998965248,0,4,nil,nil}, {1101004800,232,4}}, {{0.0005,236,16,false}}, 4,32,"关闭") gg.clearResults() gg.setRanges(16384) local dataType = 16 local search = {{-5.7342929e27,0},{-3.836923e21,228},} local modify = {{-3.8369228e21,228},} searchWrite(search,modify,dataType) fxs({{false,-309327247,0,4,nil,nil}, {-308340220,4,4}}, {{9.99999997e-7,-4,16,false}}, 4,16384,"关闭") fxs({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}},{{1.0,100,16,false}}, 4,32,"关闭") fxs({{false,-1088801054,0,4,nil,nil}}, {{10.90734863281,-8,16,false}}, 4,16384,"关闭") fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926276669014016,-12,32,false}}, 4,16384,"关闭") fxs({{false,1139785728,0,4,nil,nil}, {1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}}, {{1.0,-12,16,false},{1.0,-8,16,false},{1.0,-4,16,false}}, 4,32,"关闭") gg.setVisible(false) gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber('-2.793752e28;-3.7444097e28;0.0;-1.1144502e28;-1.8331477e27:17', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('0', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll('-1.86389771e-20', gg.TYPE_FLOAT) gg.setRanges(16384) local dataType = 16 local tb1 = {{9, 0}, {-3.8685728e25, -12}, {-2.9687729e21, -8}, {-1.8890966e26, 4}, {-0.60239994526, 8}, } local tb2 = {{10.90734863281, 0}, } SearchWrite(tb1, tb2, dataType) gg.setRanges(16384) local dataType = 16 local tb1 = {{0.21999999881, 0}, {-1.1144502e28, -8}, {-2.0291021e20, -4}, {-5.572308e27, 4}, {-6.1549459e27, 8}, } local tb2 = {{1.0e-6, 0}, } SearchWrite(tb1, tb2, dataType) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273126264269", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273201366461", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744153870237696", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744149883614555", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267068834414592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267064848315881",gg.TYPE_QWORD) gg.toast("关闭成功") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1328550408578138112", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1328550408728725571",gg.TYPE_QWORD) gg.toast("关闭成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,473,673,257", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,525,216,907,414,147,695", gg.TYPE_QWORD) gg.searchNumber("-1505254313804899999", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1505254313802431360", gg.TYPE_QWORD) gg.toast("关加速成功") gg.setVisible(false) gg.setRanges(32) local dataType = 16 local tb1 = {{-1500, 0}, {9.1689761e-41, -8}, {0, -4}, {4000, 4}, {0.30000001192, 8}, } local tb2 = {{-980, 0}, } SearchWrite(tb1, tb2, dataType) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("0.0001;5.6::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("5.6", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("0",16) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,068,834,414,592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,064,848,315,880",gg.TYPE_QWORD) end function y3() function Searching(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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("\n🍂搜索到"..#data.."数据\n🍂开始进行偏移") 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) gg.sleep(400) gg.toast("\n🍂"..Name.."成功\n🍂共修改"..#t.."数据") else gg.toast("\n✔️"..Name.."成功") return false end else gg.toast("\n✔️"..Name.."成功") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type喵内是你爹") gg.toast("type喵内是你爹") os.exit() end else print("memory or array喵内是你爹") gg.toast("memory or array喵内是你爹") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze gg.setValues(t) return gg.addListItems(t) else return gg.setValues(t) end else return false 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 gg.toast(Name.."喵内是你爹"..#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) gg.sleep(500) gg.toast(Name.."喵内是你爹"..#t.."喵内是你爹") else gg.toast(Name.."喵内是你爹or喵内是你爹\n喵内是你爹") return false end else gg.toast(Name.."看不懂别二改") return false 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 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("Not Found", false) return false end else gg.toast("Not Found") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "看不懂别二改") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "RAVI") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function encodes(code) return (code:gsub("..", function(h) return string.char((tonumber(h, 16) + 256 - 13 + 255999744) % 256) end )) end do do for _FORV_3_ = 1, 2000 do load("local results = gg.getFile(5000)")() end end end gg.setRanges(16420) local results = gg.getFile() local results = gg.getResults(5000) gg.setValues(results) local results = gg.getFile() 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) gg.sleep(500) else return false end else return false end end function fxs(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) 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 = Search[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(Mingcg.."开启成功"..#data.."") local t = {} local base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) 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(Mingcg..""..#t.."") gg.addListItems(t) else gg.toast(Mingcg.."", false) return false end else gg.toast("") return false end end function PS() end function setvalue(address,flags,value) PS('(,,)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function configure(xgsz,sssz,gssz,xl) gg.clearResults() gg.setRanges(nc) flags=xl gg.searchNumber(sssz,xl, false, 56870912, 0, -1) ssjgsl=gg.getResultCount() if ssjgsl>0 then gg.toast(""..ssjgsl.."") gg.searchNumber(gssz,xl, false, 56870912, 0, -1) ssjgs=gg.getResultCount() if ssjgs>0 then else gg.toast(":") end gg.getResults(ssjgs) gg.All(xgsz, xl) gg.toast("开启成功 已修改"..ssjgs.."条数值") else gg.toast("开启成功 原因:结果无数值") end end function js(address,flags,value) local jz={} jz[1]={} jz[1].address=address jz[1].flags=flags jz[1].value=value gg.setValues(jz) end function jz(sxg,zs,zsnb) flags=zs value=zsnb so=gg.getRangesList(''..name..'')[1].start js(so+sxg,zs,zsnb) end local ZS_1 = gg.alert local ZS_2 = gg.toast local ZS_3 = gg.searchNumber local ZS_4 = gg.editAll local ZS_5 = gg.setRanges local ZS_6 = gg.getResults local ZS_7 = gg.clearResults local ZS_8 = gg.searchAddress local ZS_9 = gg.getResultCount local ZS_10 = gg.REGION_BAD local ZS_11 = gg.REGION_ANONYMOUS local ZS_12 = gg.REGION_AZSMEM local ZS_13 = gg.REGION_C_ALLOC local ZS_14 = gg.REGION_C_BSS local ZS_15 = gg.REGION_C_code local ZS_16 = gg.REGION_C_HEAP local ZS_17 = gg.REGION_CODE_APP local ZS_18 = gg.REGION_CODE_SYS local ZS_19 = gg.REGION_JAVA local ZS_20 = gg.REGION_JAVA_HEAP local ZS_21 = gg.REGION_OTHER local ZS_22 = gg.REGION_PPSSPP local ZS_23 = gg.REGION_STACK local ZS_24 = gg.TYPE_FLOAT local ZS_25 = gg.SIGN_EQUAL local ZS_26 = gg.TYPE_DWORD local ZS_27 = gg.TYPE_BYTE local ZS_28 = gg.TYPE_WORD local ZS_29 = gg.REGION_VIDEO local ZS_30 = gg.multiChoice local ZS_31 = print function baseAdd(t) local py = gg.getRangesList(t["奶辞yyds"])[1].start + t["by奶辞"] gg.setValues({ { address = py, flags = t["看不懂别二改"], value = t["奶辞牛逼"] }})end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function fxs(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 "修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false 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 gg.toast(Name.."共搜索到"..#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) gg.sleep(500) gg.toast(Name.."开启成功✔共修改"..#t.."条数据") else return false end else return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end end end function edit(orig,ret)_om=orig[1].memory or orig[1][1]_ov=orig[3].value or orig[3][1]_on=orig[2].name or orig[2][1]gg.clearResults()gg.setRanges(_om)gg.searchNumber(_ov,orig[3].type or orig[3][2])sz=gg.getResultCount()if sz<1 then gg.toast(_on.."开启成功✘")else sl=gg.getResults(720)for i=1,sz do ist=true for v=4,#orig do if ist==true and sl[i].value==_ov then cd={{}}cd[1].address=sl[i].address+(orig[v].offset or orig[v][2])cd[1].flags=orig[v].type or orig[v][3]szpy=gg.getValues(cd)cdlv=orig[v].lv or orig[v][1]cdv=szpy[1].value if cdlv==cdv then pdjg=true ist=true else pdjg=false ist=false end end end if pdjg==true then szpy=sl[i].address for x=1,#(ret)do xgpy=szpy+(ret[x].offset or ret[x][2])xglx=ret[x].type or ret[x][3]xgsz=ret[x].value or ret[x][1]xgdj=ret[x].freeze or ret[x][4]xgsj={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xgsj[1].freeze=xgdj gg.addListItems(xgsj)else gg.setValues(xgsj)end end xgjg=true end end if xgjg==true then gg.toast(_on.."开启成功")else gg.toast(_on.."开启成功✘")end 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 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) gg.toast("已修改"..#t.."条数据") gg.addListItems(t) else gg.toast("开启成功✘", false) return false end else gg.toast("开启成功✘") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end 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 local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) elsegg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end end fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}}, {{0,24,16,false}}, 4,16384,"初始化") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("0.0001;0::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("0", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("5.6",16) gg.toast("1") fxs({{false,150994944,0,4,nil,nil}, {58,-4,4},{58,-8,4},{89,40,4}, {1084227584,68,4}},{{90.0,16,16,false}, {90.0,20,16,false}}, 4,32,"帧率锁定") fxs({{false,-998965248,0,4,nil,nil}, {1101004800,232,4}}, {{0.055,236,16,false}}, 4,32,"防拉开启") gg.clearResults() gg.setRanges(16384) local dataType = 16 Name="防止灵魂" local search = {{-5.7342929e27,0},{-3.8369228e21,228},} local modify = {{-3.836923e21,228},} searchWrite(search,modify,dataType) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,064,848,315,880", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,068,834,414,592",gg.TYPE_QWORD) gg.toast("防止出窍") fxs({{false,-309327247,0,4,nil,nil}, {-308340220,4,4}}, {{0.285,-4,16,false}}, 4,16384,"人物第一步注入") gg.setVisible(false) gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber('-2.793752e28;-3.7444097e28;-1.8638977e-20;-1.1144502e28;-1.8331477e27:17', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-1.86389771e-20', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll('0', gg.TYPE_FLOAT) gg.toast("人物第二步注入") gg.setRanges(16384) local dataType = 16 local tb1 = {{-6.1526231e27, 0}, {-2.4787818e20, -8}, {6.1630904e-33, -4}, {-9.9839328e27, 4}, {-2.8246552e28, 8}, } local tb2 = {{0, 0}, } SearchWrite(tb1, tb2, dataType) gg.setRanges(16384) local dataType = 16 local tb1 = {{10.90734863281, 0}, {-2.9687729e21, -8}, {0, -4}, {-1.8890966e26, 4}, {-0.60239994526, 8}, } local tb2 = {{9, 0}, } SearchWrite(tb1, tb2, dataType) gg.toast("人物第三步注入") gg.setRanges(16384) local dataType = 16 local tb1 = {{1.0e-6, 0}, {-1.1144502e28, -8}, {-2.0291021e20, -4}, {-5.572308e27, 4}, {-6.1549459e27, 8}, } local tb2 = {{0.22, 0}, } SearchWrite(tb1, tb2, dataType) gg.toast("人物第四步注入") fxs({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}}, {{1.01,100,16,false}}, 4,32,"全局第一步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.toast("全局第二步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744153870237696", gg.TYPE_QWORD) gg.toast("全局第三步注入") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267068834414592",gg.TYPE_QWORD) gg.toast("全局第四步注入") fxs({{false,-1088801054,0,4,nil,nil}}, {{9,-8,16,false}}, 4,16384,"全局防拉注入") fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926273201366,-12,32,false}}, 4,16384,"人物防拉注入") fxs({{false,1139785728,0,4,nil,nil}, {1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}}, {{1100.0,-12,16,false},{1100.0,-8,16,false},{1100.0,-4,16,false}}, 4,32,"追爆龟速") gg.toast("有꯭些꯭心꯭动꯭从꯭一꯭开꯭始꯭就꯭覆꯭水꯭难꯭收꯭.") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744153870237696", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267068834414592",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1328550408728725571", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1328550408578138112",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("0;7.0064923e-45;1;100;1;2,500,000,000.0;0.10000000149;88", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("1", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("5", gg.TYPE_FLOAT) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(30) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1228926273201366461", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1228926273126264269", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(699) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.searchNumber("-1505254313802431360", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1505254313804899999", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('0.37999999523F;1.0F:6',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber('0.37999999523',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.getResults(99) gg.editAll('-99999',gg.TYPE_FLOAT) gg.clearResults() qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1296744149883614555, ["type"] = 32},{["lv"] = -1245656510323684848, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 0, ["offset"] = 0, ["type"] = 16},{["value"] = 0, ["offset"] = 4, ["type"] = 16},{["value"] = 0, ["offset"] = 12, ["type"] = 16},{["value"] = 0, ["offset"] = 20, ["type"] = 16},{["value"] = 0, ["offset"] = 24, ["type"] = 16},{["value"] = 0, ["offset"] = 28, ["type"] = 16},{["value"] = 0, ["offset"] = 32, ["type"] = 16},{["value"] = 0, ["offset"] = 44, ["type"] = 16},{["value"] = 0, ["offset"] = 48, ["type"] = 16},{["value"] = 0, ["offset"] = 52, ["type"] = 16},{["value"] = 0, ["offset"] = 468, ["type"] = 16},{["value"] = 0, ["offset"] = 496, ["type"] = 16},{["value"] = 0, ["offset"] = 524, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1328550408728725571, ["type"] = 32},{["lv"] = -1324311156955805071, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 0.3, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 1144750080, ["type"] = 32},{["lv"] = 4728779609692288791, ["offset"] = 56, ["type"] = 32},{["lv"] = 4525216907414147695, ["offset"] = 64, ["type"] = 32},{["lv"] = 1053609165, ["offset"] = 68, ["type"] = 32},}qmxg = {{["value"] = 0.085, ["offset"] = 64, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = "开启"},{["value"] = -1505254313802431360, ["type"] = 32},{["lv"] = -4676364914835832019, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 8.5, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 1331073956, ["type"] = 4},{["lv"] = 4, ["offset"] = -44, ["type"] = 4},{["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4},{["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4},}qmxg = {{["value"] = 1176255488, ["offset"] = -60, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -68, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -72, ["type"] = 4},{["value"] = 1120272384, ["offset"] = -76, ["type"] = 4},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = "开启"},{["value"] = 100800, ["type"] = 4},{["lv"] = 4, ["offset"] = -12, ["type"] = 4},{["lv"] = 4, ["offset"] = -16, ["type"] = 4},{["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4},{["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4},}qmxg = {{["value"] = 1034147594, ["offset"] = -60, ["type"] = 4},}xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "核心提速"}, {["value"] = 1331073956, ["type"] = 4}, {["lv"] = 4, ["offset"] = -44, ["type"] = 4}, {["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4}, {["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1176255488, ["offset"] = -60, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -68, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -72, ["type"] = 4}, {["value"] = 1120272384, ["offset"] = -76, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1328550408728725571", 32, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1,328,550,408,586,191,176", 32) qmnb = { {["memory"] = 32}, {["name"] = "核心提速"}, {["value"] = 100800, ["type"] = 4}, {["lv"] = 4, ["offset"] = -12, ["type"] = 4}, {["lv"] = 4, ["offset"] = -16, ["type"] = 4}, {["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4}, {["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1034147594, ["offset"] = -60, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,895,342,427,272,904,704", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,895,342,427,383,806,976", gg.TYPE_QWORD) gg.clearResults() fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926273201366,-12,32,false}},4,16384,"闪现") fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}},{{0,24,16,false}},4,16384,"乱杀") gg.clearResults() gg.setRanges(16384) local dataType=gg.TYPE_FLOAT Name="伪装减速" local tb1={{-4.0471672e25,0x8510}} local tb2={{-3.836923e21,0x85C4}} SearchWrite(tb1,tb2,dataType) gg.clearResults() gg.setRanges(32) gg.searchNumber("479.5;1;1;1:100",16) gg.searchNumber("1",16) gg.getResults(300) gg.editAll("800", 16) gg.toast("提速") Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744149883614555, 0}} local Sz2 = {{-1296744153870237696, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 32 local Lx = 32 local Sz1 = {{4525216907414147695, 0}} local Sz2 = {{4525216907475015434, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408728725571, 0}} local Sz2 = {{-1328550408576460390, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 32 local Lx = 16 local Sz1 = {{10.0, 0},{46.0, 4}} local Sz2 = {{99999, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744149883614555, 0}} local Sz2 = {{-1296744153870237696, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313802431360, 0}} local Sz2 = {{-1505254313804169216, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "小翻" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408728725571, 0}} local Sz2 = {{-1328550408581493555, 0}} Searching(Nc, Lx, Sz1, Sz2) end function y4() function Searching(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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("\n🍂搜索到"..#data.."数据\n🍂开始进行偏移") 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) gg.sleep(400) gg.toast("\n🍂"..Name.."成功\n🍂共修改"..#t.."数据") else gg.toast("\n✔️"..Name.."成功") return false end else gg.toast("\n✔️"..Name.."成功") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type喵内是你爹") gg.toast("type喵内是你爹") os.exit() end else print("memory or array喵内是你爹") gg.toast("memory or array喵内是你爹") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze gg.setValues(t) return gg.addListItems(t) else return gg.setValues(t) end else return false 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 gg.toast(Name.."喵内是你爹"..#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) gg.sleep(500) gg.toast(Name.."喵内是你爹"..#t.."喵内是你爹") else gg.toast(Name.."喵内是你爹or喵内是你爹\n喵内是你爹") return false end else gg.toast(Name.."看不懂别二改") return false 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 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("Not Found", false) return false end else gg.toast("Not Found") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "看不懂别二改") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "RAVI") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function encodes(code) return (code:gsub("..", function(h) return string.char((tonumber(h, 16) + 256 - 13 + 255999744) % 256) end )) end do do for _FORV_3_ = 1, 2000 do load("local results = gg.getFile(5000)")() end end end gg.setRanges(16420) local results = gg.getFile() local results = gg.getResults(5000) gg.setValues(results) local results = gg.getFile() 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) gg.sleep(500) else return false end else return false end end function fxs(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) 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 = Search[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(Mingcg.."开启成功"..#data.."") local t = {} local base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) 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(Mingcg..""..#t.."") gg.addListItems(t) else gg.toast(Mingcg.."", false) return false end else gg.toast("") return false end end function PS() end function setvalue(address,flags,value) PS('(,,)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function configure(xgsz,sssz,gssz,xl) gg.clearResults() gg.setRanges(nc) flags=xl gg.searchNumber(sssz,xl, false, 56870912, 0, -1) ssjgsl=gg.getResultCount() if ssjgsl>0 then gg.toast(""..ssjgsl.."") gg.searchNumber(gssz,xl, false, 56870912, 0, -1) ssjgs=gg.getResultCount() if ssjgs>0 then else gg.toast(":") end gg.getResults(ssjgs) gg.All(xgsz, xl) gg.toast("开启成功 已修改"..ssjgs.."条数值") else gg.toast("开启成功 原因:结果无数值") end end function js(address,flags,value) local jz={} jz[1]={} jz[1].address=address jz[1].flags=flags jz[1].value=value gg.setValues(jz) end function jz(sxg,zs,zsnb) flags=zs value=zsnb so=gg.getRangesList(''..name..'')[1].start js(so+sxg,zs,zsnb) end local ZS_1 = gg.alert local ZS_2 = gg.toast local ZS_3 = gg.searchNumber local ZS_4 = gg.editAll local ZS_5 = gg.setRanges local ZS_6 = gg.getResults local ZS_7 = gg.clearResults local ZS_8 = gg.searchAddress local ZS_9 = gg.getResultCount local ZS_10 = gg.REGION_BAD local ZS_11 = gg.REGION_ANONYMOUS local ZS_12 = gg.REGION_AZSMEM local ZS_13 = gg.REGION_C_ALLOC local ZS_14 = gg.REGION_C_BSS local ZS_15 = gg.REGION_C_code local ZS_16 = gg.REGION_C_HEAP local ZS_17 = gg.REGION_CODE_APP local ZS_18 = gg.REGION_CODE_SYS local ZS_19 = gg.REGION_JAVA local ZS_20 = gg.REGION_JAVA_HEAP local ZS_21 = gg.REGION_OTHER local ZS_22 = gg.REGION_PPSSPP local ZS_23 = gg.REGION_STACK local ZS_24 = gg.TYPE_FLOAT local ZS_25 = gg.SIGN_EQUAL local ZS_26 = gg.TYPE_DWORD local ZS_27 = gg.TYPE_BYTE local ZS_28 = gg.TYPE_WORD local ZS_29 = gg.REGION_VIDEO local ZS_30 = gg.multiChoice local ZS_31 = print function baseAdd(t) local py = gg.getRangesList(t["奶辞yyds"])[1].start + t["by奶辞"] gg.setValues({ { address = py, flags = t["看不懂别二改"], value = t["奶辞牛逼"] }})end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgfxs(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgfxs(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "") end end end end function fxs(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 "修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false 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 gg.toast(Name.."共搜索到"..#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) gg.sleep(500) gg.toast(Name.."开启成功✔共修改"..#t.."条数据") else return false end else return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end end end function edit(orig,ret)_om=orig[1].memory or orig[1][1]_ov=orig[3].value or orig[3][1]_on=orig[2].name or orig[2][1]gg.clearResults()gg.setRanges(_om)gg.searchNumber(_ov,orig[3].type or orig[3][2])sz=gg.getResultCount()if sz<1 then gg.toast(_on.."开启成功✘")else sl=gg.getResults(720)for i=1,sz do ist=true for v=4,#orig do if ist==true and sl[i].value==_ov then cd={{}}cd[1].address=sl[i].address+(orig[v].offset or orig[v][2])cd[1].flags=orig[v].type or orig[v][3]szpy=gg.getValues(cd)cdlv=orig[v].lv or orig[v][1]cdv=szpy[1].value if cdlv==cdv then pdjg=true ist=true else pdjg=false ist=false end end end if pdjg==true then szpy=sl[i].address for x=1,#(ret)do xgpy=szpy+(ret[x].offset or ret[x][2])xglx=ret[x].type or ret[x][3]xgsz=ret[x].value or ret[x][1]xgdj=ret[x].freeze or ret[x][4]xgsj={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xgsj[1].freeze=xgdj gg.addListItems(xgsj)else gg.setValues(xgsj)end end xgjg=true end end if xgjg==true then gg.toast(_on.."开启成功")else gg.toast(_on.."开启成功✘")end 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 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) gg.toast("已修改"..#t.."条数据") gg.addListItems(t) else gg.toast("开启成功✘", false) return false end else gg.toast("开启成功✘") return false end end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启成功✘") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功✔共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启成功✘") end end 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 local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local rx = mearrass(memory, array) if rx then local rx, datatype = typetab(array, type) if rx then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) elsegg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].rx = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].rx = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].rx = false end end end end for i = 1, #data do if data[i].rx then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end end Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313804169216, 0}} local Sz2 = {{-1505254313802431360, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408581493555, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) qmnb = { {["memory"] = 32}, {["name"] = "关闭"}, {["value"] = 100800, ["type"] = 4}, {["lv"] = 4, ["offset"] = -12, ["type"] = 4}, {["lv"] = 4, ["offset"] = -16, ["type"] = 4}, {["lv"] = 1053609165, ["offset"] = -56, ["type"] = 4}, {["lv"] = 1101004800, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 973279855, ["offset"] = -60, ["type"] = 4}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,328,550,408,587,197,809", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("-1,328,550,408,728,725,571", gg.TYPE_QWORD) qmnb = { {["memory"] = 32}, {["name"] = "关闭"}, {["value"] = 1331073956, ["type"] = 4}, {["lv"] = 4, ["offset"] = -44, ["type"] = 4}, {["lv"] = 1326777081, ["offset"] = 8, ["type"] = 4}, {["lv"] = 1139785728, ["offset"] = -64, ["type"] = 4}, } qmxg = { {["value"] = 1139785728, ["offset"] = -60, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -68, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -72, ["type"] = 4}, {["value"] = 1065353216, ["offset"] = -76, ["type"] = 4}, } xqmnb(qmnb) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1505254313804431360, 0}} local Sz2 = {{-1505254313802431360, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408577467023, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1296744153870237696, 0}} local Sz2 = {{-1296744149883614555, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 32 local Lx = 32 local Sz1 = {{4525216907475015434, 0}} local Sz2 = {{4525216907414147695, 0}} Searching(Nc, Lx, Sz1, Sz2) Name = "关闭" local Nc = 16392 local Lx = 32 local Sz1 = {{-1328550408576460390, 0}} local Sz2 = {{-1328550408728725571, 0}} Searching(Nc, Lx, Sz1, Sz2) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,895,342,427,383,806,976", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,895,342,427,272,904,704", gg.TYPE_QWORD) gg.clearResults() gg.toast("关闭") fxs({{false,268464131,0,4,nil,nil}, {290914307,4,4}}, {{-6.15262313e27,24,16,false}}, 4,16384,"关闭") fxs({{false,-998965248,0,4,nil,nil}, {1101004800,232,4}}, {{0.0005,236,16,false}}, 4,32,"关闭") gg.clearResults() gg.setRanges(16384) local dataType = 16 local search = {{-5.7342929e27,0},{-3.836923e21,228},} local modify = {{-3.8369228e21,228},} searchWrite(search,modify,dataType) fxs({{false,-309327247,0,4,nil,nil}, {-308340220,4,4}}, {{9.99999997e-7,-4,16,false}}, 4,16384,"关闭") fxs({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}},{{1.0,100,16,false}}, 4,32,"关闭") fxs({{false,-1088801054,0,4,nil,nil}}, {{10.90734863281,-8,16,false}}, 4,16384,"关闭") fxs({{false,-1359975840,0,4,nil,nil}}, {{-1228926276669014016,-12,32,false}}, 4,16384,"关闭") fxs({{false,1139785728,0,4,nil,nil}, {1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}}, {{1.0,-12,16,false},{1.0,-8,16,false},{1.0,-4,16,false}}, 4,32,"关闭") gg.setVisible(false) gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber('-2.793752e28;-3.7444097e28;0.0;-1.1144502e28;-1.8331477e27:17', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('0', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll('-1.86389771e-20', gg.TYPE_FLOAT) gg.setRanges(16384) local dataType = 16 local tb1 = {{9, 0}, {-3.8685728e25, -12}, {-2.9687729e21, -8}, {-1.8890966e26, 4}, {-0.60239994526, 8}, } local tb2 = {{10.90734863281, 0}, } SearchWrite(tb1, tb2, dataType) gg.setRanges(16384) local dataType = 16 local tb1 = {{0.21999999881, 0}, {-1.1144502e28, -8}, {-2.0291021e20, -4}, {-5.572308e27, 4}, {-6.1549459e27, 8}, } local tb2 = {{1.0e-6, 0}, } SearchWrite(tb1, tb2, dataType) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1228926273126264269", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1228926273201366461", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744153870237696", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("-1296744149883614555", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267068834414592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1585267064848315881",gg.TYPE_QWORD) gg.toast("关闭成功") gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1328550408578138112", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1328550408728725571",gg.TYPE_QWORD) gg.toast("关闭成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,473,673,257", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,525,216,907,414,147,695", gg.TYPE_QWORD) gg.searchNumber("-1505254313804899999", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1505254313802431360", gg.TYPE_QWORD) gg.toast("关加速成功") gg.setVisible(false) gg.setRanges(32) local dataType = 16 local tb1 = {{-1500, 0}, {9.1689761e-41, -8}, {0, -4}, {4000, 4}, {0.30000001192, 8}, } local tb2 = {{-980, 0}, } SearchWrite(tb1, tb2, dataType) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("0.0001;5.6::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("5.6", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("0",16) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,068,834,414,592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,064,848,315,880",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,585,267,068,834,414,592", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll("-1,585,267,064,848,315,880",gg.TYPE_QWORD) gg.toast("关闭") end function y5() mnnb({{-1901117039636905984,0,32}},{{-1901117038551420109,0,32}},16384,"纵横四海",true) mnnb({{268464131,0,4},{290914307,4,4}},{{0,24,16}},16384,"完美全局",true) mnnb({{150994944,0,4},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{90.0,16,16},{90.0,20,16}},32,"完美全局",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.055,236,16}},32,"完美全局",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{0.285,-4,16}},16384,"完美全局",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.01,100,16}},32,"完美人物",true) mnnb({{-1088801054,0,4}},{{9,-8,16}},16384,"完美人物",true) mnnb({{1139785728,0,4},{1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}},{{1200.0,-12,16},{1200.0,-8,16},{1200.0,-4,16}},32,"完美全局",true) gg.toast("开启成功") mnnb({{-1296744149883614555,0,32}},{{-1296744149264269342,0,32}},16384,"全局突破口",true) mnnb({{4525216907414147695,0,32}},{{4525216907473673257,0,32}},32,"人物突破口",true) mnnb({{-1328550408728725571,0,32}},{{-1328550408576460390,0,32}},16384,"加速优化",true) mnnb({{-1228926273201366461,0,32}},{{-1228926273126264269,0,32}},16384,"稳定加速",true) gg.clearResults() gg.setRanges(16384) gg.searchNumber('6.1630904e-33;-6.1526231e27;-9.9839328e27;-2.8246552e28:13', 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('6.1630904e-33;-6.1526231e27', 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(999) gg.editAll('0',16) gg.toast('防拉回1开启成功') gg.clearResults() gg.setRanges(16384) gg.searchNumber('-3.8369228e21;1.140804e-33;-4.4272672e22::9', 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-3.8369228e21;1.140804e-33;-4.4272672e22', 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(3) gg.editAll('0',16) gg.toast('防拉回2开启成功') gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,287,719,427,143,988,736", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1110) gg.editAll("-1,296,744,153,870,237,696", 32) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-1,296,744,149,883,614,555", gg.TYPE_QWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(190) gg.editAll("-1,296,744,153,870,237,696",gg.TYPE_QWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-6.15264497e27", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(50) gg.editAll("0",16) gg.clearResults() gg.setRanges(16384) gg.searchNumber("-6.15262313e27", 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(50) gg.editAll("0", 16) mnnb({{479.5,0,16},{1.0,-12,16},{1.0,-8,16},{1.0,-4,16},},{{4000,-12,16},{4000,-8,16},{2200,-4,16},},32,"趴下加速",true) gg.toast("开启成功") HuaZhiYu({{false,-1296744149883614555,0,32,nil,nil}},{{-1296744153870237696,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1505254313802431360,0,32,nil,nil}},{{-1505254313804169216,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1328550408728725571,0,32,nil,nil}},{{-1328550408581493555,0,32,false}},32,16384,"加速") HuaZhiYu({{false,4525216907414147695,0,32,nil,nil}},{{4525216907475015434,0,32,false}},32,32,"加速") HuaZhiYu({{false,-1505254313802431360,0,32,nil,nil}},{{-1505254313804431360,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1328550408728725571,0,32,nil,nil}},{{-1328550408577467023,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1296744149883614555,0,32,nil,nil}},{{-1296744153870237696,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1328550408728725571,0,32,nil,nil}},{{-1328550408576460390,0,32,false}},32,16384,"加速") HuaZhiYu({{false,-1901117039636905984,0,32,nil,nil}},{{-1901117038551420109,0,32,false}},32,16384,"加速") end function y6() mnnb({{479.5,0,16},{4000.0,-12,16},{4000.0,-8,16},{2200.0,-4,16},},{{1,-12,16},{1,-8,16},{1,-4,16},},32,"趴下加速关",true) HuaZhiYu({{false,-8.66297292e22,0,16,nil,nil}},{{-5.84305488e27,-32,16,false}},16,16384,"关闭") mnnb({{-980.0,0,16},{20.0,232,16},},{{1,216,16},{1,220,16},{1,224,16},},32,"Fxs关",true) mnnb({{268464131,0,4},{290914307,4,4}},{{-6.15262313e27,24,16}},16384,"关闭",true) mnnb({{-998965248,0,4},{1101004800,232,4}},{{0.0005,236,16}},32,"关闭",true) mnnb({{-309327247,0,4},{-308340220,4,4}},{{9.99999997e-7,-4,16}},16384,"关闭",true) mnnb({{1198153728,0,4},{1,20,4},{1,24,4}},{{1.0,100,16}},32,"关闭",true) mnnb({{-1088801054,0,4}},{{10.90734863281,-8,16}},16384,"关闭",true) mnnb({{-1359975840,0,4}},{{-1228926276669014016,-12,32}},16384,"关闭",true) mnnb({{1139785728,0,4},{1065353216,-12,4},{1065353216,-8,4},{1065353216,-4,4}},{{1.0,-12,16},{1.0,-8,16},{1.0,-4,16}},32,"关闭",true) mnnb({{-1296744149264269342,0,32}},{{-1296744149883614555,0,32}},16384,"关闭",true) mnnb({{4525216907473673257,0,32}},{{4525216907414147695,0,32}},32,"关闭",true) mnnb({{-1328550408576460390,0,32}},{{-1328550408728725571,0,32}},16384,"关闭",true) mnnb({{-1228926273126264269,0,32}},{{-1228926273201366461,0,32}},16384,"关闭",true) HuaZhiYu({{false,4895342427383806976,0,32,nil,nil}},{{4895342427272904704,0,32,false}},32,32,"关闭") HuaZhiYu({{false,-1296744153870237696,0,32,nil,nil}},{{-1296744149883614555,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1505254313804169216,0,32,nil,nil}},{{-1505254313802431360,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1328550408581493555,0,32,nil,nil}},{{-1328550408728725571,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1296744153870237696,0,32,nil,nil}},{{-1296744149883614555,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1505254313804431360,0,32,nil,nil}},{{-1505254313802431360,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1328550408577467023,0,32,nil,nil}},{{-1328550408728725571,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1296744153870237696,0,32,nil,nil}},{{-1296744149883614555,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,4525216907475015434,0,32,nil,nil}},{{4525216907414147695,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1328550408576460390,0,32,nil,nil}},{{-1328550408728725571,0,32,false}},32,16392,"关闭") HuaZhiYu({{false,-1901117038551420109,0,32,nil,nil}},{{-1901117039636905984,0,32,false}},32,16384,"关闭") end function y7() HuaZhiYu({{false,-2.1515281e28,0,16,nil,nil},{-1.1144502e28,4,16}},{{-1.1221873e28,0,16,false},{-1.1221873e28,4,16,false}},32,16384,"415") HuaZhiYu({{false,-309327247,0,4,nil,nil},{-308340220,4,4}},{{0.285,-4,16,false}},4,16384,"636") HuaZhiYu({{false,1198153728,0,4,nil,nil},{1,20,4},{1,24,4}},{{1.01,100,16,false}},4,32,"325") HuaZhiYu({{false,-1088801054,0,4,nil,nil}},{{9,-8,16,false}},4,16384,"369") HuaZhiYu({{false,-1359975840,0,4,nil,nil}},{{-1228926273201366,-12,32,false}},4,16384,"934") HuaZhiYu({{false,268464131,0,4,nil,nil},{290914307,4,4}},{{0,24,16,false}},4,16384,"676") HuaZhiYu({{false,-637534134,0,4,nil,nil},{-309061114,-12,4}},{{0,-16,16,false}},4,16384,"213") HuaZhiYu({{false,150994944,0,4,nil,nil},{58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}},{{90.0,16,16,false},{90.0,20,16,false}},4,32,"423") HuaZhiYu({{false,-998965248,0,4,nil,nil},{1101004800,232,4}},{{0.055,236,16,false}},4,32,"369") mnnb({{-1296744149883614555,0,32}},{{-1296744149264269342,0,32}},16384,"全局突破口",true) mnnb({{4525216907414147695,0,32}},{{4525216907473673257,0,32}},32,"人物突破口",true) mnnb({{-1328550408728725571,0,32}},{{-1328550408576460390,0,32}},16384,"加速优化",true) mnnb({{-1228926273201366461,0,32}},{{-1228926273126264269,0,32}},16384,"稳定加速",true) end function y8() HuaZhiYu({{false,268464131,0,4,nil,nil},{290914307,4,4}},{{-6.15262313e27,24,16,false}},4,16384,"关闭") HuaZhiYu({{false,-637534134,0,4,nil,nil},{-309061114,-12,4}},{{-5.10801854e27,-16,16,false}},4,16384,"关闭") HuaZhiYu({{false,-998965248,0,4,nil,nil},{1101004800,232,4}},{{0.0005,236,16,false}},4,32,"关闭") HuaZhiYu({{false,-309327247,0,4,nil,nil},{-308340220,4,4}},{{9.99999997e-7,-4,16,false}},4,16384,"关闭") HuaZhiYu({{false,1198153728,0,4,nil,nil},{1,20,4},{1,24,4}},{{1.0,100,16,false}},4,32,"关闭") HuaZhiYu({{false,-1088801054,0,4,nil,nil}},{{10.90734863281,-8,16,false}},4,16384,"关闭") HuaZhiYu({{false,-1359975840,0,4,nil,nil}},{{-1228926276669014016,-12,32,false}},4,16384,"关闭") mnnb({{-1296744149264269342,0,32}},{{-1296744149883614555,0,32}},16384,"关闭",true) mnnb({{4525216907473673257,0,32}},{{4525216907414147695,0,32}},32,"关闭",true) mnnb({{-1328550408576460390,0,32}},{{-1328550408728725571,0,32}},16384,"关闭",true) mnnb({{-1228926273126264269,0,32}},{{-1228926273201366461,0,32}},16384,"关闭",true) end function Exit() print("木马轻体V1") os.exit() end function HOME() lw=1 Main() end cs = '木马' while(true)do if gg.isVisible(true) then XGCK=1 gg.setVisible(false) end gg.clearResults() if XGCK==1 then Main() end end