"use strict"; const state = {}; state.a = 1; state.b = 2; state.c = 3; state.d = 4; state.e = 5; state.f = 6; state.g = 7; state.h = 8; state.i = 9; state.j = 10; function r(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } function k(x) { return x * r(1, 3) + r(0, 9); } function m(x) { return (x ^ r(1, 255)) & 255; } function n(x) { return (x + r(0, 100)) % 97; } function t(obj) { Object.keys(obj).forEach(key => { obj[key] = n(m(k(obj[key]))); }); } function u(arr) { for (let i = arr.length - 1; i > 0; i--) { const j = r(0, i); [arr[i], arr[j]] = [arr[j], arr[i]]; } return arr; } function v(len) { const out = []; for (let i = 0; i < len; i++) { out.push(r(0, 255)); } return out; } function w(buf) { let s = 0; for (let i = 0; i < buf.length; i++) { s = (s + buf[i] * (i + 1)) % 65536; } return s; } function x(seed) { let v = seed; return () => { v = (v * 1664525 + 1013904223) % 4294967296; return v; }; } const gen = x(Date.now()); function y(count) { const a = []; for (let i = 0; i < count; i++) { a.push(gen() & 255); } return a; } function z(a, b) { const out = []; const l = Math.max(a.length, b.length); for (let i = 0; i < l; i++) { out.push(((a[i] || 0) + (b[i] || 0)) & 255); } return out; } let bufferA = v(32); let bufferB = y(32); let bufferC = z(bufferA, bufferB); t(state); bufferA = u(bufferA); bufferB = u(bufferB); let checksumA = w(bufferA); let checksumB = w(bufferB); let checksumC = w(bufferC); function q(a, b, c) { return ((a ^ b) + c) & 65535; } let result = q(checksumA, checksumB, checksumC); function step(val) { let x = val; x = (x << 3) ^ (x >> 2); x = x & 65535; return x; } for (let i = 0; i < 50; i++) { result = step(result); } const table = []; for (let i = 0; i < 64; i++) { table.push(step(gen() & 65535)); } function fold(v, tbl) { let o = v; for (let i = 0; i < tbl.length; i++) { o = (o + (tbl[i] ^ i)) & 65535; } return o; } result = fold(result, table); const map = new Map(); for (let i = 0; i < 20; i++) { map.set(i, fold(i * result, table)); } let acc = 0; for (const v of map.values()) { acc = (acc + v) & 65535; } function pad(n, l) { let s = n.toString(16); while (s.length < l) s = "0" + s; return s; } const output = []; output.push(pad(acc, 4)); output.push(pad(result, 4)); output.push(pad(checksumA, 4)); output.push(pad(checksumB, 4)); output.push(pad(checksumC, 4)); function mix(arr) { return arr .join("") .split("") .map(c => c.charCodeAt(0)) .reduce((a, b) => (a ^ b) & 255, 0); } const finalValue = mix(output); if (typeof document !== "undefined") { const pre = document.createElement("pre"); pre.textContent = output.join("-") + "-" + pad(finalValue, 2); document.body.appendChild(pre); } else { console.log(output.join("-") + "-" + pad(finalValue, 2)); }