1// decrypt helper function 2function decryptCharcode(n, start, end, offset) { 3 n = n + offset; 4 if (offset > 0 && n > end) { 5 n = start + (n - end - 1); 6 } else if (offset < 0 && n < start) { 7 n = end - (start - n - 1); 8 } 9 return String.fromCharCode(n); 10} 11// decrypt string 12function decryptString(enc, offset) { 13 var dec = ""; 14 var len = enc.length; 15 for (var i = 0; i < len; i++) { 16 var n = enc.charCodeAt(i); 17 if (n >= 0x2B && n <= 0x3A) { 18 dec += decryptCharcode(n, 0x2B, 0x3A, offset); // 0-9 . , - + / : 19 } else if (n >= 0x40 && n <= 0x5A) { 20 dec += decryptCharcode(n, 0x40, 0x5A, offset); // A-Z @ 21 } else if (n >= 0x61 && n <= 0x7A) { 22 dec += decryptCharcode(n, 0x61, 0x7A, offset); // a-z 23 } else { 24 dec += enc.charAt(i); 25 } 26 } 27 return dec; 28} 29// decrypt spam-protected emails 30function linkTo_UnCryptMailto(s) { 31 location.href = decryptString(s, 2); 32}
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.