-- Decompiled by RUA decompiler local v0, v1 v0 = "split" function v1(a0_1, a1_1) local v0_1, v1_1, v2_1, v3_1 v0_1 = 1 v1_1 = 1 v2_1 = {} while true do v3_1 = string.find(a0_1, a1_1, v0_1) if not v3_1 then break end v2_1[v1_1] = string.sub(a0_1, v0_1, v3_1 - 1) v0_1 = v3_1 + string.len(a1_1) v1_1 = v1_1 + 1 end v2_1[v1_1] = string.sub(a0_1, v0_1, string.len(a0_1)) return v2_1 end _ENV[v0] = v1 v0 = "xgxc" function v1(a0_1, a1_1) local v0_1, v1_1, v2_1, v3_1 v1_1 = #a1_1 v2_1 = 1 v0_1 = 1 - v2_1 while true do v0_1 = v0_1 + v2_1 if not (v0_1 <= v1_1) then break end v3_1 = v0_1 xgpy = a0_1 + a1_1[v3_1].offset xglx = a1_1[v3_1].type xgsz = a1_1[v3_1].value gg.setValues({ [1] = { address = xgpy, flags = xglx, value = xgsz } }) xgsl = xgsl + 1 end return end _ENV[v0] = v1 v0 = "xqmnb" function v1(a0_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1 gg.clearResults() gg.setRanges(a0_1[1].memory) gg.searchNumber(a0_1[3].value, a0_1[3].type) if gg.getResultCount() == 0 then gg.toast(a0_1[2].name .. "开启失败") else gg.refineNumber(a0_1[3].value, a0_1[3].type) gg.refineNumber(a0_1[3].value, a0_1[3].type) gg.refineNumber(a0_1[3].value, a0_1[3].type) if gg.getResultCount() == 0 then gg.toast(a0_1[2].name .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if 999999 < sz then sz = 999999 end v0_1 = 1 v1_1 = sz v2_1 = 1 v0_1 = v0_1 - v2_1 while true do v0_1 = v0_1 + v2_1 if not (v0_1 <= v1_1) then break end v3_1 = v0_1 pdsz = true v5_1 = #a0_1 v6_1 = 1 v4_1 = 4 - v6_1 while true do v4_1 = v4_1 + v6_1 if not (v4_1 <= v5_1) then break end v7_1 = v4_1 if pdsz == true then pysz = { [1] = {} } pysz[1].address = sl[v3_1].address + a0_1[v7_1].offset pysz[1].flags = a0_1[v7_1].type szpy = gg.getValues(pysz) pdpd = a0_1[v7_1].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[v3_1].address xgxc(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(a0_1[2].name .. "开启成功,共修改" .. xgsl .. "条数据") else gg.toast(a0_1[2].name .. "开启失败") end end end return end _ENV[v0] = v1 v0 = "SearchWrite" function v1(a0_1, a1_1, a2_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1, v8_1, v9_1, v10_1, v11_1, v12_1, v13_1, v14_1, v15_1 gg.clearResults() gg.setVisible(false) gg.searchNumber(a0_1[1][1], a2_1) v0_1 = gg.getResultCount() v1_1 = gg.getResults(v0_1) gg.clearResults() v2_1 = {} v3_1 = a0_1[1][2] if 0 < v0_1 then v4_1, v5_1, v6_1 = ipairs(v1_1) while true do v7_1, v8_1 = v4_1(v5_1, v6_1) if v7_1 == nil then break end v6_1 = v7_1 v8_1.isUseful = true end v5_1 = #a0_1 v6_1 = 1 v4_1 = 2 - v6_1 while true do v4_1 = v4_1 + v6_1 if not (v4_1 <= v5_1) then break end v7_1 = v4_1 v8_1 = {} v9_1 = a0_1[v7_1][2] - v3_1 v10_1 = a0_1[v7_1][1] v11_1, v12_1, v13_1 = ipairs(v1_1) while true do v14_1, v15_1 = v11_1(v12_1, v13_1) if v14_1 == nil then break end v13_1 = v14_1 v8_1[#v8_1 + 1] = {} v8_1[#v8_1].address = v15_1.address + v9_1 v8_1[#v8_1].flags = v15_1.flags end v11_1, v12_1, v13_1 = ipairs((gg.getValues(v8_1))) while true do v14_1, v15_1 = v11_1(v12_1, v13_1) if v14_1 == nil then break end v13_1 = v14_1 if tostring(v15_1.value) ~= tostring(v10_1) then v1_1[v14_1].isUseful = false end end end v4_1, v5_1, v6_1 = ipairs(v1_1) while true do v7_1, v8_1 = v4_1(v5_1, v6_1) if v7_1 == nil then break end v6_1 = v7_1 if v8_1.isUseful then v2_1[#v2_1 + 1] = v8_1.address end end if 0 < #v2_1 then gg.toast("🕹:修改" .. #v2_1 .. "条数据.开启成功") v4_1 = {} v5_1 = a0_1[1][2] v7_1 = #v2_1 v8_1 = 1 v6_1 = 1 - v8_1 while true do v6_1 = v6_1 + v8_1 if not (v6_1 <= v7_1) then break end v9_1 = v6_1 v10_1, v11_1, v12_1 = ipairs(a1_1) while true do v13_1, v14_1 = v10_1(v11_1, v12_1) if v13_1 == nil then break end v12_1 = v13_1 offset = v14_1[2] - v5_1 v4_1[#v4_1 + 1] = {} v4_1[#v4_1].address = v2_1[v9_1] + offset v4_1[#v4_1].flags = a2_1 v4_1[#v4_1].value = v14_1[1] if v14_1[3] == true then v15_1 = { [#v15_1 + 1] = v4_1[#v4_1] } v15_1[#v15_1].freeze = true gg.addListItems(v15_1) end end end gg.setValues(v4_1) return end gg.toast("🕹:搜索0条数据.修改失败", false) return false end gg.toast("🕹:搜索0条数据.修改失败") return false end _ENV[v0] = v1 v0 = "S_Pointer" function v1(a0_1, a1_1, a2_1) local v0_1, v1_1 function v0_1() local v0_2, v2_2, v3_2, v4_2, v5_2, v6_2, v7_2 v0_2 = {} v2_2, v3_2, v4_2 = pairs((gg.getRangesList("^/data/*.so*$"))) while true do v5_2, v6_2 = v2_2(v3_2, v4_2) if v5_2 == nil then break end v4_2 = v5_2 v7_2 = v6_2.type if v7_2:sub(2, 2) == "w" then table.insert(v0_2, v6_2) end end return v0_2 end function v1_1(a0_2, a1_2, a2_2) local v0_2, v1_2, v2_2, v3_2, v4_2, v5_2, v6_2, v7_2, v8_2, v9_2, v10_2, v11_2, v12_2, v13_2 v0_2 = gg.getTargetInfo() v1_2 = v0_1() v2_2 = {} v3_2, v4_2 = nil if a2_2 then v3_2 = 32 else v3_2 = 4 end v5_2, v6_2, v7_2 = pairs(v1_2) while true do v8_2 = v5_2(v6_2, v7_2) if v8_2 == nil then break end v7_2 = v8_2 v9_2 = v1_2[v8_2].internalName if a0_2[1] == v9_2:gsub("^.*/", "") and a0_2[2] == v1_2[v8_2].state then v4_2 = v1_2[v8_2] goto label_0_2 end end ::label_0_2:: if v4_2 then v2_2[#v2_2 + 1] = {} v2_2[#v2_2].address = v4_2.start + a1_2[1] v2_2[#v2_2].flags = v3_2 if #a1_2 ~= 1 then v6_2 = #a1_2 v7_2 = 1 v5_2 = 2 - v7_2 while true do v5_2 = v5_2 + v7_2 if not (v5_2 <= v6_2) then break end v8_2 = v5_2 v9_2 = gg.getValues(v2_2) v2_2 = {} v10_2, v11_2, v12_2 = pairs(v9_2) while true do v13_2 = v10_2(v11_2, v12_2) if v13_2 == nil then break end v12_2 = v13_2 if not v0_2.x64 then v9_2[v13_2].value = v9_2[v13_2].value & 4294967295 end v2_2[#v2_2 + 1] = {} v2_2[#v2_2].address = v9_2[v13_2].value + a1_2[v8_2] v2_2[#v2_2].flags = v3_2 end end end v4_2 = v2_2[#v2_2].address end return v4_2 end return (string.format("0x%X", v1_1(a0_1, a1_1, a2_1))) end _ENV[v0] = v1 v0 = "Unfreeze" function v1() local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1 v0_1 = gg.getListItems() v1_1, v2_1, v3_1 = pairs(v0_1) while true do v4_1, v5_1 = v1_1(v2_1, v3_1) if v4_1 == nil then break end v3_1 = v4_1 v0_1[v4_1].freeze = false end return (gg.addListItems(v0_1)) end _ENV[v0] = v1 v0 = "xqmnb" function v1(a0_1, a1_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1, v8_1, v9_1, v10_1, v11_1, v12_1, v13_1, v14_1 gg.clearResults() gg.setRanges(a0_1[1].memory) gg.searchNumber(a0_1[3].value, a0_1[3].type, false, 536870912, 0, -1) if gg.getResultCount() == 0 then gg.toast(a0_1[2].name .. "开启失败") return end v0_1 = gg.getResults(gg.getResultCount()) v3_1 = #a0_1 v4_1 = 1 v2_1 = 4 - v4_1 while true do v2_1 = v2_1 + v4_1 if not (v2_1 <= v3_1) then break end v5_1 = v2_1 v1_1 = 0 v7_1 = #v0_1 v8_1 = 1 v6_1 = 1 - v8_1 while true do v6_1 = v6_1 + v8_1 if not (v6_1 <= v7_1) then break end v9_1 = v6_1 if gg.getValues({ { address = v0_1[v9_1].address + a0_1[v5_1].offset, flags = a0_1[v5_1].type } })[1].value ~= a0_1[v5_1].lv then v0_1[v9_1].Usable = true v1_1 = v1_1 + 1 end end if v1_1 == #v0_1 then gg.toast(a0_1[2].name .. "开启失败") return end end v2_1 = {} v3_1 = {} v4_1 = 0 v1_1 = 0 v5_1, v6_1, v7_1 = ipairs(a1_1) while true do v8_1, v9_1 = v5_1(v6_1, v7_1) if v8_1 == nil then break end v7_1 = v8_1 v11_1 = #v0_1 v12_1 = 1 v10_1 = 1 - v12_1 while true do v10_1 = v10_1 + v12_1 if not (v10_1 <= v11_1) then break end v13_1 = v10_1 if not v0_1[v13_1].Usable then v14_1 = { address = v0_1[v13_1].address + v9_1.offset, flags = v9_1.type, value = v9_1.value, freeze = true } if v9_1.freeze then v3_1[#v3_1 + 1] = v14_1 v4_1 = v4_1 + 1 else v2_1[#v2_1 + 1] = v14_1 end v1_1 = v1_1 + 1 end end end gg.setValues(v2_1) gg.addListItems(v3_1) if v4_1 == 0 then gg.toast(a0_1[2].name .. "开启成功,共修改" .. v1_1 .. "条数据") else gg.toast(a0_1[2].name .. "开启成功,共修改" .. v1_1 .. "条数据,冻结" .. v4_1 .. "条数据") end gg.clearResults() return end _ENV[v0] = v1 v0 = "XGBase" function v1(a0_1, a1_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1, v8_1 v0_1 = 0 v1_1, v2_1, v3_1 = ipairs(a0_1) while true do v4_1, v5_1 = v1_1(v2_1, v3_1) if v4_1 == nil then break end v3_1 = v4_1 if v4_1 == 1 then v0_1 = v5_1 else v0_1 = gg.getValues({ { address = v0_1 + v5_1, flags = 4 } })[1].value end end v1_1 = {} v2_1 = {} v3_1, v4_1, v5_1 = ipairs(a1_1) while true do v6_1, v7_1 = v3_1(v4_1, v5_1) if v6_1 == nil then break end v5_1 = v6_1 v8_1 = { address = v0_1 + v7_1[3], flags = v7_1[2], value = v7_1[1], freeze = true } if v7_1[4] then v2_1[#v2_1 + 1] = v8_1 else v1_1[#v1_1 + 1] = v8_1 end end gg.setValues(v1_1) gg.addListItems(v2_1) return end _ENV[v0] = v1 v0 = "Format" function v1(a0_1, a1_1, a2_1, a3_1, a4_1) local v0_1, v1_1, v2_1 if a1_1 == "查看" then a0_1[1].flags = a3_1 return print(gg.getValues(a0_1)) end if a1_1 == "修改" then a0_1[1].flags = a3_1 a0_1[1].value = a2_1 return (gg.setValues(a0_1)) end if a1_1 == "冻结" then a0_1[1].flags = a3_1 a0_1[1].freeze = true a0_1[1].value = a2_1 v0_1 = a0_1[1] v1_1 = "name" if not a4_1 then v2_1 = "功能" else v2_1 = a4_1 end v0_1[v1_1] = v2_1 return (gg.addListItems(a0_1)) end if a1_1 ~= "加载" then return end a0_1[1].flags = a3_1 return (gg.loadResults(a0_1)) end _ENV[v0] = v1 v0 = "addListltems" function v1(a0_1, a1_1, a2_1, a3_1) t = { [1] = {} } t[1].address = a0_1 t[1].flags = a1_1 t[1].value = a2_1 t[1].freeze = a3_1 gg.addListItems(t) return end _ENV[v0] = v1 v0 = "setvalue" function v1(a0_1, a1_1, a2_1) local v0_1 v0_1 = { [1] = {} } v0_1[1].address = a0_1 v0_1[1].flags = a1_1 v0_1[1].value = a2_1 gg.setValues(v0_1) return end _ENV[v0] = v1 v0 = "FengYe" function v1(a0_1, a1_1, a2_1, a3_1, a4_1, a5_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1, v8_1 getRanges = getRanges or function() local v0_2, v2_2, v3_2, v4_2, v5_2, v6_2, v7_2 v0_2 = {} v2_2, v3_2, v4_2 = pairs((gg.getRangesList("^/data/*.so*$"))) while true do v5_2, v6_2 = v2_2(v3_2, v4_2) if v5_2 == nil then break end v4_2 = v5_2 v7_2 = v6_2.type if v7_2:sub(2, 2) == "w" then v0_2[#v0_2 + 1] = v6_2 end end return v0_2 end v0_1 = {} v1_1 = getRanges() v2_1 = nil v3_1 = gg.TYPE_DWORD if gg.getTargetInfo().x64 then v3_1 = gg.TYPE_QWORD end v4_1, v5_1, v6_1 = pairs(v1_1) while true do v7_1 = v4_1(v5_1, v6_1) if v7_1 == nil then break end v6_1 = v7_1 v8_1 = v1_1[v7_1].internalName if a0_1[1] == v8_1:gsub("^.*/", "") and a0_1[2] == v1_1[v7_1].state then v2_1 = v1_1[v7_1].start goto label_0_1 end end ::label_0_1:: if v2_1 then if a1_1[1] then v5_1 = #a1_1 v6_1 = 1 v4_1 = 1 - v6_1 while true do v4_1 = v4_1 + v6_1 if not (v4_1 <= v5_1) then break end v7_1 = v4_1 v0_1 = gg.getValues({ { flags = v3_1, address = v2_1 + a1_1[v7_1] } }) if v7_1 == #a1_1 then break end if v3_1 == gg.TYPE_DWORD then v2_1 = v0_1[1].value & 4294967295 else v2_1 = v0_1[1].value end end end if #v0_1 == 1 then end return Format(v0_1, a2_1, a3_1, a4_1, a5_1) end gg.toast("功能:" .. a5_1 .. "开启失败") print("功能开启失败原因: 未找到基址头") return (os.exit()) end _ENV[v0] = v1 v0 = "setvalue" function v1(a0_1, a1_1, a2_1) local v0_1 v0_1 = { [1] = {} } v0_1[1].address = a0_1 v0_1[1].flags = a1_1 v0_1[1].value = a2_1 gg.setValues(v0_1) return end _ENV[v0] = v1 v0 = "xqmnb" function v1(a0_1, a1_1) local v0_1, v1_1, v2_1, v3_1, v4_1, v5_1, v6_1, v7_1, v8_1, v9_1, v10_1, v11_1, v12_1, v13_1, v14_1 gg.clearResults() gg.setRanges(a0_1[1].memory) gg.searchNumber(a0_1[3].value, a0_1[3].type, false, 536870912, 0, -1) if gg.getResultCount() == 0 then gg.toast(a0_1[2].name .. "开启失败") return end v0_1 = gg.getResults(gg.getResultCount()) v3_1 = #a0_1 v4_1 = 1 v2_1 = 4 - v4_1 while true do v2_1 = v2_1 + v4_1 if not (v2_1 <= v3_1) then break end v5_1 = v2_1 v1_1 = 0 v7_1 = #v0_1 v8_1 = 1 v6_1 = 1 - v8_1 while true do v6_1 = v6_1 + v8_1 if not (v6_1 <= v7_1) then break end v9_1 = v6_1 if gg.getValues({ { address = v0_1[v9_1].address + a0_1[v5_1].offset, flags = a0_1[v5_1].type } })[1].value ~= a0_1[v5_1].lv then v0_1[v9_1].Usable = true v1_1 = v1_1 + 1 end end if v1_1 == #v0_1 then gg.toast(a0_1[2].name .. "开启失败") return end end v2_1 = {} v3_1 = {} v4_1 = 0 v1_1 = 0 v5_1, v6_1, v7_1 = ipairs(a1_1) while true do v8_1, v9_1 = v5_1(v6_1, v7_1) if v8_1 == nil then break end v7_1 = v8_1 v11_1 = #v0_1 v12_1 = 1 v10_1 = 1 - v12_1 while true do v10_1 = v10_1 + v12_1 if not (v10_1 <= v11_1) then break end v13_1 = v10_1 if not v0_1[v13_1].Usable then v14_1 = { address = v0_1[v13_1].address + v9_1.offset, flags = v9_1.type, value = v9_1.value, freeze = true } if v9_1.freeze then v3_1[#v3_1 + 1] = v14_1 v4_1 = v4_1 + 1 else v2_1[#v2_1 + 1] = v14_1 end v1_1 = v1_1 + 1 end end end gg.setValues(v2_1) gg.addListItems(v3_1) if v4_1 == 0 then gg.toast(a0_1[2].name .. "开启成功,共修改" .. v1_1 .. "条数据") else gg.toast(a0_1[2].name .. "开启成功,共修改" .. v1_1 .. "条数据,冻结" .. v4_1 .. "条数据") end gg.clearResults() return end _ENV[v0] = v1 v0 = "Main" function v1() while true do if gg.isVisible(true) then XGCK = 1 gg.setVisible(false) end if XGCK == 1 then menu = gg.choice({ "选择进程", "牢大加速[开]", "退出脚本" }, 2018, "记得改快速冻结[是],冻结间隔[0]\n频道@RLGG8") if menu == 1 then A1() end if menu == 2 then A2() end if menu == 3 then A3() end end if menu == 14 then Exit() end XGCK = -1 end end _ENV[v0] = v1 v0 = "A1" function v1() gg.setProcessX() string.toMusic("请选择目前游戏进程") return end _ENV[v0] = v1 v0 = "A2" function v1() choice = gg.alert("请选择你要玩的图", "五图", "七图") if choice ~= 1 then if choice == 2 then end end if choice == 1 then so = gg.getRangesList("libUE4.so")[1].start py = 104859796 setvalue(so + py, 16, 25.8) so = gg.getRangesList("libUE4.so")[1].start py = 97904600 setvalue(so + py, 16, 0) FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 92 }, "冻结", "0.65", 16, "动态加速") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 3152 }, "冻结", "0.95", 16, "微加速") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 324 }, "冻结", "400", 16, "高跳1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 92 }, "冻结", "99999", 16, "1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 428 }, "冻结", "0", 16, "2048") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 408 }, "冻结", "2000", 16, "惯性") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 2520 }, "冻结", "650", 16, "670") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 40 }, "冻结", "0", 4, "1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 444 }, "冻结", "1.0e10", 16, "0.05") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 320 }, "冻结", "120", 16, "攀爬") FengYe({ "libUE4.so:bss", "Cb" }, { 3660192, 168, 428 }, "冻结", "-920", 16, "高跳2") elseif choice == 2 then so = gg.getRangesList("libUE4.so")[1].start py = 104859796 setvalue(so + py, 16, 25.8) so = gg.getRangesList("libUE4.so")[1].start py = 97904600 setvalue(so + py, 16, 0) FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 92 }, "冻结", "0.65", 16, "动态加速") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 3152 }, "冻结", "0.95", 16, "微加速") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 324 }, "冻结", "400", 16, "高跳1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 92 }, "冻结", "99999", 16, "1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 428 }, "冻结", "0", 16, "2048") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 408 }, "冻结", "2000", 16, "惯性") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 2520 }, "冻结", "650", 16, "670") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 40 }, "冻结", "0", 4, "1") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 444 }, "冻结", "1.0e10", 16, "0.05") FengYe({ "libUE4.so:bss", "Cb" }, { 3539872, 32, 832, 900, 320 }, "冻结", "120", 16, "攀爬") FengYe({ "libUE4.so:bss", "Cb" }, { 3660192, 168, 428 }, "冻结", "-920", 16, "高跳2") end return end _ENV[v0] = v1 v0 = "Exit" function v1() print("") os.exit() return end _ENV[v0] = v1 while true do if gg.isVisible(true) then XGCK = 1 gg.setVisible(false) end gg.clearResults() if XGCK == 1 then Main() end end