По порядку:
1. Выполняет IIFE.
2. Создаёт строку (хитрым образом, значит, скорее всего, что-то нехорошее) из
var a = 'all', b = 'tou'; var src = b + 'c' +'h'; src = 'm' + 'o' + 'd.c' + a + src;
получаем
mod.calltouch
3. Определяет протокол (ведь если будет
https, то он не загрузит из
http файл).
4. На основании протокола собирает строку дальше
http://mod.calltouch
или
https://mod.calltouch
5. Создаёт DOM элемент
script
, назначает ему асинхронную загрузку и устанавливает
src
.
6. В
src
вставляет строку и
.ru/d_client.js?param;ref
с
refferer страницы,
URL и
ВАШИМИ КУКИ!
Таким образом через GET запрос тот, кто владеет
http://mod.calltouch.ru
, получит эти данные.
7. Проверяет есть ли jQuery. Если нет - скачивает. При этом с этого же сайта. Так что там тоже могут быть "закладки".
8. Вставляет на страницу ранее созданный элемент
script
, тем самым вызывая его выполнение.
9. Вот код который загружается с
http://mod.calltouch.ru/d_client.js
:
кодfunction setCall_Cookie(name, value, props) {
props = props || {};
var exp = props.expires;
if (typeof exp == "number" && exp) {
var d = new Date();
d.setTime(d.getTime() + exp * 1000);
exp = props.expires = d;
}
if (exp && exp.toUTCString) {
props.expires = exp.toUTCString();
}
value = encodeURIComponent(value);
var updatedCookie = name + "=" + value;
for (var propName in props) {
updatedCookie += "; " + propName;
var propValue = props[propName];
if (propValue !== true) {
updatedCookie += "=" + propValue;
}
}
updatedCookie += "; path=/";
document.cookie = updatedCookie;
}
var call_value = '0';
10. Эту функцию нужно выполнять, а значит вызов её будет ещё откуда-то. Она устанавливает куки для идентификации вас (знает, что уже "скрипт скачан", какие сайты посещаете, откуда на них перешли и т.д.).