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 setvalue(address,flags,value) local CatWill={} CatWill[1]={} CatWill[1].address=address CatWill[1].flags=flags CatWill[1].value=value gg.setValues(CatWill) end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end function gg.edits(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) end function XIXIFZ() XXFZ = gg.choice({ "人物广角(A内存)", "无后", "防抖", "聚点", "瞬击", "除雾", "加速[开]", "加速[关]", "范围[开]", "范围[关]", "倍速[开](A内存)", "倍速[关](A内存)", "枪械射速(A内存)", "退出" }, nil, "国际服2.6全火功能1.0\n来源于孙某某") if XXFZ == 1 then gj() end if XXFZ == 2 then wh() end if XXFZ == 3 then fd() end if XXFZ == 4 then jd() end if XXFZ == 5 then sj() end if XXFZ == 6 then cw() end if XXFZ == 7 then js() end if XXFZ == 8 then jsg() end if XXFZ == 9 then fw() end if XXFZ == 10 then fwg() end if XXFZ == 11 then bs() end if XXFZ == 12 then bsg() end if XXFZ == 13 then ss() end if XXFZ == 14 then os.exit() end XXKJ = -1 end function wh() so=gg.getRangesList('libUE4.so')[1].start--无后座 py=0x4FB6D44 setvalue(so+py,16,8.8411673e-21) end function fd() so=gg.getRangesList('libUE4.so')[1].start--防抖 py=0x5BC1C0C setvalue(so+py,16,2.19933704e12) so=gg.getRangesList('libUE4.so')[1].start py=0x80E99F0 setvalue(so+py,16,8.8411673e-21) gg.toast("开启成功防抖") end function cw() so=gg.getRangesList('libUE4.so')[1].start--除雾 py=0x72F6488 setvalue(so+py,16,8.95671814e-21) gg.toast("开启成功除雾") end function sj() so=gg.getRangesList('libUE4.so')[1].start--瞬🐔 py=0x8237F60 setvalue(so+py,16,8.95671814e-21) end function jd() so=gg.getRangesList('libUE4.so')[1].start--聚点 py=0x4FB21E8 setvalue(so+py,16,8.47963525e-21) end function js() so=gg.getRangesList('libUE4.so')[1].start py=0x81F67E8 setvalue(so+py,16,-3.4564993e10) gg.toast("开启成功加速") end function jsg() so=gg.getRangesList('libUE4.so')[1].start py=0x81F67E8 setvalue(so+py,16,8.50279631e-21) gg.toast("关闭成功加速") end function gj() local addr = readPointer("libUE4.so:bss", {0x3AC08, 0x0, 0x2E8, 0x180, 0x2CC}, 1) gg.edits(addr, {{120, 16, 0, true}}) end function bs() local addr = readPointer("libUE4.so:bss", {0x3AC08, 0x0, 0x84}, 1) gg.edits(addr, {{1.5, 16, 0, false}}) end function bsg() local addr = readPointer("libUE4.so:bss", {0x3AC08, 0x0, 0x84}, 1) gg.edits(addr, {{1, 16, 0, false}}) end function ss() OP=gg.prompt({'0.01到0.1'},{[1]='0.05'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local addr = readPointer("libUE4.so:bss", {0x3AC08, 0x0, 0xD80, 0x50, 0x7A8, 0x518}, 1) gg.edits(addr, {{OP[1], 16, 0, false}}) gg.alert("开启成功") end end --libUE4.so:bss+0x3AC08+0x0+0xD80+0x50+0x7A8+0x518 --libUE4.so:bss+0x3AC08+0x0+0x2E8+0x180+0x2CC function fw() so=gg.getRangesList('libUE4.so')[1].start--范围开 py=0x301829C setvalue(so+py,16,70) end function fwg() so=gg.getRangesList('libUE4.so')[1].start--范围关 py=0x301829C setvalue(so+py,16,0.10000000149) end while true do if gg.isVisible(true) then XXKJ = 1 gg.setVisible(false) end gg.clearResults() if XXKJ == 1 then XIXIFZ() end end