Skip to content

diep.io now checks the stack trace of exceptions to detect userscripts #78

@Cazka

Description

@Cazka

The game loads a javascript that is executed as a bookmark
Image

This is the obfuscated version:

void (function () {
  var bU = P;
  (function (m, N) {
    var bc = P,
      t = m();
    while (!![]) {
      try {
        var n =
          (parseInt(bc(0x1a8)) / (-0x1e57 + -0x20fe + 0x5c2 * 0xb)) *
            (parseInt(bc(0x16e)) / (0x2035 + 0x2462 + -0x61 * 0xb5)) +
          (parseInt(bc(0x126)) /
            (0x595 * 0x5 + -0x1 * 0x22be + -0x2 * -0x36c)) *
            (parseInt(bc(0x173)) / (-0xc47 + 0xb5b + 0xf0)) +
          (-parseInt(bc(0x188)) / (-0x13c1 + 0x29 * 0x15 + 0x1069)) *
            (-parseInt(bc(0x150)) / (-0x1807 * 0x1 + 0xcc5 + 0xb48)) +
          (-parseInt(bc(0x19c)) / (-0x51e * 0x5 + 0xa3 * 0x3b + -0xbf4)) *
            (-parseInt(bc(0x160)) / (0xbc8 + -0x1348 + -0x3c4 * -0x2)) +
          (-parseInt(bc(0x192)) / (0x3b4 + 0xa54 + -0xdff)) *
            (-parseInt(bc(0x182)) / (-0x564 + -0x1ea4 + 0x1 * 0x2412)) +
          (-parseInt(bc(0x157)) / (-0xaf * 0x21 + -0xf74 + 0x260e * 0x1)) *
            (parseInt(bc(0x1a0)) / (-0x2239 + 0x1 * 0x2b6 + 0x1f8f)) +
          (parseInt(bc(0x184)) / (-0x1b70 + 0xe * 0x171 + -0x1 * -0x74f)) *
            (-parseInt(bc(0x129)) /
              (-0x3 * 0xda + -0x12 * -0xe6 + -0x7 * 0x1f0));
        if (n === N) break;
        else t["push"](t["shift"]());
      } catch (a) {
        t["push"](t["shift"]());
      }
    }
  })(b, 0x2 * -0x8dc19 + -0x144fcf + 0x33b75b);
  function B(N, t) {
    var bJ = P,
      n = {};
    (n[bJ(0x14e)] = bJ(0x140)),
      (n["\\x65\\x59\\x79\\x48\\x55"] = function (Q, S) {
        return Q & S;
      }),
      (n[bJ(0x19d)] = function (Q, S) {
        return Q !== S;
      }),
      (n["\\x55\\x72\\x61\\x65\\x4c"] = bJ(0x156)),
      (n[bJ(0x191)] = bJ(0x132)),
      (n[bJ(0x193)] = function (Q, S) {
        return Q << S;
      }),
      (n["\\x43\\x54\\x49\\x58\\x6f"] = function (Q, S) {
        return Q % S;
      });
    var a = n,
      L = Math["\\x61\\x62\\x73"](
        String["\\x66\\x72\\x6f\\x6d\\x43" + bJ(0x13e) + "\\x64\\x65"](
          0x2b6 * -0x2 + 0x1c7d + -0x16ab * 0x1
        )
      ),
      C = [
        a[bJ(0x14e)],
        -(-0x74e * -0x2 + -0x21b3 + 0x2239),
        -0x3 * 0x1229 + 0xb39 + 0x2d6 * 0x1d,
      ][bJ(0x158)](
        -0x247c * -0x1 + 0x2f6 + 0x12 * -0x231,
        -0x267e + -0xff * -0x5 + 0x2184
      );
    try {
      var y = a[bJ(0x1a2)](
        -0x1 * 0x41b + 0x357f + -0x1446,
        String[bJ(0x148) + bJ(0x13e) + "\\x64\\x65"](0xe21 + 0x1422 + -0x21d3)
      );
    } catch (Q) {}
    try {
      if (
        a["\\x52\\x6f\\x4d\\x47\\x61"](
          a["\\x55\\x72\\x61\\x65\\x4c"],
          a[bJ(0x191)]
        )
      )
        var d = bJ(0x172) + bJ(0x197);
      else var Z = 0x1 * 0x2615 + -0x1 * 0x11f + -0x21cd + 0.6100000000000136;
    } catch (Z) {}
    return (
      (-0x1ab4 + 0x2e9c + -0xc01 * -0x1) <<
      (a[bJ(0x19d)](
        Math["\\x72\\x6f\\x75\\x6e\\x64"](
          String[bJ(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
            0x352 * 0xa + -0x365 + -0x1d83
          )
        ),
        a[bJ(0x193)](
          0x2 * 0x61f + -0x6 * -0x64d + 0xa * -0x4b3 + 0.2759999999999536,
          String["\\x66\\x72\\x6f\\x6d\\x43" + bJ(0x13e) + "\\x64\\x65"](
            0xcff * -0x1 + 0x1ea9 + -0x1131
          )
        )
      )
        ? Math[bJ(0x152)](
            a["\\x43\\x54\\x49\\x58\\x6f"](
              -0x412 * 0x2 + -0x236 + -0x905 * -0x3,
              -(-0x6f * -0x11 + 0x11 * -0x97 + 0x4bd)
            )
          )
        : Math["\\x65\\x78\\x70"](
            String[bJ(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
              -0x251 * -0x6 + -0xc5 * -0x3 + -0xfe9
            )
          ))
    );
  }
  function R(N, t) {
    var bq = P,
      n = {};
    (n["\\x68\\x43\\x6a\\x49\\x6e"] = function (Z, o) {
      return Z / o;
    }),
      (n[bq(0x177)] = bq(0x138) + "\\x44\\x41"),
      (n[bq(0x18e)] = function (Z, o) {
        return Z % o;
      }),
      (n[bq(0x131)] = function (Z, o) {
        return Z !== o;
      }),
      (n[bq(0x12a)] = function (Z, o) {
        return Z | o;
      }),
      (n[bq(0x13a)] = function (Z, o) {
        return Z << o;
      }),
      (n[bq(0x139)] = "\\x4f\\x63\\x4c\\x36\\x32" + "\\x72\\x79\\x66\\x76");
    var a = n;
    for (
      var L = 0x1f7 * 0x1 + 0x1 * -0x1ec5 + 0x1cce;
      L < 0x5e8 * -0x3 + -0x1583 + 0x53 * 0x79;
      L++
    ) {}
    for (
      var C = -0x21fd + 0x16ea * -0x1 + 0x38e7 * 0x1;
      C < -0xed1 + 0xdc2 + 0x10f;
      C++
    ) {}
    var y = [
        bq(0x199) + bq(0x196),
        -(-0x1af3 * -0x1 + 0x812 * -0x1 + -0x3 * 0x3fb),
        -(-0x13c * 0x2 + -0x26 * 0x5a + 0x1245 * 0x2),
      ][bq(0x127) + "\\x68"],
      d =
        String[bq(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
          0xc4f + -0x67 * -0x3a + -0x11c2 * 0x2
        ) <=
        (bq(0x14b) + "\\x73\\x75\\x30\\x39") >>>
          a[bq(0x135)](
            String["\\x66\\x72\\x6f\\x6d\\x43" + bq(0x13e) + "\\x64\\x65"](
              0xd36 + -0x171c + 0x371 * 0x3
            ),
            a[bq(0x177)]
          )
          ? String[bq(0x148) + bq(0x13e) + "\\x64\\x65"](
              -0x320 * -0xc + -0xf4 + 0x2 * -0x1231
            ) %
            a[bq(0x18e)](
              String[
                "\\x66\\x72\\x6f\\x6d\\x43" +
                  "\\x68\\x61\\x72\\x43\\x6f" +
                  "\\x64\\x65"
              ](0xac + 0x1259 * 0x2 + 0x1299 * -0x2),
              -0x1b75 + 0x1e57 + -0xd1 * 0x3 + 0.3541000000000025
            )
          : -(0x5 * -0x407 + -0x2 * -0x1a4b + -0xb4) <=
            (a[bq(0x131)](
              -(0x1 * 0x125 + -0x41b * 0x3 + 0xf * 0x18d),
              Math[bq(0x144)](-(-0x43 * -0x29 + -0x20ff + 0x30ae))
            )
              ? -(0xc * 0x2e7 + -0x8d * 0x29 + -0x935) +
                (-0x8 * -0x3e6 + 0x4cb * -0x1 + -0x14a9)
              : a[bq(0x12a)](
                  0x19d9 + -0xb38 + -0xcde,
                  0x2e07 + -0x18a8 + 0x197 * 0x9
                ))
          ? Math[bq(0x15c)](
              -0x11 * -0x192 + -0xeef * 0x2 + 0x511 + 0.30000000000001137
            )
          : -(0x217 + -0x2f70 + 0x4614);
    try {
      var Q = a[bq(0x13a)](
        -0x1427 + 0x2537 + -0x10eb + 0.9134000000000029,
        Math["\\x66\\x6c\\x6f\\x6f\\x72"](a[bq(0x139)])
      );
    } catch (Z) {}
    for (
      var S = 0x1870 + 0xcd0 + -0x2540;
      S < -0x1bc7 * 0x1 + -0x1979 * 0x1 + -0x2 * -0x1aa0;
      S++
    ) {}
    return -0x1 * -0x1c41 + 0x6 * -0x679 + 0x6cd * 0x2 + 0.5679999999999836;
  }
  function k(N, t) {
    var bp = P,
      n = {};
    (n[bp(0x165)] = function (S, Z) {
      return S | Z;
    }),
      (n[bp(0x1a3)] = bp(0x13b) + "\\x30"),
      (n[bp(0x170)] = function (S, Z) {
        return S === Z;
      }),
      (n["\\x4f\\x6d\\x48\\x6a\\x6f"] = "\\x51\\x73\\x6d\\x4f\\x6d"),
      (n[bp(0x164)] = bp(0x167)),
      (n[bp(0x179)] = function (S, Z) {
        return S != Z;
      }),
      (n[bp(0x142)] = bp(0x18f) + "\\x52\\x50"),
      (n[bp(0x147)] = "\\x63\\x4d\\x39\\x48\\x44" + bp(0x19f));
    var a = n,
      L = Math[bp(0x141)](bp(0x146) + bp(0x15b) + "\\x32\\x44");
    try {
      var C = Math[bp(0x166)](
        Math["\\x66\\x6c\\x6f\\x6f\\x72"](
          String["\\x66\\x72\\x6f\\x6d\\x43" + bp(0x13e) + "\\x64\\x65"](
            0x163f + 0xe39 + 0xd * -0x2c7
          ) ===
            (a[bp(0x170)](
              -(-0xed5 + -0xf5 * -0x2 + -0x878 * -0x5),
              -(-0x10b3 + -0x3e1 * 0x1 + -0x1 * -0x3347)
            )
              ? 0xb * -0x191 + 0x1 * 0x15da + 0x1039
              : -(-0x3183 + -0x2030 + 0x6e6f))
            ? -0x176d + -0x50 * -0x47 + 0x18 * 0x77
            : Math[bp(0x12d)](-(0x6 * -0x4d4 + -0x1d52 + 0x4b76))
        )
      );
    } catch (S) {}
    var y = Math[bp(0x144)](-(0x7cc + -0x193a + 0x29df * 0x1)),
      d = Math["\\x61\\x62\\x73"](0xd * 0x151 + -0xf8e + 0x1 * 0xd1c);
    try {
      if (a["\\x4f\\x6d\\x48\\x6a\\x6f"] === a[bp(0x198)])
        var Q = Math[bp(0x152)](a["\\x4d\\x74\\x42\\x6b\\x6e"]);
      else
        var o =
          a[bp(0x165)](a[bp(0x1a3)], -0x1 * -0x1d53 + 0xde2 * 0x1 + -0x1487) >=
          n["\\x73\\x71\\x72\\x74"](
            0x224 * 0x11 + -0x1a07 + -0x6bd + 0.9867000000000417
          )
            ? a[bp(0x148) + bp(0x13e) + "\\x64\\x65"](
                0x469 + 0xa2 * -0x27 + 0x11 * 0x137
              )
            : L[bp(0x148) + bp(0x13e) + "\\x64\\x65"](
                -0x1683 + -0x610 * -0x1 + 0x10bf
              );
    } catch (o) {}
    return a[bp(0x179)](
      String[bp(0x148) + bp(0x13e) + "\\x64\\x65"](
        -0x5e2 * -0x2 + -0x94d + -0x7 * 0x4f
      ),
      a[bp(0x142)]
    )
      ? a["\\x42\\x4e\\x5a\\x4c\\x6f"] |
          (-0xace + 0x9 * -0x233 + -0x1 * -0x1f09 + 0.06999999999999318)
      : String[bp(0x148) + bp(0x13e) + "\\x64\\x65"](-0xf25 + 0xd9a + 0x1b2) *
          String[bp(0x148) + bp(0x13e) + "\\x64\\x65"](
            -0x49d * -0x3 + 0x1de8 + -0x2b56
          );
  }
  var v = {};
  (v["\\x7a\\x72"] = 575.2), (v["\\x70\\x73"] = 573.985);
  var M = v;
  try {
    var s =
      ((-0x1a27 * -0x1 + 0x56f * -0x3 + 0x3 * -0x32b + 0.847999999999999) |
        String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
          -0x32e + 0xc5 * -0x1f + 0x1b32
        )) <=
      String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
        -0x21 * -0x119 + 0x7c + -0x245f * 0x1
      ) /
        (String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
          0x5 * -0x7ad + 0x4 * -0x5bc + -0x2 * -0x1ece
        ) ^
          (-0x1712 * 0x1 + -0x1cb7 * -0x1 + 0x1271 !=
          -(0x315 + 0x1f * -0xa7 + 0x1e5a)
            ? -0x1 * 0x59 + -0x384e + -0x3 * -0x1efc
            : -(0xed * -0x29 + 0x2cc + 0x36a2)))
        ? String["\\x66\\x72\\x6f\\x6d\\x43" + bU(0x13e) + "\\x64\\x65"](
            0x4 * -0x7c9 + -0x2457 * -0x1 + -0x17 * 0x35
          )
        : (-0xcc9 + -0x3 * -0x369 + 0x13fc) /
          ((-(-0x4f * -0x34 + 0x1036 + 0xd0 * -0x14) ^
            -(0x1bb * -0x29 + -0x23b8 + 0x1 * 0x9133)) <
          (-0x2363 + -0x185c + 0x4d4b < 0x14f * 0xf + -0x7 * 0x622 + 0xbb * 0x42
            ? -0x1726 + -0xe30 + 0x2f8f
            : -(-0x60c + 0xed3 + 0x115 * 0x1b))
            ? -0xe07 * -0x1 + 0x2439 + -0x117c !=
              0xf * -0xad + 0xac8 + 0x1 * 0x3ef
              ? 0x1d9 * -0x13 + 0x10d3 * -0x4 + 0x8cae
              : -(0x1 * -0xf86 + -0x3 * -0x78d + 0xb2 * 0x14)
            : Math[bU(0x144)](-0x19ea + 0x1 * -0x26ce + -0x20a1 * -0x2));
  } catch (bF) {}
  var E = {};
  (E["\\x6e\\x77"] = 719.18),
    (E["\\x63\\x78"] = -(0x3ca4 * 0x1 + 0x27ab * -0x1 + 0x105e));
  var Y = E,
    D = [
      bU(0x16c) >>> (0x81e + 0x1b9f + 0x5 * 0xa1),
      Math["\\x66\\x6c\\x6f\\x6f\\x72"](-(-0x866 + 0x38b + 0xdc5)),
      String["\\x66\\x72\\x6f\\x6d\\x43" + bU(0x13e) + "\\x64\\x65"](
        0x19b1 + -0x1e5f + 0x517
      ),
    ]["\\x72\\x65\\x76\\x65\\x72" + "\\x73\\x65"]();
  if (![])
    var u =
      ((bU(0x13b) + "\\x30") | (-0x19ca + -0x1a95 + 0x4b0d)) >=
      Math[bU(0x1a6)](-0x21c7 + -0x665 * 0x5 + 0x4560 + 0.9867000000000417)
        ? String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
            0xf * -0x299 + 0x63 + 0x26f6
          )
        : String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
            0x3 * -0x70b + -0x254c + 0x1 * 0x3ab9
          );
  var V = Math["\\x63\\x65\\x69\\x6c"](-0x277c + -0x715 * 0x2 + 0x50c8),
    j = window,
    T =
      j[
        bU(0x17e) +
          "\\x73\\x74\\x41\\x6e\\x69" +
          bU(0x136) +
          bU(0x17a) +
          "\\x65"
      ];
  for (
    var I = 0x1 * 0xa08 + -0x1 * 0x1549 + 0xb41;
    I < 0xeb7 * 0x1 + 0x104b * -0x2 + 0x5 * 0x393;
    I++
  ) {}
  var f = {
      "\\x66\\x31\\x33":
        -(0x1df3 + -0x13f9 * -0x1 + -0x2 * 0xfd5) /
          (0x6 * 0x359 + 0x202e * -0x1 + 0xf83 + 0.19000000000005457) <
        -(-0x3 * 0x276 + -0xa7 * 0x1 + 0x1a7d)
          ? ((-(0x1eb5 + 0x3e6b + -0x3b6f) >
            -(0x3f * 0x9b + 0x3517 + 0x1 * -0x3d3f)
              ? 0x1538 + 0x1b96 + -0x2a06 * 0x1
              : -(0x5 * -0x16 + -0xbd * -0xd + 0x3 * 0x6bb)) !=
            0x100b * 0x1 + -0x253e + -0x25 * -0x127
              ? String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
                  -0x22f4 + 0x1 + 0x2370
                )
              : 0x2 * -0x5f9 + -0x1a33 + 0x1 * 0x292f + 0.469600000000014) <<
            (bU(0x1a4) + "\\x62" <=
            0x6ed * 0x4 + 0x15df + -0x2f95 * 0x1 + 0.8100000000000023
              ? 0xad1 + 0x229 + -0x946 + 0.10000000000002274
              : -(0x1481 + -0x26ee + -0x1 * -0x1dcd) ===
                -0x1 * -0x5ba + 0x41b6 + -0xb * 0x337
              ? -(-0x1 * 0x1e86 + -0x1d5a + 0x5280)
              : -0xfa9 + -0x7 * 0x25 + 0x2d9b)
          : -0x20f7 + -0x27f + -0x1 * -0x2587 + 0.18780000000003838,
      "\\x66\\x31\\x34": Math[bU(0x1a5)](
        Math["\\x73\\x69\\x6e"](
          -0x34d + 0x2 * 0xef8 + 0x17c8 * -0x1 + 0.9175000000000182
        )
      ),
    },
    g = [
      String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
        0x22d7 * -0x1 + 0xd1a + 0x1615
      ),
      bU(0x186) + "\\x31\\x73\\x42\\x63\\x30",
      -0x182c + 0x66f + 0x1dde,
    ][bU(0x16d) + "\\x73\\x65"](),
    G = (bU(0x143) + bU(0x16f))[
      bU(0x137) + "\\x65\\x72\\x43\\x61\\x73" + "\\x65"
    ](),
    W = {
      "\\x76\\x31\\x38": String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
        -0x5da + -0xd2 + -0x7 * -0xfe
      ),
      "\\x67\\x31\\x39": String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
        0x2146 + -0xcc1 + 0x2b * -0x79
      ),
    },
    h = "",
    i = Math[bU(0x17f)](
      "\\x4e\\x33\\x4a\\x46\\x61" + "\\x24\\x33\\x65\\x6e\\x71" ==
        (bU(0x181) + "\\x38" >=
        String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](-0x24b6 + -0x10d4 + 0x35b1)
          ? Math["\\x72\\x6f\\x75\\x6e\\x64"](0xc7 * 0x1d + -0x2604 + 0x30a4)
          : bU(0x12b) + "\\x6f")
        ? 0x48cc + 0x1628 + -0x39dd
        : 0x14bf + 0x1 * 0x23dd + -0x1 * 0x3843 + 0.9444500000000033
    ),
    H = {
      "\\x68\\x31\\x63":
        (-0x257b + 0x21c1 + -0x3 * -0x1b3 + 0.8419000000000096) <<
        ((0x1 * -0x1306 + 0x2395 * 0x1 + -0xde0 + 0.9537900000000263) *
          String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
            0xb * 0x37 + 0x7 * 0x2d1 + -0x15f0
          )),
      "\\x71\\x31\\x64": bU(0x133) + "\\x30",
    },
    r = (bU(0x12e) + "\\x6c")[bU(0x13f) + "\\x74"](0x6e2 + 0x1153 + -0x1835);
  for (
    var b0 = 0x1492 + -0x1c7b + 0x7e9;
    b0 < -0x1 * 0x150b + 0x14d8 + 0x3 * 0x11;
    b0++
  ) {}
  var b1 = [
      "\\x30\\x68\\x6f\\x33\\x43" + bU(0x17b) + "\\x24\\x64",
      ((Math["\\x63\\x6f\\x73"](0x8de + -0x10 * -0x112 + -0x7cf) ===
      (-(0x7a * -0x3c + 0x335 + -0x32f9 * -0x1) >= -0x773 + 0x18a7 + -0x840
        ? 0x1345 + -0x1a62 + -0x1 * -0x1813
        : 0x2 * -0x7ab + 0x4ae * 0x6 + -0x10 * 0x25)
        ? 0x15 * -0x1a5 + -0xd82 + 0x49d0 ==
          -(-0x22e0 * -0x1 + 0x2b3 * -0x2 + 0x2 * -0xe7b)
          ? -(-0x2 * -0x16 + -0x1 * 0x328 + 0x6d * 0x2e)
          : 0x1 * 0xf16 + -0x197b + -0xf1 * -0xd
        : -0x181f + 0x363 + 0x1 * 0x2114 < -0xc * -0x53e + 0xa35 + -0x3 * 0xcc9
        ? -(0x3dc + 0x27a + -0x7 * -0xc1)
        : -(0x97 * 0x20 + -0x1 * -0x3b3e + -0x2865)) ==
      Math[bU(0x17f)](
        -(-0x9 * 0x6d8 + 0x1270 + 0x4e31) + -(0xa * -0x2ad + -0xce3 + 0x327a)
      )
        ? Math["\\x74\\x61\\x6e"](bU(0x178) + bU(0x14d))
        : -0x14d1 + -0x2138 + 0x3795 + 0.34789999999998145) <=
      (((-(0x6da * 0x2 + -0x10f * -0x14 + -0xc7 * 0x16) >=
      0xb * -0x29 + -0x1 * -0xff2 + 0x452
        ? -(-0xca8 + 0x15a5 + 0x8)
        : 0x3ea + -0xddd + 0x3047) ===
      bU(0x183) + "\\x65\\x54\\x72\\x73\\x56" + "\\x75"
        ? -(0x24 + -0x46 * -0x83 + 0xf9f * -0x1)
        : 0x1 * -0x1f75 + 0xaba + 0x175e + 0.7469999999999573) !=
      (-(-0xa * -0x2b5 + -0x22e5 * -0x1 + -0x45 * 0xc2) |
        (-0x3612 + 0x1 * -0x263b + 0x818b)) %
        (bU(0x15a) + bU(0x155) + "\\x4c\\x71")
        ? (-(-0x1aae + -0x1865 + 0x4a0e) &
            (-0x1bfa * 0x1 + 0x2 * -0x16bb + 0x3f * 0x1a9)) <=
          (-(-0x7dc + 0x2609 + -0x1073) < 0x1a14 + -0xc4a * -0x1 + -0x1143
            ? -0x36e * -0x1 + -0x222f + 0x3504
            : -0xd5 * -0x6 + -0x1 * -0x1da7 + -0x1b28)
          ? 0xa * -0x1cf + -0x3 * -0x4fc + -0x2 * -0x26b + 0.6637999999999806
          : -(-0x4c44 + -0x2fb + -0x269 * -0x31) / (0x16a4 + -0x254c + 0x29e4)
        : Math[bU(0x17f)](bU(0x18a) + bU(0x124)))
        ? -0x71a + -0x10db + 0x19ba + 0.14800000000002456 !=
          Math[bU(0x15c)](
            0x21e5 * -0x1 + -0x227b * 0x1 + 0x469b + 0.8097999999999956
          )
          ? (-0x7af * -0x3 + -0x2339 + -0x1cb5 * -0x1 !==
            -(-0x2ecd * 0x1 + -0x116 + 0x4a2a)
              ? -0x390e + -0x1375 * -0x3 + -0x1 * -0x2507
              : -(-0x335b + 0x1 * -0x1a8a + 0x4 * 0x19e8)) ^
            (-0x303 + 0x953 + 0xe76)
          : Math["\\x63\\x65\\x69\\x6c"](
              -(-0x7 * 0x36b + -0x1 * -0xbc5 + 0x1 * 0x156b) !==
                -(-0x16 * 0x199 + 0xd7e + 0x19c9)
                ? -0xdf9 + 0x23e0 + -0x2 * -0x729
                : -(0xf6 * -0x21 + 0x57d * 0x4 + 0x1355)
            )
        : ((0x15a * 0x1e + 0x7a2 + -0x1bb9 ==
          -(0x344f + 0x11d9 * 0x3 + 0x4daf * -0x1)
            ? -0x2670 + 0xcc2 + 0x115a * 0x2
            : -0x27eb + -0x4 * -0xd2b + 0x1359) /
            (-0x80f * -0x3 + 0x239 * -0x2 + -0x358 <= -0x4c + 0x27d + 0x777
              ? -(-0x1 * 0x2be + -0x8 * -0x4c5 + -0x8b * 0x1e)
              : -0x19 * -0x99 + 0x1da7 + 0x1 * -0x24a5)) >>>
          (0x21b + -0x17a6 + 0x3024),
      0x1508 + -0x21e2 + 0x1 * 0x1039 + 0.12999999999999545,
    ]["\\x6c\\x65\\x6e\\x67\\x74" + "\\x68"],
    b2 =
      ((-0xaa9 + 0x1ea6 * 0x1 + -0x5 * -0x2d1) /
        (-0x182 + 0x1 * 0x1c99 + 0x1 * -0x189e + 0.16300000000001091)) *
      bU(0x18c);
  function b3(t, n, a) {
    var bx = bU,
      L = {};
    (L[bx(0x161)] = "\\x6a\\x38\\x59\\x36\\x7a" + "\\x39\\x31\\x7a"),
      (L[bx(0x14f)] = "\\x36\\x4e\\x50\\x38\\x34" + "\\x43"),
      (L[bx(0x17d)] = function (o, z) {
        return o < z;
      }),
      (L[bx(0x195)] = function (o, z) {
        return o !== z;
      }),
      (L[bx(0x18b)] = function (o, z) {
        return o & z;
      });
    var C = L,
      y = {
        "\\x74\\x31\\x6d": C[bx(0x161)],
        "\\x6c\\x31\\x6e": String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
          0x1e71 * -0x1 + 0x1fae + 0x8 * -0x22
        ),
      },
      d = Math["\\x63\\x65\\x69\\x6c"](
        String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
          0x46c * 0x4 + -0x1f01 + -0xd8d * -0x1
        )
      ),
      Q = {};
    (Q["\\x63\\x31\\x71"] = 979.2794), (Q[bx(0x1a7)] = bx(0x128) + "\\x35");
    var S = Q,
      Z = Math[bx(0x190)](
        Math[bx(0x1a6)](
          -0x40a + -0x43c + 0x8a5 + 0.9000000000000057 ===
            String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
              -0x3fe + 0x1 * 0x1961 + -0x151c
            )
            ? C["\\x4e\\x68\\x71\\x4b\\x62"]
            : String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
                0xa36 * 0x2 + -0x12db + -0x170
              )
        )
      );
    return (
      (-0x1ca7 + -0x2526 + -0x6857 * -0x1) <<
      (bx(0x176) !==
      (C[bx(0x17d)](
        String[bx(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
          0x1eca + -0xa73 + 0x1a * -0xc5
        ),
        String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
          -0x6fc + -0x7b * -0xd + 0x11 * 0xd
        )
      )
        ? -(0xf7c + 0x1 * -0xaf3 + -0x6d * 0x1)
        : Math[bx(0x152)](0x1 * 0xbb9 + -0x1 * 0x4d + 0x0))
        ? C[bx(0x195)](
            C[bx(0x18b)](
              -0x8ed * -0x1 + 0x26 * -0x67 + 0x17c6,
              -(0x1530 + 0x1c02 + 0x413 * -0x6)
            ),
            -0x26fa + 0x1fd9 * -0x1 + 0x255b * 0x2 + 0.9003500000000031
          )
          ? -0xe44 + -0x346 + 0x23d3
          : String[bx(0x148) + bx(0x13e) + "\\x64\\x65"](
              0x831 * 0x4 + 0x953 + -0x29ba
            )
        : 0x20c4 + -0x1373 + -0x1 * 0x9bb)
    );
  }
  try {
    var b4 = -(0x3 * -0x225 + 0x1 * 0xef6 + 0xd56);
  } catch (bK) {}
  try {
    T[bU(0x14a)](null, null);
  } catch (bA) {
    h = bA[bU(0x187)] || "";
  }
  var b5 = {
    "\\x6d\\x31\\x77":
      Math[bU(0x166)](-(-0x1 * 0x217c + 0xaf * -0xa + -0x5 * -0xb8d)) ===
      bU(0x149) + bU(0x134)
        ? -(-0x13c8 + 0x3914 + 0x1bf * -0x4)
        : String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
            0x3 * 0xb2d + -0x1692 + -0xac7
          ),
    "\\x67\\x31\\x78": String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
      -0xdd6 + 0x10d7 * 0x2 + -0x3f1 * 0x5
    ),
  };
  for (
    var b6 = 0x1 * 0x1b46 + 0x4 * -0x182 + -0xa9f * 0x2;
    b6 < 0x43 * 0x2 + 0x297 * 0x2 + -0x5b4;
    b6++
  ) {}
  var b7 = Math[bU(0x17f)](
      String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
        -0x4 * -0x59e + -0x1451 + -0x2 * 0xd6
      )
    ),
    b8 = bU(0x194)[bU(0x13f) + "\\x74"](-0x1033 + 0x5ad * -0x3 + 0x213a * 0x1);
  for (
    var b9 = 0x45e + 0x3 * -0x6fd + -0x25f * -0x7;
    b9 < 0x4 * 0x7e0 + 0x1f78 + -0x7df * 0x8;
    b9++
  ) {}
  var bb = Math[bU(0x17f)](bU(0x1a1) + "\\x79\\x31");
  if (![]) var bP = bU(0x159) + bU(0x163);
  if (![]) var bm = -0x1c * 0x35 + 0x4f5 + 0x400 + 0.6100000000000136;
  h = h[bU(0x18d)]("")[bU(0x16d) + "\\x73\\x65"]()["\\x6a\\x6f\\x69\\x6e"]("");
  if (-0x1613 * 0x1 + 0x131d + 0x310 > -0x1b * 0x149 + -0xd93 * -0x1 + 0x15b0)
    var bN = String["\\x66\\x72\\x6f\\x6d\\x43" + bU(0x13e) + "\\x64\\x65"](
      0xe0e + 0xd9 * 0x1 + -0xe75
    );
  var bn = Math["\\x72\\x6f\\x75\\x6e\\x64"](
    String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](0x238b + 0x2d * 0x5e + -0x33cb)
  );
  if (![])
    var ba = String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
      0x222b + 0x4da + -0x268f
    );
  var bL = [
      bU(0x125) + "\\x45",
      0x1e5c + -0x26b + 0x515 * -0x3,
      -0x1 * 0x1da9 + 0x2675 + -0x7f7 + 0.8101900000000057,
    ][bU(0x16d) + "\\x73\\x65"](),
    bC = [
      String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
        0x2176 + 0x15c0 + -0xe * 0x3eb
      ),
      Math[bU(0x15c)](0x16d2 + 0x23dc + 0x123f * -0x3) <<
        (-0xb8d * 0x3 + 0x18c1 + 0xc9a * 0x1 + 0.20000000000004547),
      -(0x713 * -0x3 + 0x1 * -0x17f7 + 0xd * 0x577),
    ][bU(0x158)](
      0x4 * 0x34c + 0x2 * 0x61e + 0x1 * -0x196c,
      -0x3 * -0x9e7 + 0x1893 + -0x23 * 0x18d
    );
  function P(m, N) {
    m = m - (-0xfca + 0x1515 + -0x427);
    var t = b();
    var n = t[m];
    if (P["\\x56\\x63\\x72\\x6f\\x6e\\x4c"] === undefined) {
      var a = function (d) {
        var Q =
          "\\x61\\x62\\x63\\x64\\x65\\x66\\x67\\x68\\x69\\x6a\\x6b\\x6c\\x6d\\x6e\\x6f\\x70\\x71\\x72\\x73\\x74\\x75\\x76\\x77\\x78\\x79\\x7a\\x41\\x42\\x43\\x44\\x45\\x46\\x47\\x48\\x49\\x4a\\x4b\\x4c\\x4d\\x4e\\x4f\\x50\\x51\\x52\\x53\\x54\\x55\\x56\\x57\\x58\\x59\\x5a\\x30\\x31\\x32\\x33\\x34\\x35\\x36\\x37\\x38\\x39\\x2b\\x2f\\x3d";
        var S = "",
          Z = "";
        for (
          var o = 0x1b88 + -0x1bce * 0x1 + 0x46,
            z,
            X,
            l = -0x43 + 0x79 * -0x32 + 0x17e5;
          (X = d["\\x63\\x68\\x61\\x72\\x41\\x74"](l++));
          ~X &&
          ((z =
            o % (-0x3 * -0x35b + 0xe2b + -0x1838)
              ? z * (0xc95 * -0x2 + 0x139f * -0x1 + 0x66f * 0x7) + X
              : X),
          o++ % (0xe03 + -0x5a1 + -0x85e))
            ? (S += String[
                "\\x66\\x72\\x6f\\x6d\\x43\\x68\\x61\\x72\\x43\\x6f\\x64\\x65"
              ](
                (-0x3 * -0x58f + 0x2427 + -0x1147 * 0x3) &
                  (z >>
                    ((-(-0x1393 + 0x1a53 + -0x6be) * o) &
                      (0x7 * 0x4 + 0x19d5 + -0x19eb)))
              ))
            : -0xbdd + -0x17 * 0x1f + -0x19 * -0x96
        ) {
          X = Q["\\x69\\x6e\\x64\\x65\\x78\\x4f\\x66"](X);
        }
        for (
          var w = 0x22ba + -0xe5f * -0x1 + -0x3119,
            e = S["\\x6c\\x65\\x6e\\x67\\x74\\x68"];
          w < e;
          w++
        ) {
          Z +=
            "\\x25" +
            ("\\x30\\x30" +
              S["\\x63\\x68\\x61\\x72\\x43\\x6f\\x64\\x65\\x41\\x74"](w)[
                "\\x74\\x6f\\x53\\x74\\x72\\x69\\x6e\\x67"
              ](0x846 + -0x671 + -0x3 * 0x97))["\\x73\\x6c\\x69\\x63\\x65"](
              -(-0x23b8 + -0x1 * 0x1b25 + 0x3edf)
            );
        }
        return decodeURIComponent(Z);
      };
      (P["\\x71\\x75\\x50\\x4b\\x54\\x68"] = a),
        (P["\\x42\\x63\\x62\\x47\\x69\\x71"] = {}),
        (P["\\x56\\x63\\x72\\x6f\\x6e\\x4c"] = !![]);
    }
    var L = t[0x61 * -0x8 + -0x6da * 0x3 + 0x1796],
      C = m + L,
      y = P["\\x42\\x63\\x62\\x47\\x69\\x71"][C];
    return (
      !y
        ? ((n = P["\\x71\\x75\\x50\\x4b\\x54\\x68"](n)),
          (P["\\x42\\x63\\x62\\x47\\x69\\x71"][C] = n))
        : (n = y),
      n
    );
  }
  if (![]) var by = 0x51a + 0x1d * 0x3b + -0x9d0 + 0.025280000000009295;
  for (
    var bd = 0x17db + 0x1d15 * -0x1 + 0x53a;
    bd < -0x1 * -0x1689 + -0x1 * -0x12ac + -0x2935;
    bd++
  ) {}
  if (![])
    var bQ = String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
      0x2 * -0x6cf + -0x61 * 0x63 + 0x3395
    );
  if (
    0x297 + -0x67 * 0x44 + 0x1922 >
    -0x3 * -0xb2b + 0x142 * -0x2 + 0x9 * -0x35f
  )
    var bS =
      (-0x7 * -0x3f1 + -0x4a * -0x6d + -0x6d * 0x86 + 0.7000000000000455 >=
      -0x1807 + -0x70 * 0x12 + 0xa7f * 0x5
        ? String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
            -0x14c7 + -0x195b + 0x2e4a * 0x1
          )
        : (0x23f6 * 0x1 + -0x1bf3 + 0xa7 * 0xe ===
          -0x45d4 + 0x2719 * 0x1 + 0x436a
            ? -(0x461 * 0x3 + -0x29 * 0x5b + -0x2 * -0x281)
            : -0x2 * -0xeb9 + -0xb * 0x213 + 0x1a8f * 0x1) /
          (0x1325 + 0xf5c * -0x1 + -0x32a + 0.5500000000000114)) !==
      "\\x37\\x45\\x77\\x59"
        ? -0x1166 + -0x157 * 0x7 + -0x5 * -0x5a7 + 0.49500000000000455 ==
          bU(0x15d) + bU(0x19a) + "\\x56"
          ? bU(0x13d) + "\\x63"
          : String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
              -0x248e * -0x1 + -0x1 * -0x233 + -0x2653
            )
        : -0xb69 * 0x1 + -0x1033 + -0x4 * -0x761 + 0.5;
  var bZ = [
    String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
      -0x1a3d + -0x15 * -0x1bb + -0x9b0
    ),
    String[bU(0x148) + bU(0x13e) + "\\x64\\x65"](
      0x1fe1 + -0x2a7 * 0x9 + 0x181 * -0x5
    ),
    -0x129b * 0x2 + -0x379 * -0x7 + 0xf4d + 0.7000000000000455 <=
    String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
      0x1 * -0xda7 + 0x23 * 0x17 + 0xd3 * 0xd
    )
      ? Math[bU(0x166)](
          String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
            -0x2594 + -0x197 * 0x1 + 0x27a6
          ) >
            -(0x52 * 0x68 + -0x1978 + 0x138e) %
              (0x2e05 + 0x4d5 * 0x1 + -0x1 * 0x1add)
            ? Math["\\x61\\x62\\x73"](-(-0x268b + 0x408a + 0xaba))
            : (-0x4f + 0x3eb + 0x1 * -0x319) |
                -(-0x1 * -0xb41 + -0x101 * -0x1f + -0x1c3d)
        )
      : -(-0xb3 * 0x3b + 0x19 * -0xdb + 0x1 * 0x5a47),
  ][bU(0x14c)]("");
  function bo(N) {
    var bO = bU,
      t = {};
    (t["\\x4a\\x6a\\x45\\x57\\x4b"] = function (Z, o) {
      return Z + o;
    }),
      (t[bO(0x154)] = function (Z, o) {
        return Z ^ o;
      }),
      (t[bO(0x16b)] = function (Z, o) {
        return Z >>> o;
      }),
      (t["\\x65\\x54\\x50\\x43\\x46"] = "\\x6d\\x59\\x66");
    var n = t;
    for (var a = 0x640 + -0xa * 0xc7 + 0x186; a < 0xfe + 0x5fe + -0x6fc; a++) {}
    var L = {
        "\\x6c\\x32\\x69": String[bO(0x148) + bO(0x13e) + "\\x64\\x65"](
          0x4 * -0x14f + 0x8 * -0x138 + 0xf74
        ),
        "\\x79\\x32\\x6a": String[
          bO(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"
        ](0x235d * 0x1 + 0x33c + 0x1f * -0x13b),
      },
      C = n[bO(0x169)](
        "\\x30\\x42\\x52" >>>
          n[bO(0x154)](
            Math[bO(0x1a5)](-(0x263 * 0x1 + -0x1 * 0x1d3f + 0x5 * 0x8a7)),
            n[bO(0x16b)](
              0x123 * -0x20 + 0x2 * -0x288 + 0x2ed2,
              -(0x50e * 0x1 + -0x1 * -0xa0f + 0x93b)
            )
          ),
        Math["\\x73\\x69\\x6e"](
          Math["\\x65\\x78\\x70"](0x7 * 0x63 + -0x31b + -0x1346 * -0x1) *
            -(0x667 * -0x1 + 0x29 * 0xee + -0x1432)
        )
      );
    try {
      if ("\\x70\\x54\\x6f\\x63\\x68" !== bO(0x12f))
        var y = bO(0x174) + "\\x75";
      else var o = 0x6b * 0x10 + 0x1477 + -0x192e + 0.025280000000009295;
    } catch (o) {}
    if (![])
      var d = String[bO(0x148) + bO(0x13e) + "\\x64\\x65"](
        -0x117d + 0xddb + -0x15a * -0x3
      );
    try {
      var Q = Math[bO(0x17f)](
        String[bO(0x148) + bO(0x13e) + "\\x64\\x65"](
          -0xa14 + 0x1fa3 + 0x4f * -0x45
        )
      );
    } catch (z) {}
    var S = [
      0x32 * -0x3d + 0x1b59 * -0x1 + 0x28b2 + 0.3450000000000273,
      String[bO(0x148) + bO(0x13e) + "\\x64\\x65"](
        -0x1e58 + -0x2 * 0x93d + 0x313c
      ),
      n[bO(0x154)](
        -0x99 * 0x1 + -0x110 + 0xd * 0xef,
        Math[bO(0x12d)](
          -0x7bd * -0x3 + 0x1 * -0x24ad + 0xebe + 0.7191300000000069
        )
      ),
    ][bO(0x127) + "\\x68"];
    return n["\\x65\\x54\\x50\\x43\\x46"];
  }
  function b() {
    var bR = [
      "\\x42\\x4e\\x4c\\x54\\x79\\x76\\x61",
      "\\x7a\\x64\\x76\\x6d\\x74\\x57",
      "\\x42\\x31\\x7a\\x57\\x77\\x75\\x71",
      "\\x41\\x32\\x79\\x30\\x71\\x75\\x69",
      "\\x41\\x4d\\x39\\x32\\x45\\x67\\x71",
      "\\x42\\x4b\\x7a\\x59\\x79\\x77\\x30",
      "\\x73\\x32\\x7a\\x6f\\x74\\x5a\\x79",
      "\\x43\\x68\\x6a\\x56\\x44\\x67\\x38",
      "\\x42\\x4e\\x6a\\x4b\\x45\\x77\\x71",
      "\\x43\\x4d\\x76\\x58\\x44\\x77\\x75",
      "\\x7a\\x4d\\x58\\x56\\x42\\x33\\x69",
      "\\x79\\x30\\x31\\x50\\x7a\\x68\\x79",
      "\\x43\\x33\\x66\\x79\\x41\\x76\\x69",
      "\\x6d\\x74\\x79\\x59\\x6e\\x64\\x65\\x5a\\x6d\\x67\\x72\\x78\\x79\\x4c\\x50\\x73\\x44\\x61",
      "\\x6a\\x64\\x7a\\x62\\x45\\x77\\x69",
      "\\x6d\\x74\\x6e\\x4e\\x75\\x65\\x58\\x51\\x77\\x4e\\x79",
      "\\x78\\x31\\x38\\x4b\\x6d\\x68\\x47",
      "\\x7a\\x78\\x48\\x71\\x6d\\x4e\\x69",
      "\\x43\\x33\\x72\\x48\\x79\\x32\\x53",
      "\\x6e\\x74\\x47\\x33\\x6d\\x4a\\x62\\x64\\x7a\\x77\\x4c\\x53\\x75\\x4d\\x43",
      "\\x7a\\x4b\\x72\\x31\\x74\\x68\\x4b",
      "\\x75\\x4b\\x72\\x67\\x45\\x67\\x71",
      "\\x75\\x31\\x76\\x50\\x74\\x76\\x43",
      "\\x6d\\x4d\\x50\\x70\\x6d\\x71",
      "\\x43\\x33\\x62\\x53\\x41\\x78\\x71",
      "\\x74\\x33\\x6e\\x32\\x76\\x65\\x4b",
      "\\x6e\\x73\\x71\\x58\\x71\\x76\\x65",
      "\\x79\\x32\\x76\\x50\\x42\\x61",
      "\\x42\\x31\\x4c\\x4b\\x77\\x4d\\x34",
      "\\x6f\\x76\\x62\\x75\\x79\\x4d\\x6e\\x4e\\x72\\x57",
      "\\x43\\x4e\\x6a\\x4f\\x73\\x68\\x79",
      "\\x79\\x30\\x54\\x53\\x74\\x47",
      "\\x42\\x78\\x4c\\x4b\\x44\\x77\\x79",
      "\\x76\\x77\\x58\\x52\\x72\\x77\\x4f",
      "\\x6d\\x5a\\x6e\\x71\\x42\\x71",
      "\\x74\\x32\\x31\\x69\\x41\\x4d\\x38",
      "\\x72\\x76\\x66\\x4c\\x43\\x78\\x79",
      "\\x71\\x4d\\x54\\x53\\x74\\x31\\x4f",
      "\\x75\\x4e\\x7a\\x52\\x45\\x4d\\x65",
      "\\x6d\\x4a\\x66\\x79\\x41\\x32\\x6a\\x51\\x73\\x4d\\x65",
      "\\x75\\x4d\\x39\\x6e\\x72\\x32\\x65",
      "\\x72\\x76\\x6e\\x53",
      "\\x7a\\x4d\\x6a\\x6d\\x71\\x47",
      "\\x6e\\x4a\\x71\\x33\\x6e\\x5a\\x69\\x32\\x6e\\x65\\x7a\\x69\\x43\\x4e\\x48\\x70\\x44\\x47",
      "\\x6d\\x4c\\x66\\x32\\x74\\x65\\x47",
      "\\x7a\\x76\\x4c\\x35\\x73\\x66\\x75",
      "\\x44\\x30\\x35\\x64\\x73\\x65\\x6d",
      "\\x6d\\x66\\x50\\x41\\x71\\x77\\x71",
      "\\x43\\x32\\x4c\\x55",
      "\\x43\\x33\\x66\\x59\\x44\\x61",
      "\\x7a\\x64\\x66\\x59",
      "\\x6d\\x74\\x75\\x31\\x6e\\x74\\x69\\x57\\x6e\\x4b\\x48\\x69\\x72\\x77\\x35\\x52\\x75\\x57",
      "\\x6f\\x76\\x50\\x75",
      "\\x79\\x5a\\x4c\\x4c\\x6f\\x64\\x61",
      "\\x6d\\x4a\\x72\\x4e\\x77\\x4e\\x62\\x69\\x72\\x67\\x43",
      "\\x42\\x67\\x76\\x55\\x7a\\x33\\x71",
      "\\x75\\x30\\x7a\\x4b\\x75\\x5a\\x71",
      "\\x6d\\x4a\\x69\\x5a\\x6d\\x4a\\x75\\x5a\\x6e\\x4a\\x7a\\x75\\x76\\x30\\x6a\\x54\\x42\\x76\\x47",
      "\\x76\\x33\\x76\\x30\\x41\\x31\\x4f",
      "\\x7a\\x73\\x71\\x58\\x43\\x68\\x43",
      "\\x44\\x68\\x6a\\x50\\x42\\x71",
      "\\x7a\\x78\\x48\\x57",
      "\\x42\\x59\\x72\\x58\\x42\\x78\\x6d",
      "\\x79\\x31\\x62\\x56\\x7a\\x4e\\x47",
      "\\x44\\x67\\x39\\x6d\\x42\\x33\\x43",
      "\\x41\\x67\\x76\\x6a\\x79\\x32\\x79",
      "\\x75\\x32\\x39\\x58\\x79\\x32\\x4f",
      "\\x78\\x33\\x75\\x34\\x41\\x30\\x4f",
      "\\x77\\x4d\\x44\\x73\\x41\\x61",
      "\\x41\\x65\\x6e\\x51\\x73\\x77\\x34",
      "\\x42\\x77\\x66\\x30\\x41\\x77\\x38",
      "\\x44\\x67\\x39\\x76\\x43\\x68\\x61",
      "\\x72\\x30\\x66\\x33\\x77\\x74\\x65",
      "\\x41\\x4d\\x50\\x67\\x75\\x76\\x6d",
      "\\x42\\x77\\x7a\\x69\\x76\\x4b\\x43",
      "\\x44\\x32\\x30\\x31\\x7a\\x64\\x4b",
      "\\x42\\x75\\x31\\x76\\x43\\x61",
      "\\x41\\x32\\x44\\x30\\x74\\x4c\\x6d",
      "\\x41\\x67\\x66\\x59\\x71\\x32\\x38",
      "\\x79\\x32\\x48\\x48\\x43\\x4b\\x65",
      "\\x73\\x77\\x35\\x4a\\x75\\x77\\x69",
      "\\x43\\x4d\\x39\\x31\\x42\\x4d\\x71",
      "\\x76\\x32\\x54\\x72\\x72\\x32\\x43",
      "\\x43\\x5a\\x7a\\x77\\x43\\x75\\x65",
      "\\x79\\x77\\x6a\\x5a",
      "\\x76\\x33\\x72\\x59\\x43\\x4d\\x43",
      "\\x44\\x78\\x48\\x4f\\x73\\x32\\x47",
      "\\x71\\x4b\\x35\\x41\\x74\\x67\\x38",
      "\\x7a\\x4e\\x6a\\x56\\x42\\x75\\x6d",
      "\\x71\\x4b\\x6e\\x4a\\x74\\x33\\x71",
      "\\x79\\x32\\x66\\x53\\x42\\x61",
      "\\x43\\x4e\\x72\\x4f\\x74\\x31\\x79",
      "\\x41\\x4d\\x39\\x50\\x42\\x47",
      "\\x74\\x78\\x76\\x63",
      "\\x43\\x68\\x66\\x4a\\x74\\x30\\x34",
      "\\x74\\x4d\\x48\\x58\\x73\\x32\\x69",
      "\\x6e\\x5a\\x6a\\x35\\x7a\\x68\\x44\\x6f\\x73\\x75\\x6d",
      "\\x43\\x75\\x4c\\x56\\x41\\x75\\x69",
      "\\x44\\x67\\x66\\x55",
      "\\x72\\x4b\\x34\\x33\\x76\\x71",
      "\\x45\\x4b\\x4c\\x49\\x43\\x67\\x79",
      "\\x6d\\x32\\x7a\\x49\\x77\\x77\\x4b",
      "\\x76\\x66\\x62\\x32\\x72\\x30\\x4f",
      "\\x6d\\x74\\x66\\x69\\x41\\x67\\x6e\\x6f\\x71\\x4d\\x79",
      "\\x43\\x32\\x58\\x50\\x79\\x32\\x75",
      "\\x6a\\x67\\x35\\x58\\x43\\x4d\\x38",
      "\\x75\\x64\\x66\\x36\\x7a\\x31\\x69",
      "\\x6e\\x32\\x6e\\x34\\x6d\\x31\\x75",
      "\\x79\\x32\\x39\\x5a",
      "\\x75\\x4c\\x39\\x53\\x74\\x33\\x75",
      "\\x71\\x76\\x44\\x71\\x76\\x33\\x43",
      "\\x7a\\x74\\x62\\x76\\x43\\x4b\\x65",
      "\\x6d\\x74\\x75\\x5a\\x6e\\x5a\\x47\\x31\\x6e\\x4d\\x6a\\x6a\\x7a\\x76\\x66\\x64\\x44\\x47",
      "\\x41\\x77\\x48\\x67\\x43\\x77\\x4f",
      "\\x76\\x65\\x7a\\x48\\x78\\x31\\x4f",
      "\\x71\\x4d\\x35\\x65\\x74\\x32\\x79",
      "\\x74\\x78\\x72\\x63\\x41\\x32\\x34",
      "\\x72\\x4e\\x6a\\x4a\\x41\\x32\\x71",
      "\\x42\\x67\\x39\\x4e",
      "\\x71\\x5a\\x66\\x4d\\x6d\\x47",
      "\\x41\\x32\\x58\\x6a\\x73\\x30\\x53",
      "\\x73\\x4d\\x50\\x66\\x76\\x30\\x53",
      "\\x45\\x4d\\x6e\\x65\\x73\\x77\\x4b",
      "\\x44\\x77\\x4c\\x4e\\x43\\x68\\x4f",
      "\\x79\\x4c\\x50\\x58\\x6d\\x71",
      "\\x43\\x4d\\x76\\x32\\x7a\\x78\\x69",
      "\\x6d\\x4d\\x31\\x50\\x43\\x67\\x31\\x33\\x42\\x61",
      "\\x77\\x4b\\x30\\x34\\x77\\x75\\x47",
      "\\x73\\x31\\x7a\\x55\\x41\\x30\\x53",
      "\\x77\\x65\\x4c\\x75\\x45\\x4d\\x43",
      "\\x76\\x4d\\x35\\x64\\x43\\x68\\x69",
      "\\x6d\\x4a\\x4b\\x34\\x6d\\x64\\x69\\x34\\x45\\x4b\\x39\\x67\\x73\\x30\\x48\\x71",
      "\\x71\\x78\\x66\\x66\\x43\\x4b\\x6d",
    ];
    b = function () {
      return bR;
    };
    return b();
  }
  Array[bU(0x17c) + "\\x74\\x79\\x70\\x65"][bU(0x185) + "\\x37\\x66"] = h;
  if (0x1 * -0x513 + -0x25b8 + 0x2b12 * 0x1 > -0x79 * 0x9 + -0x10d6 + 0x15d2)
    var bz =
      (bU(0x162) + "\\x43\\x6b" + -(-0xed6 + -0x1 * -0x1e02 + 0x10d)) %
      Math["\\x6c\\x6f\\x67"](
        Math[bU(0x1a5)](
          String[bU(0x148) + "\\x68\\x61\\x72\\x43\\x6f" + "\\x64\\x65"](
            0x20 * -0x7f + -0x2d7 * 0x9 + 0xa7b * 0x4
          )
        )
      );
  var bX =
      (Math[bU(0x141)](-(0x750 + 0xe23 + -0x1d * 0x41)) ==
      -(-0x6a9 + -0x8fb + 0x1459) -
        (0x128f * -0x1 + 0x11db + 0x466 + 0.013000000000033651)
        ? bU(0x145) + "\\x6e\\x69"
        : bU(0x19e)) /
      (-0x1d5a + 0x223a + -0x1a4 + 0.6499999999999773),
    bl = bU(0x153)[bU(0x12c)](),
    bw = (bU(0x168) + bU(0x171) + "\\x38\\x56")[
      bU(0x130) + "\\x65\\x72\\x43\\x61\\x73" + "\\x65"
    ]();
  function be(N) {
    var bB = bU,
      t = {};
    (t[bB(0x189)] = function (d, Q) {
      return d | Q;
    }),
      (t[bB(0x16a)] = function (d, Q) {
        return d | Q;
      }),
      (t["\\x63\\x4d\\x69\\x64\\x76"] = bB(0x15f) + bB(0x151) + "\\x67"),
      (t[bB(0x19b)] = "\\x65\\x77\\x5a\\x5f\\x45" + "\\x4f"),
      (t["\\x41\\x57\\x50\\x57\\x77"] = function (d, Q) {
        return d + Q;
      }),
      (t[bB(0x175)] = function (d, Q) {
        return d | Q;
      });
    var n = t;
    for (
      var a = -0x8a5 + -0x1 * -0x1156 + 0x8b1 * -0x1;
      a < -0x1 * 0xd6a + 0x76e * -0x2 + 0x1c46;
      a++
    ) {}
    if (0x616 + -0x1efd + -0x1 * -0x192b > -0x1735 + 0x7 * 0x56 + 0x1 * 0x1555)
      var L = bB(0x13c);
    if (![])
      var C = String[bB(0x148) + bB(0x13e) + "\\x64\\x65"](
        -0x834 + -0x17ef + 0x2052
      );
    var y = Math[bB(0x152)](
      n[bB(0x189)](
        Math[bB(0x1a6)](0x167b * 0x1 + -0xe44 + 0x107) >
          -(0x34cc + -0x3 * 0xc0b + 0x146d)
          ? n[bB(0x16a)](
              -(-0x9 * 0x4d5 + 0x2702 + 0x1f79),
              -0x73 * 0x1b + -0x1ed5 + 0x45a8
            )
          : n[bB(0x180)],
        Math[bB(0x144)](
          Math[bB(0x1a6)](0xa31 * -0x2 + 0x1 * -0x104 + 0x10f * 0x1f)
        )
      )
    );
    return (
      (0x2039 + -0x16d0 + 0x35 * -0x29 + 0.8000000000000114 <
      n["\\x52\\x76\\x6b\\x7a\\x61"]
        ? Math[bB(0x190)](
            String[bB(0x148) + bB(0x13e) + "\\x64\\x65"](
              0x120b + 0x1ccd + -0x2e5c
            )
          )
        : String[bB(0x148) + bB(0x13e) + "\\x64\\x65"](
            0x6a6 * -0x2 + -0x21 * 0xb + 0xeef * 0x1
          )) &
      n[bB(0x15e)](
        -(-0x1a1c + 0x297 * -0xd + 0x4ca2),
        Math[bB(0x1a6)](
          n["\\x6e\\x79\\x6d\\x61\\x50"](
            -0x1dd2 + 0x11cb + 0x292 * 0x8,
            -0x1251 * 0x1 + -0x900 + 0x34e8
          )
        )
      )
    );
  }
})();

This is the deobfuscated version:

(function() {
  // Get reference to window object
  var window_ref = window;

  // Get the requestAnimationFrame function
  var requestAnimationFrame = window_ref.requestAnimationFrame;

  // Variable to store the captured stack trace
  var stackTrace = "";

  try {
    // Call requestAnimationFrame with null to intentionally trigger an error
    // This allows capturing the browser's error stack trace
    requestAnimationFrame.call(null, null);
  } catch (error) {
    // Extract the stack trace from the error object
    stackTrace = error.stack || "";
  }

  // Reverse the stack trace string
  // Split into array of characters, reverse the array, then join back
  stackTrace = stackTrace.split("").reverse().join("");

  // Store the reversed stack trace in a custom property on Array.prototype
  // This makes it accessible globally but hidden from casual inspection
  Array.prototype.__c7f = stackTrace;

  // Note: All the mathematical operations, variable declarations, and
  // function definitions (B, R, k, b3, bo, be) in the original code
  // were dead code/junk code designed to obfuscate the real purpose.
  // The only actual functionality is the above ~20 lines.
})();

The game could use this to detect if the game is modified.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions