forked from liyf-code/reverse_practice
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdemo.js
90 lines (82 loc) · 2.81 KB
/
demo.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
, _p = "W5D80NFZHAYB8EUI2T649RT2MNRMVE2O";
// c.c
function e1(t) {
if (null == t)
return null;
for (var e, n, r, o, i, a, c, u = "", s = 0; s < t.length;)
o = (e = t.charCodeAt(s++)) >> 2,
i = (3 & e) << 4 | (n = t.charCodeAt(s++)) >> 4,
a = (15 & n) << 2 | (r = t.charCodeAt(s++)) >> 6,
c = 63 & r,
isNaN(n) ? a = c = 64 : isNaN(r) && (c = 64),
u = u + _keyStr.charAt(o) + _keyStr.charAt(i) + _keyStr.charAt(a) + _keyStr.charAt(c);
return u
}
// c.d
function e2(t) {
if (null == (t = _u_e(t)))
return null;
for (var e = "", n = 0; n < t.length; n++) {
var r = _p.charCodeAt(n % _p.length);
e += String.fromCharCode(t.charCodeAt(n) ^ r)
}
return e
}
function _u_e(t) {
if (null == t)
return null;
t = t.replace(/\r\n/g, "\n");
for (var e = "", n = 0; n < t.length; n++) {
var r = t.charCodeAt(n);
r < 128 ? e += String.fromCharCode(r) : r > 127 && r < 2048 ? (e += String.fromCharCode(r >> 6 | 192),
e += String.fromCharCode(63 & r | 128)) : (e += String.fromCharCode(r >> 12 | 224),
e += String.fromCharCode(r >> 6 & 63 | 128),
e += String.fromCharCode(63 & r | 128))
}
return e
}
function get_payload(start) {
var l = {
payload: {
limit: 20,
sort: 1,
start: start
}
}
return e1(e2(JSON.stringify(l.payload)))
}
function d1(t) {
var e, n, r, o, i, a, c = "", u = 0;
for (t = t.replace(/[^A-Za-z0-9\+\/\=]/g, ""); u < t.length;)
e = _keyStr.indexOf(t.charAt(u++)) << 2 | (o = _keyStr.indexOf(t.charAt(u++))) >> 4,
n = (15 & o) << 4 | (i = _keyStr.indexOf(t.charAt(u++))) >> 2,
r = (3 & i) << 6 | (a = _keyStr.indexOf(t.charAt(u++))),
c += String.fromCharCode(e),
64 != i && (c += String.fromCharCode(n)),
64 != a && (c += String.fromCharCode(r));
return c
}
function d2(t) {
for (var e = "", n = 0; n < t.length; n++) {
var r = _p.charCodeAt(n % _p.length);
e += String.fromCharCode(t.charCodeAt(n) ^ r)
}
return _u_d(e)
}
function _u_d(t) {
for (var e = "", n = 0, r = 0, o = 0, i = 0; n < t.length;)
(r = t.charCodeAt(n)) < 128 ? (e += String.fromCharCode(r),
n++) : r > 191 && r < 224 ? (o = t.charCodeAt(n + 1),
e += String.fromCharCode((31 & r) << 6 | 63 & o),
n += 2) : (o = t.charCodeAt(n + 1),
i = t.charCodeAt(n + 2),
e += String.fromCharCode((15 & r) << 12 | (63 & o) << 6 | 63 & i),
n += 3);
return e
}
function get_decrypt_data(encrypt_data) {
var d = d1(encrypt_data),
y = d2(d)
return y;
}