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 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 local gurenya=gg.setValues--静态 so=gg.getRangesList('libUE4.so')[1].start py=0X116E568 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X21D2CAC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start---紫特效 py=0X116E570 setvalue(so+py,16,0) so = gg.getRangesList('libUE4.so')[1].start py = 0x2C54E90 setvalue(so + py, 16, -9.90696528E27) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x32C,0x380,0xC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 99}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x32C,0x380,0x44} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 99}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x32C,0x380,0x7C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 99}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x32C,0x380,0xB4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 99}}) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("25;23;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(3) gg.editAll("110", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("110", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("30.5;25", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("110", gg.TYPE_FLOAT) gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(999) gg.editAll("371;365", gg.TYPE_FLOAT) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-298284466", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(15) gg.editAll("-0", gg.TYPE_DWORD) gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("10;45", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("10", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("600", gg.TYPE_FLOAT) gg.getResults(20) gg.editAll('4746794010547806208',gg.TYPE_QWORD) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('-5846769645006094336', gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(20) gg.editAll('-5846769642811990016',gg.TYPE_QWORD) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('1106509824', gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll('1128726528',gg.TYPE_QWORD) gg.setRanges(16392) gg.searchNumber('-298284466;-1.304566e23F', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-298284466', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll('0',gg.TYPE_DWORD) gg.setRanges(16392) gg.searchNumber('-298284466;-1.304566e23F', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('-298284466', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll('0',gg.TYPE_DWORD) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('16000~99999;3D;0.1;1D::40', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('16000~99999', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll('500000',gg.TYPE_FLOAT) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('0000B040rA;0000803FrA;0000403FrA:9', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(3) gg.editAll('1,087,897,600;1,075,838,976;1,075,838,976',gg.TYPE_DWORD) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('88000;0.08600000292', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('88000', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll('400000',gg.TYPE_FLOAT) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('71500;0.10000000149', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('71500', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll('400000',gg.TYPE_FLOAT) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('87000;0.09600000083', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('87000', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll('400000',gg.TYPE_FLOAT) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('71500;0.109', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber('71500', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll('400000',gg.TYPE_FLOAT) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('91500;0.07500000298', gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("10;45", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("10", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(900) gg.editAll("1100", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("71500", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("71500", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("500000", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("88000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("88000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("500000", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("90000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("90000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("500000", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("40000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("40000", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(800) gg.editAll("500000", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber("-298284466;-1.304566e23F", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-298284466", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99) gg.editAll("8", gg.TYPE_DWORD) gg.clearResults()