fa编辑器的字符串解密函数

吴统威 on 编程语言 HTML/CSS/JAVASCRIPT | 2020-04-05 15:01:28.0

字符串的解密过程还是有一定的味道。

测试字符串: ziRA1E3B9pA5B-11D-11xg1A3ZB5D1D4B-11ED2EG2pdeoC1clIH4wB-22yQD5uF4YE3E3A9==

function parseSingleChar(e) {
  for (var t = e.toString(), n = 0, r = 0; r < t.length; r++)
    n += parseInt(t.charAt(r), 10)
  return 10 < n ? (n % 9) + 1 : n
}
function parseCalc(e, t, n) {
  for (var r = Math.abs(n); 0 < r--; ) e -= t
  return n < 0 && (e += 123), e
}

function decode(e) {
  if (!e) return e
  for (
    var t = '',
      n = 'charCodeAt',
      r = 'fromCharCode',
      a = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'.indexOf(
        e[0]
      ),
      o = 1;
    o < e.length - 2;
    o++
  ) {
    for (
      var i = parseSingleChar(++a), s = e[n](o), l = '';
      /[0-9-]/.test(e[o + 1]);

    )
      l += e[++o]
    ;(s = parseCalc(s, i, (l = parseInt(l, 10) || 0))),
      (s ^= (a - 1) & 31),
      (t += String[r](s)) 
  }

   

  return t
}