Пытаюсь узнать, что делает какой-то код (Lua) - PullRequest
0 голосов
/ 12 июня 2018

Что делает этот код?Это все Lua для World of Warcraft 3.5.5

function __(r) local d = string.sub(r,0x0001,string.len(r)-0x0040) local k = string.sub(r,string.len(r)-0x003F, string.len(r)) d = string.gsub(d, '[^'..k..'=]', '') return (d:gsub('.', function(x) if (x == '=') then return '' end local r,f='',(k:find(x)-1) for i=6,1,-1 do r=r..(f%2^i-f%2^(i-1)>0 and '1' or '0') end return r; end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x) if (#x ~= 8) then return '' end local c=0 for i=1,8 do c=c+(x:sub(i,i)=='1' and 2^(8-i) or 0) end return string.char(c) end)) end _={_=_G} _._["\108\111\097\100\115\116\114\105\110\103"](_._["\095\095"]("SuperLongStringThatWasRemovedForPrivacyReasons"))()

Теперь я предполагаю, что это какой-то зашифрованный код или что-то в этом роде?Я не совсем уверен.Что вы, ребята, думаете, что это?/ Вы знаете, что будет делать этот код при запуске?

ПРИМЕЧАНИЕ: действительно длинная строка ... действительно длинная.Это около 150000 символов в длину.

1 Ответ

0 голосов
/ 12 июня 2018

Код эквивалентен

loadstring(
   decode_from_base64(
      ("SuperLongStringThatWasRemovedForPrivacyReasons"):sub(1, -65)
   )
)()

Итак, SuperLongStringThatWasRemovedForPrivacyReasons на самом деле является программой Lua в кодировке base-64 (программа может быть источником Lua или байт-кодом Lua).
Вы можете легко декодировать еесами, есть много онлайн-декодеров Base-64.

...