PageSourceSearch

https://cdn-ssl.vegasworld.com/fx/js/lib/md5.js?v=485.13151.14-a-main-2026-09-12-21

js vegasworld.com collected 2026-09-24 09:49:14 UTC 5,902 bytes, 179 lines download raw bytes

1// http://www.myersdaily.org/joseph/javascript/md5.js
2function MD5_md5cycle(x, k) {
3	var a = x[0], b = x[1], c = x[2], d = x[3];
4
5	a = MD5_ff(a, b, c, d, k[0], 7, -680876936);
6	d = MD5_ff(d, a, b, c, k[1], 12, -389564586);
7	c = MD5_ff(c, d, a, b, k[2], 17, 606105819);
8	b = MD5_ff(b, c, d, a, k[3], 22, -1044525330);
9	a = MD5_ff(a, b, c, d, k[4], 7, -176418897);
10	d = MD5_ff(d, a, b, c, k[5], 12, 1200080426);
11	c = MD5_ff(c, d, a, b, k[6], 17, -1473231341);
12	b = MD5_ff(b, c, d, a, k[7], 22, -45705983);
13	a = MD5_ff(a, b, c, d, k[8], 7, 1770035416);
14	d = MD5_ff(d, a, b, c, k[9], 12, -1958414417);
15	c = MD5_ff(c, d, a, b, k[10], 17, -42063);
16	b = MD5_ff(b, c, d, a, k[11], 22, -1990404162);
17	a = MD5_ff(a, b, c, d, k[12], 7, 1804603682);
18	d = MD5_ff(d, a, b, c, k[13], 12, -40341101);
19	c = MD5_ff(c, d, a, b, k[14], 17, -1502002290);
20	b = MD5_ff(b, c, d, a, k[15], 22, 1236535329);
21
22	a = MD5_gg(a, b, c, d, k[1], 5, -165796510);
23	d = MD5_gg(d, a, b, c, k[6], 9, -1069501632);
24	c = MD5_gg(c, d, a, b, k[11], 14, 643717713);
25	b = MD5_gg(b, c, d, a, k[0], 20, -373897302);
26	a = MD5_gg(a, b, c, d, k[5], 5, -701558691);
27	d = MD5_gg(d, a, b, c, k[10], 9, 38016083);
28	c = MD5_gg(c, d, a, b, k[15], 14, -660478335);
29	b = MD5_gg(b, c, d, a, k[4], 20, -405537848);
30	a = MD5_gg(a, b, c, d, k[9], 5, 568446438);
31	d = MD5_gg(d, a, b, c, k[14], 9, -1019803690);
32	c = MD5_gg(c, d, a, b, k[3], 14, -187363961);
33	b = MD5_gg(b, c, d, a, k[8], 20, 1163531501);
34	a = MD5_gg(a, b, c, d, k[13], 5, -1444681467);
35	d = MD5_gg(d, a, b, c, k[2], 9, -51403784);
36	c = MD5_gg(c, d, a, b, k[7], 14, 1735328473);
37	b = MD5_gg(b, c, d, a, k[12], 20, -1926607734);
38
39	a = MD5_hh(a, b, c, d, k[5], 4, -378558);
40	d = MD5_hh(d, a, b, c, k[8], 11, -2022574463);
41	c = MD5_hh(c, d, a, b, k[11], 16, 1839030562);
42	b = MD5_hh(b, c, d, a, k[14], 23, -35309556);
43	a = MD5_hh(a, b, c, d, k[1], 4, -1530992060);
44	d = MD5_hh(d, a, b, c, k[4], 11, 1272893353);
45	c = MD5_hh(c, d, a, b, k[7], 16, -155497632);
46	b = MD5_hh(b, c, d, a, k[10], 23, -1094730640);
47	a = MD5_hh(a, b, c, d, k[13], 4, 681279174);
48	d = MD5_hh(d, a, b, c, k[0], 11, -358537222);
49	c = MD5_hh(c, d, a, b, k[3], 16, -722521979);
50	b = MD5_hh(b, c, d, a, k[6], 23, 76029189);
51	a = MD5_hh(a, b, c, d, k[9], 4, -640364487);
52	d = MD5_hh(d, a, b, c, k[12], 11, -421815835);
53	c = MD5_hh(c, d, a, b, k[15], 16, 530742520);
54	b = MD5_hh(b, c, d, a, k[2], 23, -995338651);
55
56	a = MD5_ii(a, b, c, d, k[0], 6, -198630844);
57	d = MD5_ii(d, a, b, c, k[7], 10, 1126891415);
58	c = MD5_ii(c, d, a, b, k[14], 15, -1416354905);
59	b = MD5_ii(b, c, d, a, k[5], 21, -57434055);
60	a = MD5_ii(a, b, c, d, k[12], 6, 1700485571);
61	d = MD5_ii(d, a, b, c, k[3], 10, -1894986606);
62	c = MD5_ii(c, d, a, b, k[10], 15, -1051523);
63	b = MD5_ii(b, c, d, a, k[1], 21, -2054922799);
64	a = MD5_ii(a, b, c, d, k[8], 6, 1873313359);
65	d = MD5_ii(d, a, b, c, k[15], 10, -30611744);
66	c = MD5_ii(c, d, a, b, k[6], 15, -1560198380);
67	b = MD5_ii(b, c, d, a, k[13], 21, 1309151649);
68	a = MD5_ii(a, b, c, d, k[4], 6, -145523070);
69	d = MD5_ii(d, a, b, c, k[11], 10, -1120210379);
70	c = MD5_ii(c, d, a, b, k[2], 15, 718787259);
71	b = MD5_ii(b, c, d, a, k[9], 21, -343485551);
72
73	x[0] = MD5_add32(a, x[0]);
74	x[1] = MD5_add32(b, x[1]);
75	x[2] = MD5_add32(c, x[2]);
76	x[3] = MD5_add32(d, x[3]);
77
78}
79
80function MD5_cmn(q, a, b, x, s, t) {
81	a = MD5_add32(MD5_add32(a, q), MD5_add32(x, t));
82	return MD5_add32((a << s) | (a >>> (32 - s)), b);
83}
84
85function MD5_ff(a, b, c, d, x, s, t) {
86	return MD5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
87}
88
89function MD5_gg(a, b, c, d, x, s, t) {
90	return MD5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
91}
92
93function MD5_hh(a, b, c, d, x, s, t) {
94	return MD5_cmn(b ^ c ^ d, a, b, x, s, t);
95}
96
97function MD5_ii(a, b, c, d, x, s, t) {
98	return MD5_cmn(c ^ (b | (~d)), a, b, x, s, t);
99}
100
101function MD5_md51(s) {
102	txt = '';
103	var n = s.length,
104		state = [1732584193, -271733879, -1732584194, 271733878], i;
105	for (i = 64; i <= s.length; i += 64) {
106		MD5_md5cycle(state, MD5_md5blk(s.substring(i - 64, i)));
107	}
108	s = s.substring(i - 64);
109	var tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
110	for (i = 0; i < s.length; i++) {
111		tail[i >>
111 2] |= s.charCodeAt(i) << ((i % 4) << 3);
112	}
113	tail[i >> 2] |= 0x80 << ((i % 4) << 3);
114	if (i > 55) {
115		MD5_md5cycle(state, tail);
116		for (i = 0; i < 16; i++) {
117			tail[i] = 0;
118		}
119	}
120	tail[14] = n * 8;
121	MD5_md5cycle(state, tail);
122	return state;
123}
124
125function MD5_md5blk(s) {
126	var md5blks = [], i;
127	for (i = 0; i < 64; i += 4) {
128		md5blks[i >> 2] = s.charCodeAt(i)
129						  + (s.charCodeAt(i + 1) << 8)
130						  + (s.charCodeAt(i + 2) << 16)
131						  + (s.charCodeAt(i + 3) << 24);
132	}
133	return md5blks;
134}
135
136var MD5_hex_chr = '0123456789abcdef'.split('');
137
138function MD5_rhex(n) {
139	var s = '', j = 0;
140	for (; j < 4; j++) {
141		s += MD5_hex_chr[(n >> (j * 8 + 4)) & 0x0F] + MD5_hex_chr[(n >> (j * 8)) & 0x0F];
142	}
143	return s;
144}
145
146function MD5_hex(x) {
147	for (var i = 0; i < x.length; i++) {
148		x[i] = MD5_rhex(x[i]);
149	}
150	return x.join('');
151}
152
153function MD5_add32(a, b) {
154	return (a + b) & 0xFFFFFFFF;
155}
156
157function md5(s) {
158	return MD5_hex(MD5_md51(s));
159}
160
161// flowplay - used in game
162function fcanvas() {
163	var canvas = document.createElement('canvas');
164	var ctx = canvas.getContext('2d');
165	ctx.fillStyle = '#ff66bb';
166	ctx.fillRect(10, 10, 60, 20);
167	ctx.fillStyle = '#0199dd';
168	ctx.fillRect(20, 20, 80, 40);
169	return md5(canvas.toDataURL());
170}
171
172// flowplay - used in game
173function fscreen() {
174	var widthAndHeight = screen.width + 'x' + screen.height;
175	if (screen.orientation && (Math.abs(screen.orientation.angle) === 90 || screen.orientation.angle === 270)) {
176		widthAndHeight = screen.height + 'x' + screen.width;
177	}
178	return md5(widthAndHeight + 'x' + window.devicePixelRatio + 'x' + screen.pixelDepth + 'x' + screen.colorDepth);
179}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.