code1=gg.makeRequest("https://vpn.uibe.edu.cn/").content--抓包检测网站
if code1==nil then--判断当抓包后无法打开此网站则返回空值，没有网络也是返回空值
gg.alert("网络异常请关闭VPN如有需要请开启后再打开")--抓包后的提示
gg.alert("脚本中断")
os.exit()--结束脚本
end--结束if语句
Detection=function(Version,Number,Package)
Algorithm=1
if gg.VERSION== Version then 
Algorithm=Algorithm+1
else
print("未使用专用工具")
Algorithm=Algorithm+2
os.exit() 
end
if gg.BUILD == Number then 
Algorithm=Algorithm+1
else
print("未使用专用工具")
Algorithm=Algorithm+1
os.exit() 
end
if gg.PACKAGE== Package then
Algorithm=Algorithm+1
else
print("未使用专用工具")
Algorithm=Algorithm+1
os.exit() 
end
if Algorithm==4 then
mian()--脚本功能界面
end
if Algorithm==5 then
print("未使用专用工具")
Quit()
end
end
function Quit()
gg.alert("你以为能跳过吗,做你的春秋大梦去")
os.exit() 
end
function mian()
gg.alert("验证成功")
end
Detection('96.0','15993','com.tencent.news')--这里改成专属修改器的版本、版本号以及包名

abace993999008ce5953d301475f910a71=function (vip)
---[=[脚本可以复制到下面]=]-------------------------------------------------------------------------------------------------------------------
function SXY(Search, Write, Type)
  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
    do
      do
        for _FORV_10_, _FORV_11_ in ipairs(result) do
          _FORV_11_.isUseful = true
        end
      end
    end
    do
      do
        for _FORV_10_ = 2, #Search do
          local tmp = {}
          local offset = Search[_FORV_10_][2] - base
          local num = Search[_FORV_10_][1]
          do
            do
              for _FORV_17_, _FORV_18_ in ipairs(result) do
                tmp[#tmp + 1] = {}
                tmp[#tmp].address = _FORV_18_.address + offset
                tmp[#tmp].flags = _FORV_18_.flags
              end
            end
          end
          tmp = gg.getValues(tmp)
          do
            for _FORV_17_, _FORV_18_ in ipairs(tmp) do
              if tostring(_FORV_18_.value) ~= tostring(num) then
                result[_FORV_17_].isUseful = false
              end
            end
          end
        end
      end
    end
    do
      do
        for _FORV_10_, _FORV_11_ in ipairs(result) do
          if _FORV_11_.isUseful then
            data[#data + 1] = _FORV_11_.address
          end
        end
      end
    end
    if #data > 0 then
      local t = {}
      local base = Search[1][2]
      do
        do
          for _FORV_12_ = 1, #data do
            do
              for _FORV_16_, _FORV_17_ in ipairs(Write) do
                offset = _FORV_17_[2] - base
                t[#t + 1] = {}
                t[#t].address = data[_FORV_12_] + offset
                t[#t].flags = Type
                t[#t].value = _FORV_17_[1]
                if _FORV_17_[3] == true then
                  local item = {}
                  item[#item + 1] = t[#t]
                  item[#item].freeze = true
                  gg.addListItems(item)
                end
              end
            end
          end
        end
      end
      gg.setValues(t)
      gg.toast(Name .. "开启成功")
    else
      gg.toast("开启失败", false)
      return false
    end
  else
    gg.toast("开启失败", false)
    return false
  end
end

state={}
state.a='当前未开启'
state.b='当前未开启'
state.c='当前未开启'

function main()
FX=0
local main=gg.choice({'1.雷电模拟器','2.其他模拟器'},nil,'')
if main== 1 then TU=0 main1() end
if main== 2 then TU=1 main1() end
if main== nil then gg.toast('未选择') end
end
function main1()
FX=11

local sn=gg.choice({'『1.坐标地址获取』','『2.迷宫五十关』','『3.游戏加速』','『4.人物穿墙』'.. state.a,'『5.人物无敌秒杀』'..state.c ,'『6.远程英雄秒杀 [不要把能量消耗光] 』'.. state.b,'『7.刷首抽号』','『8.退出脚本』'},nil,"ㄨ加速，秒杀，穿墙在家园界面打开ㄨ\nㄨ关闭无敌秒杀需要退出游戏ㄨ\nㄨ请勿用于PVP.工会BOOS.稻草人等多人联机ㄨ\nㄨ穿墙在剧情主线请谨慎使用不然可能会造成剧情卡死，账号报废!!!ㄨ ")
if sn==1  then SN2()  end  
if sn==2  then SN3()  end
if sn==3  then SN4()  end
if sn==4  then SN5()  end
if sn==5  then SN6()  end
if sn==6  then SN7()  end
if sn==7  then SN8()  end
if sn==8 then gg.clearList() gg.clearResults()  os.exit() end
end

function SN2() --获取坐标地址
gg.clearResults()
if TU==0 then gg.setRanges(4) else gg.setRanges(32) end
gg.searchNumber(185.78839111328,16)
local count=gg.getResultCount()
if count==0 then gg.toast("获取坐标地址失败")  goto Label end
local accept=gg.getResults(count)

local array={}
local k
local k1
for i=1,count,1
  do
k=i+1
array[i]={}
array[i].address = accept[i].address+136
array[i].flags = 16

array[k]={}
array[k].address = accept[i].address+100
array[k].flags = 4
array=gg.getValues(array)
if array[i].value==60  then
k1=i
Coor   = accept[i].address+144
Coor_1 = accept[i].address+148
Coor_2 = accept[i].address+152
else if array[k].value==1022739087 then
k1=i
Coor   = accept[i].address+48
Coor_1 = accept[i].address+52
Coor_2 = accept[i].address+56 end end
 end
if k1==nil then gg.toast('获取失败') goto Label end
Coor16=string.format("%#x",Coor)
Coor_1_16=string.format("%#x",Coor_1)
Coor_2_16=string.format("%#x",Coor_2)
gg.toast("成功获取坐标地址")
gg.clearResults()
::Label::
end



function SN3()  --迷宫五十关
gg.clearResults()
if TU==0 then gg.setRanges(4) else gg.setRanges(32) end
local sn_8=gg.prompt({'现在是第几关(输入数字即可)'},{[1]=rue},{[1]='number'})
if sn_8 == nil  then  gg.toast('取消输入..')  goto LA end
if Coor == nil  then gg.toast('请先获取最新地址') goto LA end
sn_8=tonumber(sn_8[1])
rue =sn_8+1
mi_ii=1  
local array={}
for i=0,8,4 do
array[i]={}
array[i].address = Coor+i
array[i].flags = 16
array[i].value = mi_array_1[sn_8][mi_ii]
array[i].freeze = true 
mi_ii=mi_ii+1 
gg.addListItems(array) end
gg.clearResults()
gg.clearList()
::LA::
end


function SN4()  --加速
gg.clearResults()
if TU==0 then gg.setRanges(4) else gg.setRanges(32) end
local sn=gg.choice({'2倍数','3倍数','4倍数','6倍数','倍数恢复'})
local sn_1
if sn==1 then sn_1=1073741824 end
if sn==2 then sn_1=1077936128 end
if sn==3 then sn_1=1082130432 end
if sn==4 then sn_1=1086324736 end
if sn==5 then sn_1=1065353216 end
if sn== nil then gg.toast('未选择') goto Label end

if tep16~=nil then gg.searchAddress(tep16,FFFFFFFF,4)
gg.getResults(1)
if sn==5 then gg.editAll(1065353216,4) gg.toast('恢复成功') goto Label else gg.editAll(sn_1,4) 
gg.toast('开启成功') goto Label end end


gg.searchNumber('1065353216;1051372203;1022739087::9',4)
local count=gg.getResultCount()
if count==0 then gg.toast('开启失败') goto Label end

gg.searchNumber('1065353216')
local count=gg.getResultCount()
if count==0 then gg.toast('开启失败') goto Label end
gg.getResults(1)
local soc = gg.getResults(1)
local tep = soc[1].address
gg.editAll(sn_1,4)   
gg.toast('开启加速')
tep16=string.format("%#x",tep)
::Label::
end

function SN5()
gg.clearResults()
if state.a=='当前未开启' then 
    gg.setRanges(36)
    Name = "穿墙"
    local dataType = 4
    local tb1 = {
      {"1076887552", 0},
      {"1087373312", 4}
    }
    local tb2 = {
      {"1065353216", 8}
    }
    tep_5=SXY(tb1, tb2, dataType)
   if tep_5==nil then  state.a='已开启' end
    gg.clearResults()
else 
gg.setRanges(36)
    Name = "穿墙已关闭"
    local dataType = 4
    local tb1 = {
      {"1076887552", 0},
      {"1087373312", 4}
    }
    local tb2 = {
      {"954642381", 8}
    }
    tep_5=SXY(tb1, tb2, dataType)
    if tep_5==nil then state.a='当前未开启' end
    gg.clearResults()
end
end


function SN6() 
  gg.setRanges(16384)
  local dataType = 4
  Name = "无敌秒杀"
  local tb1 = {
    {"-481296383", 0},
    {"436207621", 4},
    {-509607930, 8}
  }
  local tb2 = {
    {"-443154396", 8},
    {-502265601, 12},
    {-476053504, 16},
    {329253650, 20}
  }
  tep_6=SXY(tb1, tb2, dataType)
  if tep_6==nil then state.c='已开启'  end
end




function SN8()
FX=7
local sn=gg.choice({'新手教程','地图6关','返回上一页'},nil,"")
if sn==1  then SN_8() end
if sn==2  then SN_9() end  
if sn==3  then main1() end
end

function SN_8()
FX=9
local sn=gg.choice({'箱子','剑','剧情','boss门口','返回上一页'})
if sn==1 then tep=boss_array_1 end
if sn==2 then tep=boss_array_2 end
if sn==3 then tep=boss_array_3 end
if sn==4 then tep=boss_array_4 end
if sn==5 then SN8() end
if Coor==nil then gg.toast('先获取地址') goto LA end
local array_1={}
local array_2={}
local array_3={}
for key,value in ipairs(tep)
do
array_1[1]={}
array_1[1].address = Coor
array_1[1].flags = 16
array_1[1].value = value[1]
array_1[1].freeze = true 

array_2[1]={}
array_2[1].address =Coor_1
array_2[1].flags = 16
array_2[1].value = value[2]
array_2[1].freeze = true 

array_3[1]={}
array_3[1].address =Coor_2
array_3[1].flags = 16
array_3[1].value = value[3]
array_3[1].freeze = true 
gg.addListItems(array_1)
gg.addListItems(array_2)
gg.addListItems(array_3)
end
gg.clearResults()
gg.clearList()
::LA::
end

function SN_9()
gg.clearResults()
if TU==0 then gg.setRanges(4) else gg.setRanges(32) end
sn_6=gg.prompt({'现在是第几关(输入数字即可)'},{[1]=rue},{[1]='number'})
if sn_6 == nil  then  gg.toast('取消输入..')  goto LA end
if Coor == nil  then gg.toast('请先获取最新地址') goto LA end
if sn_6[1] == '1' then tep=pao_array_1 end
if sn_6[1] == '2' then tep=pao_array_2 end
if sn_6[1] == '3' then tep=pao_array_3 end
if sn_6[1] == '4' then tep=pao_array_4 end
if sn_6[1] == '5' then tep=pao_array_5 end
if sn_6[1] == '6' then tep=pao_array_6 end
rue=sn_6[1]+1
local array_1={}
local array_2={}
local array_3={}
for key,value in ipairs(tep)
do
array_1[1]={}
array_1[1].address = Coor
array_1[1].flags = 16
array_1[1].value = value[1]
array_1[1].freeze = true 

array_2[1]={}
array_2[1].address =Coor_1
array_2[1].flags = 16
array_2[1].value = value[2]
array_2[1].freeze = true 

array_3[1]={}
array_3[1].address =Coor_2
array_3[1].flags = 16
array_3[1].value = value[3]
array_3[1].freeze = true 

gg.addListItems(array_1)
gg.addListItems(array_2)
gg.addListItems(array_3)
end
gg.clearResults()
gg.clearList()
::LA::
end

function SN7() 
 if state.b=='当前未开启' then 
  gg.setRanges(36)
  local dataType = 4
  Name = "远程英雄秒杀"
  local tb1 = {
    {'1117782016', 0},
    {'1056964608', 8} 
  }
  local tb2 = {
    {'1176255488',8}
  }
  tep_8=SXY(tb1, tb2, dataType)
  if tep_8==nil then state.b='已开启'  end
  gg.clearResults()
 else 
  gg.setRanges(36)
  local dataType = 4
  Name = "远程英雄秒杀"
  local tb1 = {
    {'1117782016', 0},
    {'1176255488', 8} 
  }
  local tb2 = {
    {'1056964608',8}
  }
  tep_8=SXY(tb1, tb2, dataType)
  if tep_8==nil then state.b='当前未开启' end
  gg.clearResults()
  end
end

function SN999()  --当前坐标获取
gg.clearResults()
if TU==0 then gg.setRanges(4) else gg.setRanges(32) end
if Coor == nil then gg.toast('先获取地址') goto LA end
local array={}
local o=0
for i=4,12,4
do
array[i]={}
array[i].address = Coor+o          
array[i].flags = 16
o=o+4
array=gg.getValues(array)
end
Coor_xva=array[4].value
Coor_zva=array[8].value
Coor_yva=array[12].value
gg.copyText(Coor_xva..";"..Coor_zva..";"..Coor_yva,false)
::LA::
end
--function coordinate()
mi_array_1={}
mi_array_1[1]={46.483123779296875,0.0,31.274999618530273} 
mi_array_1[2]={-83.71693420410156,0.0,-18.123409271240234} 
mi_array_1[3]={-0.5,0.0,-6.724974632263184}
mi_array_1[4]={5.3029937744140625,0.0,51.68927001953125}
mi_array_1[5]={92.2250747680664,0.0,0.5453549027442932} 
mi_array_1[6]={0.423518568277359,0.0,51.2750244140625}
mi_array_1[7]={37.225074768066406,0.0,-4.626740455627441}
mi_array_1[8]={16.38042449951172,0.0,-26.542024612426758} 
mi_array_1[9]={64.2250747680664,0.0,-0.8657037019729614} 
mi_array_1[10]={1.7749749422073364,0.0,40.38357162475586}
mi_array_1[11]={42.255699157714844,0.0,24.402246475219727}
mi_array_1[12]={56.277706146240234,0.0,-13.275074005126953}
mi_array_1[13]={0.7750000953674316,0.0,69.0489501953125}
mi_array_1[14]={40.727535247802734,0.0,9.465278625488281} 
mi_array_1[15]={0.23626849055290222,0.0,42.2750244140625} 
mi_array_1[16]={43.225074768066406,0.0,-30.921615600585938}
mi_array_1[17]={78.27530670166016,0.0,-1.274999976158142} 
mi_array_1[18]={-0.7749249935150146,0.0,30.725000381469727}
mi_array_1[19]={0.35602042078971863,0.0,53.2750244140625}
mi_array_1[20]={-0.7749249339103699,0.0,39.96367263793945}
mi_array_1[21]={61.49176025390625,0.0,20.21689796447754} 
mi_array_1[22]={1.7749749422073364,0.0,4.411355972290039}
mi_array_1[23]={12.225000381469727,0.0,-0.5894662737846375}
mi_array_1[24]={0.6162680983543396,0.0,57.2750244140625}
mi_array_1[25]={37.393043518066406,0.0,2.2750251293182373}
mi_array_1[26]={0.12695203721523285,0.0,24.59636878967285} 
mi_array_1[27]={0.6332962512969971,0.0,68.50662994384766}
mi_array_1[28]={45.77790451049805,0.0,46.9411735534668}
mi_array_1[29]={0.22507503628730774,0.0,3.2544243335723877}
mi_array_1[30]={0.7047597765922546,0.0,54.724998474121094}
mi_array_1[31]={0.49930617213249207,0.0,-11.7249755859375}
mi_array_1[32]={39.11793899536133,0.0,33.61993408203125} 
mi_array_1[33]={34.7359504699707,1.0,-47.27507781982422}
mi_array_1[34]={66.2250747680664,1.0,-2.2764477729797363} 
mi_array_1[35]={21.072715759277344,0.0,16.725000381469727}
mi_array_1[36]={-0.2250249683856964,1.0,-19.80937957763672}
mi_array_1[37]={44.09766387939453,0.0,14.6343355178833}
mi_array_1[38]={38.887718200683594,1.0,9.724925994873047} 
mi_array_1[39]={61.225074768066406,0.0,-2.397103786468506} 
mi_array_1[40]={0.8520105481147766,0.0,53.275001525878906} 
mi_array_1[41]={39.225074768066406,0.0,31.29052734375} 
mi_array_1[42]={0.029751863330602646,0.0,-14.275076866149902}
mi_array_1[43]={-6.551671028137207,0.0,0.5006255507469177}
mi_array_1[44]={0.7650162577629089,0.0,-35.96180725097656}
mi_array_1[45]={6.774974822998047,1.0,0.3608317971229553}
mi_array_1[46]={-0.7749249339103699,0.0,40.792938232421875} 
mi_array_1[47]={0.47240155935287476,0.0,63.275028228759766} 
mi_array_1[48]={6.224999904632568,0.0,20.402328491210938}
mi_array_1[49]={45.225074768066406,0.0,-9.77591609954834}
mi_array_1[50]={-0.3332003355026245,0.0,39.81493377685547}

pao_array_1={}
pao_array_1[1]={32.51811981201172,0.0,-1.8961087465286255}
pao_array_2={}
pao_array_2[1]={37.77077102661133,0.0,14.72545051574707}
pao_array_3={}
pao_array_3[1]={92.7999267578125,0.0,3.774549961090088}
pao_array_4={}
pao_array_4[1]={88.72517395019531,0.0,-36.27455139160156}
pao_array_5={}
pao_array_5[1]={69.72454833984375,0.0,-47.724998474121094}
pao_array_6={} 
pao_array_6[1]={27.224550247192383,0.0,-53.46083068847656}

boss_array_1={}
boss_array_1[1]={38.111080169677734,0.0,3.9973926544189453}
boss_array_2={}
boss_array_2[1]={62.3790397644043,0.0,6.258129596710205}
boss_array_3={}
boss_array_3[1]={122.77497100830078,0.0,3.0795228481292725}
boss_array_4={}
boss_array_4[1]={142.5506591796875,0.0,35.7259407043457}


while true do  
if gg.isVisible(true) then
   if FX==nil then FX=nil else if FX==0 then FX=nil end end
   if FX==1   then FX=2 end
   if FX==3   then FX=4 end
   if FX==5   then FX=6 end
   if FX==7   then FX=8 end
   if FX==9   then FX=10 end
   if FX==11  then FX=12 end
    gg.setVisible(false)
  end
  if FX == nil then main() end
  if FX == 2   then SN1()   end
  if FX == 4   then SN_1() end
  if FX == 6   then SN_2() end
  if FX == 8   then SN8() end
  if FX == 10  then SN_8() end
  if FX ==12   then main1()   end
end







---[=[上面可以复制上你的脚本]=]------------------------------------------------------------------------------------------------------------------- end-- ab80fff28ac9259a245266d5b0cc5575c7
end


function md5(code)    local code = tostring(code)    local HexTable = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"}    local A = 0x67452301    local B = 0xefcdab89    local C = 0x98badcfe    local D = 0x10325476    local S11 = 7    local S12 = 12    local S13 = 17    local S14 = 22                 local S21 = 5       local S22 = 9       local S23 = 14       local S24 = 20       local S31 = 4       local S32 = 11       local S33 = 16       local S34 = 23       local S41 = 6       local S42 = 10       local S43 = 15       local S44 = 21       local function F(x,y,z)         return (x & y) | ((~x) & z)       end       local function G(x,y,z)         return (x & z) | (y & (~z))       end       local function H(x,y,z)         return x ~ y ~ z       end       local function I(x,y,z)         return y ~ (x | (~z))       end       local function FF(a,b,c,d,x,s,ac)         a = a + F(b,c,d) + x + ac         a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b         return a & 0xffffffff       end       local function GG(a,b,c,d,x,s,ac)         a = a + G(b,c,d) + x + ac         a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b         return a & 0xffffffff       end       local function HH(a,b,c,d,x,s,ac)         a = a + H(b,c,d) + x + ac         a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b         return a & 0xffffffff       end       local function II(a,b,c,d,x,s,ac)         a = a + I(b,c,d) + x + ac         a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b         return a & 0xffffffff       end       local function MD5StringFill(s)         local len = s:len()         local mod512 = len * 8 % 512         local fillSize = (448 - mod512) // 8         if mod512 > 448 then           fillSize = (960 - mod512) // 8         end         local rTab = {}         local byteIndex = 1         for i = 1,len do           local index = (i - 1) // 4 + 1           rTab[index] = rTab[index] or 0           rTab[index] = rTab[index] | (s:byte(i) << (byteIndex - 1) * 8)           byteIndex = byteIndex + 1           if byteIndex == 5 then             byteIndex = 1           end         end         local b0x80 = false         local tLen = #rTab         if byteIndex ~= 1 then           rTab[tLen] = rTab[tLen] | 0x80 << (byteIndex - 1) * 8           b0x80 = true         end         for i = 1,fillSize // 4 do           if not b0x80 and i == 1 then             rTab[tLen + i] = 0x80            else             rTab[tLen + i] = 0x0           end         end         local bitLen = math.floor(len * 8)         tLen = #rTab         rTab[tLen + 1] = bitLen & 0xffffffff         rTab[tLen + 2] = bitLen >> 32         return rTab       end              function getmd5(s)         local fillTab = MD5StringFill(s)         local result = {A,B,C,D}         for i = 1,#fillTab // 16 do           local a = result[1]           local b = result[2]           local c = result[3]           local d = result[4]           local offset = (i - 1) * 16 + 1           a = FF(a, b, c, d, fillTab[offset + 0], S11, 0xd76aa478)           d = FF(d, a, b, c, fillTab[offset + 1], S12, 0xe8c7b756)           c = FF(c, d, a, b, fillTab[offset + 2], S13, 0x242070db)           b = FF(b, c, d, a, fillTab[offset + 3], S14, 0xc1bdceee)           a = FF(a, b, c, d, fillTab[offset + 4], S11, 0xf57c0faf)           d = FF(d, a, b, c, fillTab[offset + 5], S12, 0x4787c62a)           c = FF(c, d, a, b, fillTab[offset + 6], S13, 0xa8304613)           b = FF(b, c, d, a, fillTab[offset + 7], S14, 0xfd469501)           a = FF(a, b, c, d, fillTab[offset + 8], S11, 0x698098d8)           d = FF(d, a, b, c, fillTab[offset + 9], S12, 0x8b44f7af)           c = FF(c, d, a, b, fillTab[offset + 10], S13, 0xffff5bb1)           b = FF(b, c, d, a, fillTab[offset + 11], S14, 0x895cd7be)           a = FF(a, b, c, d, fillTab[offset + 12], S11, 0x6b901122)           d = FF(d, a, b, c, fillTab[offset + 13], S12, 0xfd987193)           c = FF(c, d, a, b, fillTab[offset + 14], S13, 0xa679438e)           b = FF(b, c, d, a, fillTab[offset + 15], S14, 0x49b40821)           a = GG(a, b, c, d, fillTab[offset + 1], S21, 0xf61e2562)           d = GG(d, a, b, c, fillTab[offset + 6], S22, 0xc040b340)           c = GG(c, d, a, b, fillTab[offset + 11], S23, 0x265e5a51)           b = GG(b, c, d, a, fillTab[offset + 0], S24, 0xe9b6c7aa)           a = GG(a, b, c, d, fillTab[offset + 5], S21, 0xd62f105d)           d = GG(d, a, b, c, fillTab[offset + 10], S22, 0x2441453)           c = GG(c, d, a, b, fillTab[offset + 15], S23, 0xd8a1e681)           b = GG(b, c, d, a, fillTab[offset + 4], S24, 0xe7d3fbc8)           a = GG(a, b, c, d, fillTab[offset + 9], S21, 0x21e1cde6)           d = GG(d, a, b, c, fillTab[offset + 14], S22, 0xc33707d6)           c = GG(c, d, a, b, fillTab[offset + 3], S23, 0xf4d50d87)           b = GG(b, c, d, a, fillTab[offset + 8], S24, 0x455a14ed)           a = GG(a, b, c, d, fillTab[offset + 13], S21, 0xa9e3e905)           d = GG(d, a, b, c, fillTab[offset + 2], S22, 0xfcefa3f8)           c = GG(c, d, a, b, fillTab[offset + 7], S23, 0x676f02d9)           b = GG(b, c, d, a, fillTab[offset + 12], S24, 0x8d2a4c8a)           a = HH(a, b, c, d, fillTab[offset + 5], S31, 0xfffa3942)           d = HH(d, a, b, c, fillTab[offset + 8], S32, 0x8771f681)           c = HH(c, d, a, b, fillTab[offset + 11], S33, 0x6d9d6122)           b = HH(b, c, d, a, fillTab[offset + 14], S34, 0xfde5380c)           a = HH(a, b, c, d, fillTab[offset + 1], S31, 0xa4beea44)           d = HH(d, a, b, c, fillTab[offset + 4], S32, 0x4bdecfa9)           c = HH(c, d, a, b, fillTab[offset + 7], S33, 0xf6bb4b60)           b = HH(b, c, d, a, fillTab[offset + 10], S34, 0xbebfbc70)           a = HH(a, b, c, d, fillTab[offset + 13], S31, 0x289b7ec6)           d = HH(d, a, b, c, fillTab[offset + 0], S32, 0xeaa127fa)           c = HH(c, d, a, b, fillTab[offset + 3], S33, 0xd4ef3085)           b = HH(b, c, d, a, fillTab[offset + 6], S34, 0x4881d05)           a = HH(a, b, c, d, fillTab[offset + 9], S31, 0xd9d4d039)           d = HH(d, a, b, c, fillTab[offset + 12], S32, 0xe6db99e5)           c = HH(c, d, a, b, fillTab[offset + 15], S33, 0x1fa27cf8)           b = HH(b, c, d, a, fillTab[offset + 2], S34, 0xc4ac5665)           a = II(a, b, c, d, fillTab[offset + 0], S41, 0xf4292244)           d = II(d, a, b, c, fillTab[offset + 7], S42, 0x432aff97)           c = II(c, d, a, b, fillTab[offset + 14], S43, 0xab9423a7)           b = II(b, c, d, a, fillTab[offset + 5], S44, 0xfc93a039)           a = II(a, b, c, d, fillTab[offset + 12], S41, 0x655b59c3)           d = II(d, a, b, c, fillTab[offset + 3], S42, 0x8f0ccc92)           c = II(c, d, a, b, fillTab[offset + 10], S43, 0xffeff47d)           b = II(b, c, d, a, fillTab[offset + 1], S44, 0x85845dd1)           a = II(a, b, c, d, fillTab[offset + 8], S41, 0x6fa87e4f)           d = II(d, a, b, c, fillTab[offset + 15], S42, 0xfe2ce6e0)           c = II(c, d, a, b, fillTab[offset + 6], S43, 0xa3014314)           b = II(b, c, d, a, fillTab[offset + 13], S44, 0x4e0811a1)           a = II(a, b, c, d, fillTab[offset + 4], S41, 0xf7537e82)           d = II(d, a, b, c, fillTab[offset + 11], S42, 0xbd3af235)           c = II(c, d, a, b, fillTab[offset + 2], S43, 0x2ad7d2bb)           b = II(b, c, d, a, fillTab[offset + 9], S44, 0xeb86d391)           result[1] = result[1] + a           result[2] = result[2] + b           result[3] = result[3] + c           result[4] = result[4] + d           result[1] = result[1] & 0xffffffff           result[2] = result[2] & 0xffffffff           result[3] = result[3] & 0xffffffff           result[4] = result[4] & 0xffffffff         end         local retStr = ''         for i = 1,4 do           for _ = 1,4 do             local temp = result[i] & 0x0F             local str = HexTable[temp + 1]             result[i] = result[i] >> 4             temp = result[i] & 0x0F             retStr = retStr .. HexTable[temp + 1] .. str             result[i] = result[i] >> 4           end         end         return string.lower(retStr)       end       return getmd5(code)     end
--md5加密 md5("加密内容")

ZZRc4 = {} 
ZZMathBit = {} 
function ZZMathBit.__xorBit(left, right)       return (left + right) == 1 and 1 or 0 end function ZZMathBit.__base(left, right, op)       if left < right then           left, right = right, left       end       local res = 0       local shift = 1       while left ~= 0 do           local ra = left % 2           local rb = right % 2           res = shift * op(ra,rb) + res           shift = shift * 2           left = math.modf( left / 2)           right = math.modf( right / 2)       end       return res end function ZZMathBit.xorOp(left, right)       return ZZMathBit.__base(left, right, ZZMathBit.__xorBit) end function RC4(text,key,kasi)
if kasi==false then      str = text      str=str:gsub("[%s%p]",""):upper()       local index=1       local ret=""       for index=1,str:len(),2 do         ret=ret..string.char(tonumber(str:sub(index,index+1),16))       end       text=ret     end          local function KSA(key)           local keyLen = string.len(key)           local schedule = {}           local keyByte = {}           for i = 0, 255 do               schedule[i] = i           end              for i = 1, keyLen do               keyByte[i - 1] = string.byte(key, i, i)           end              local j = 0           for i = 0, 255 do               j = (j + schedule[i] + keyByte[ i % keyLen]) % 256               schedule[i], schedule[j] = schedule[j], schedule[i]           end           return schedule       end          local function PRGA(schedule, textLen)           local i = 0           local j = 0           local k = {}           for n = 1, textLen do               i = (i + 1) % 256               j = (j + schedule[i]) % 256               schedule[i], schedule[j] = schedule[j], schedule[i]               k[n] = schedule[(schedule[i] + schedule[j]) % 256]           end           return k       end          local function output(schedule, text)           local len = string.len(text)           local c = nil           local res = {}           for i = 1, len do               c = string.byte(text, i,i)               res[i] = string.char(ZZMathBit.xorOp(schedule[i], c))           end           return table.concat(res)       end          local textLen = string.len(text)       local schedule = KSA(key)       local k = PRGA(schedule, textLen)          str=output(k, text) if kasi==true then       str = tostring(str)       local index=1       local ret=""       for index=1,str:len() do         ret=ret..string.format("%02X",str:sub(index):byte())       end       return string.lower(ret) else     return str end end 
--极简云RC42加密和解密配置     RC4("加密内容","密码",false=解密_true=加密)

function ultra(get,post)    local c=gg.makeRequest(get,nil,post).content     return c  end 
--请求

---[=[上面不要乱动]=]-------------------------------------------------------------------------------------------------------------------


function cu()
x={
"https://cute521.cn",
}

uio=gg.makeRequest(x[1]).content
if uio==nil then
gg.alert("网络错误")--提示
else

if uio=="欢迎使用！" then
oqvqo(x[1])
else
gg.alert("网络错误,可能是被攻击了！")--提示
end

end

end

---[=[  ↑检测网络  ]=]-------------------------------------------------------------------------------------------------------------------

xxxxxxx=""
function oqvqo(xxxxxxx)
local xxxxxxx_Kami=xxxxxxx.."/api.php?api=kmlogon"
--接口名称[卡密登录]

local xxxxxxx_jieba=xxxxxxx.."/api.php?api=kmunmachine"
--接口名称[卡密解绑]

local xxxxxxx_to_configure=xxxxxxx.."/api.php?api=ini"
--接口名称[应用配置]

local xxxxxxx_Notice=xxxxxxx.."/api.php?api=notice"
--接口名称[应用公告]

local xxxxxxx_RC4=true
--是否 RC4 加密[false=关 true=开] 
--选择 RC4加密-2 否则会乱码 
--打开 签名放DATA里:打开


local xxxxxxx_APPID="11007"
--APPID

local xxxxxxx_APPKEY="mZZxxd6mD4565kzI"
--APPKEY

local xxxxxxx_RC4_key="Bpu17QONUBU4H74y"
--是否 RC4 加密[key 密钥]


local xxxbanb="1.0"
--1.0

local xxxQQ=""
--作者QQ


if xxxxxxx_APPID=="" or xxxxxxx_RC4_key=="" or xxxxxxx_APPKEY=="" then
gg.alert("关键东西没填，运行啥啊？")--对话框
os.exit() 
end


FILES_DIR="/sdcard/Android/"
--卡密 设备码 路径


---[=[   ↑配置  ]=]-------------------------------------------------------------------------------------------------------------------

Notice=ultra(xxxxxxx_Notice.."&app=".. xxxxxxx_APPID,"")

No=Notice:match('"code":(.-),')
if  No ~= nil then 
No=Notice:match('"msg":"(.-)",')
if No==nil then
xxxxxxx_RC4=false--判定是否关闭
else
gg.alert("公告接口："..No)--对话框
os.exit() 
end
end

if  xxxxxxx_RC4 == true then 
Notice=RC4(Notice,xxxxxxx_RC4_key,false) 
end


Notice=Notice:match('"app_gg":"(.-)"},')--获取公告
if Notice==nil then
No=Notice:match('"code":(.-),')
if  No ~= nil then 
No=Notice:match('"msg":"(.-)",')
if No==nil then
xxxxxxx_RC4=false--判定是否关闭
else
gg.alert("公告接口："..No)--对话框
os.exit() 
end
end

else
if Notice~="" then
gg.alert(Notice,"确定")--对话框
end
end

---[=[上面是公告]=]-------------------------------------------------------------------------------------------------------------------

fanhui="无法获取"
gongxing=ultra(xxxxxxx_to_configure.."&app=".. xxxxxxx_APPID,"")


No=gongxing:match('"code":(.-),')
if  No ~= nil then 
No=gongxing:match('"msg":"(.-)",')
if No==nil then
xxxxxxx_RC4=false--判定是否关闭
else
gg.alert("应用配置接口："..No)--对话框
os.exit() 
end
end

if  xxxxxxx_RC4 == true then 
gongxing=RC4(gongxing,xxxxxxx_RC4_key,false) 
end

xxxxbanben=gongxing:match('"version":"(.-)",')--获取版本号
xxxxgxnr=gongxing:match('app_update_show":"(.-)",')--更新内容
xxxxlianjie=gongxing:match('app_update_url":"(.-)","app_update_must')--更新链接
xxcisu=gongxing:match('"api_total":"(.-)"}')--启动次数

if gongxing==nil then

No=gongxing:match('"code":(.-),')
if  No ~= nil then 
No=gongxing:match('"msg":"(.-)",')
if No==nil then
xxxxxxx_RC4=false--判定是否关闭
else
gg.alert("应用配置接口："..No)--对话框
os.exit() 
end
end

else

if xxxxbanben==xxxbanb then
gg.toast("最新版本")--提示 
else
if xxxxlianjie=="未提交URL" then
print("\n没有要更新的链接\n请联系作者:"..xxxQQ)
os.exit() 
end
bhh=gg.alert("发现新版本，请更新内容 ","开始下载","浏览器更新")--对话框

if xxxxbanben == xxxbanb then

xxxxlianjie=gg.makeRequest(xxxxlianjie).content
io.open("/storage/emulated/0/最新版本.lua","w+"):write(xxxxlianjie)--写
gg.setVisible(true)
print("---[=[ 下载成功]=]---------------\n\n[新版本]:\n"..xxxxbanben.."\n\n[更新内容]:\n"..xxxxgxnr.."\n\n[新脚本路径]:\n/storage/emulated/0/最新版本.lua\n")--打印
 elseif bhh == 2 then
gg.setVisible(true)
print("\n[新版本]:\n"..xxxxbanben.."\n\n[更新内容]:\n"..xxxxgxnr.."\n\n[更新链接]:\n"..xxxxlianjie)--打印 end
os.exit() 
end
end

end
---[=[获取更新↑]=]-------------------------------------------------------------------------------------------------------------------


function yanzzzzz(km,sbm)

key=md5("kami="..km.."&markcode="..sbm.."&t="..os.time().."&".. xxxxxxx_APPKEY)
--计算签名

Random=md5(RC4(os.time().."极简云",xxxxxxx_RC4_key,true)..xxxxxxx_APPKEY..sbm)
--随机[用来计算是否相等]

bops="kami="..km.."&markcode="..sbm.."&t="..os.time().."&sign="..key
--需要请求的数据

if  xxxxxxx_RC4 == true then
bops="data="..RC4(bops,xxxxxxx_RC4_key,true)
end-- 把请求数据用RC4加密

HUT=ultra(xxxxxxx_Kami.."&app=".. xxxxxxx_APPID,bops.."&value="..Random)
--请求数据


if HUT~=nil then
if  xxxxxxx_RC4 == true then
HUT=RC4(HUT,xxxxxxx_RC4_key,false) 
end-- 把返回的数据用RC4解密

qued=HUT:match('code":(.-),')--获取编号 200是成功
vip=HUT:match('vip":"(.-)"},')--获取 卡密时间
yanzen=HUT:match('check":"(.-)"')--获取随机值
tinme=HUT:match('time":(.-),')--获取时间搓
fanhui=HUT:match('msg":"(.-)",')--获取错误

if qued~="200" then
gg.alert(fanhui)--返回错误
io.open(FILES_DIR.."/km","w"):write("")--写
else

if yanzen~=md5(tinme..xxxxxxx_APPKEY..Random) then
gg.setVisible(false)
gg.toast("\n️(▔_▔) 请不要修改数据！")
else--网络数据是否修改

gg.setVisible(false)
vip1=os.date("%Y".."年".."%m".."月".."%d".."日".."\r".."%H".."时".."%M".."分".."%S".."秒\n",vip)
io.open(FILES_DIR.."/km","w"):write(km)--写
vip1=''
kll=gg.alert("\n登入成功\n如要解绑请按返回"..vip1,"进入","返回")--提示--获取到期时间
if kll==2 then
io.open(FILES_DIR.."/lko","w"):write("false")--写
oqvqo(xxxxxxx)
end


abace993999008ce5953d301475f910a71(vip)--
--登入成功后的动作------------------------------------------------------------------------------------------------------------------


end
end
else
gg.setVisible(false)
gg.toast("\n️(▔_▔) 请检查网络！")
end

end


---[=[  卡密登入↑ ]=]-------------------------------------------------------------------------------------------------------------------

function jiebang(km,sbm)
gg.setVisible(false)
key=md5("kami="..km.."&markcode="..sbm.."&t="..os.time().."&".. xxxxxxx_APPKEY)

bops="kami="..km.."&markcode="..sbm.."&t="..os.time().."&sign="..key

if  xxxxxxx_RC4 == true then
bops= "data="..RC4(bops,xxxxxxx_RC4_key,true) 
end


HUT=ultra(xxxxxxx_jieba.."&app=".. xxxxxxx_APPID,bops)

if  xxxxxxx_RC4 == true then
HUT=RC4(HUT,xxxxxxx_RC4_key,false) 
end-- xxxxxxx_Base64

qued=HUT:match('code":(.-),')
fanhui=HUT:match('msg":"(.-)",')
yanzen=HUT:match('check":"(.-)"')
tinme=HUT:match('time":(.-),')
gg.toast(fanhui)

end

---[=[  解绑卡密↑ ]=]-------------------------------------------------------------------------------------------------------------------



rq=os.date("%Y".."年".."%m".."月".."%d".."日".." ".."%H".."时".."%M".."分".."%S".."秒")
local a={}
fien={io.open(FILES_DIR.."/km","r"),io.open(FILES_DIR.."/miux","r"),io.open(FILES_DIR.."/lko","r")}

if fien[1]==nil then
io.open(FILES_DIR.."/km","w"):write("")--写
a[1]=io.open(FILES_DIR.."/km","r"):read("*a")--读
else
a[1]=io.open(FILES_DIR.."/km","r"):read("*a")--读
end--fien[1]--卡密

if fien[2]==nil then
io.open(FILES_DIR.."/miux","w"):write(md5(rq))--写
a[2]=io.open(FILES_DIR.."/miux","r"):read("*a")--读
else
a[2]=io.open(FILES_DIR.."/miux","r"):read("*a")--读
end--fien[2]--机器码

fien2=io.open(FILES_DIR.."/miux","r"):read("*a")--读
if fien2=="" then
io.open(FILES_DIR.."/miux","w"):write(md5(rq))--写
fien2=io.open(FILES_DIR.."/miux","r"):read("*a")--读
a[2]=fien2
end

if fien[3]==nil then
io.open(FILES_DIR.."/lko","w"):write("false")--写
a[3]=io.open(FILES_DIR.."/lko","r"):read("*a")--读
else
a[3]=io.open(FILES_DIR.."/lko","r"):read("*a")--读
end--fien[2]--机器码

fien3=io.open(FILES_DIR.."/lko","r"):read("*a")--读
if fien3=="" then
io.open(FILES_DIR.."/lko","w"):write("false")--写
fien3=io.open(FILES_DIR.."/lko","r"):read("*a")--读
a[3]=fien3
end

sbm=a[2]--设备码
km=a[1]--卡密

--判定自动登入
if a[3]=="true" then
a[3]=true
elseif a[3]=="false" then
a[3]=false
end



if a[3]==true then
yanzzzzz(a[1],sbm)
end

rq=''
hak=gg.prompt({
'[输入: 1 开始解绑卡密]\n'..rq.."请输入卡密：",
"[自动登入]"
},{
km,
a[3]
},{
'text',--文字
'checkbox',--多选
})--文本功能



if hak==nil then
gg.setVisible(false)
gg.toast("取消……")--提示
elseif hak[1]=="1" then---[=[ ↓解绑  ]=]-------------------------------------------------------------------------------------------------------------------

gg.toast("开始解绑卡密……")--提示
hak2=gg.prompt({
''..rq.."\n请输入解绑卡密："
},{
},{
'text',--文字
})--文本功能

if hak2==nil then
gg.setVisible(false)
gg.toast("取消……")--提示
else
jiebang(hak2[1],sbm)
---[=[  ↑ 输入卡密跳转解绑卡密  ]=]-------------------------------------------------------------------------------------------------------------------
end

elseif hak[1]=="2" then ---[=[  ↓ 邮箱反馈 ]=]-------------------------------------------------------------------------------------------------------------------
if xxxQQ=="" then
gg.alert("作者没有填写QQ")
else

b=gg.prompt({
"联系方式(QQ或网名,手机号等)",
"反馈内容",
"取消就是[返回主页面]",
},{
"",
"",
true
},{
'text',
'text',
'checkbox',
})

if b ==nil then
gg.setVisible(false)
gg.toast("取消……")--提示
else


if b[1] ~= "" then
if b[2] ~= "" then
bh="&name="..b[1].."&certno="..b[2]
b=gg.makeRequest(xxxxxxx.."/api/mail/api.php?address="..xxxQQ.."@qq.com"..bh)
if b.code=="200" then
gg.alert("反馈成功[谢谢你的支持]")
else
gg.alert("反馈失败")
end
else
gg.alert("空内容")
end
else
gg.alert("空联系方式")
end
end
end
---[=[ ↘你们可以自己加购卡 加群什么的  ]=]-------------------------------------------------------------------------------------------------------------------
--elseif hak[1]=="3" then 输入3 干啥干啥





else---[=[  ↓卡密登入  ]=]-------------------------------------------------------------------------------------------------------------------

if hak[2]==true then
io.open(FILES_DIR.."/lko","w"):write("true")--写
elseif hak[2]==false then
io.open(FILES_DIR.."/lko","w"):write("false")--写
end

yanzzzzz(hak[1],sbm)
---[=[  ↑ 输入卡密跳转登入卡密  ]=]-------------------------------------------------------------------------------------------------------------------
end

end


while true do
  if gg.isVisible(true) then
  cu()
  end
end
