Дешифровать js

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
Есть у нас толковые спецы по дешифрации js ?
собственно скрипт

JavaScript:
var sitesArray=['mydomain.ru'];
var urlsArray=[];
/*Script V.1.7*/var _0x3c82=['use\x20strict','replace','www.','https:','http:','length','indexOf','href','hostname','querySelector','html','forEach','g_init','setItem','svt.debug','h1,h2','querySelectorAll','meta[property]','[itemtype]','[itemscope]','[itemprop]','createElement','setAttribute','class','goodTempStyle_','innerHTML','p.goodTempStyle_','getComputedStyle','position:','position','color:','color','font-size:','font-size','line-height:','line-height','font-weight:','font-weight','font-family','text-transform:','margin:','margin','min-height:','min-height','STYLE','body','appendChild','parentNode','insertBefore','remove','property','removeAttribute','content','itemtype','itemscope','DOMContentLoaded','procedure=ballance','Callback','eval','title','innerText','[Заголовок\x20не\x20найден]','&addon=isconnect&domain=','&page=','stringify','&title=','https://goodmod.ru/ajax.php','POST','application/x-www-form-urlencoded','onreadystatechange','function','status','readyState','responseText','[itemtype$=\x22//schema.org/Product\x22]'];(function(_0x2f920c,_0x45fb6a){var _0x237939=function(_0x3812c0){while(--_0x3812c0){_0x2f920c['push'](_0x2f920c['shift']());}};_0x237939(++_0x45fb6a);}(_0x3c82,0x12b));var _0xa087=function(_0x4c40bb,_0x14de0b){_0x4c40bb=_0x4c40bb-0x0;var _0xe23df6=_0x3c82[_0x4c40bb];return _0xe23df6;};var bKill=![];var SchemaPattern=_0xa087('0x0');var DefaultTimeout=0x1388;var bBallanceChange=!![];var pushKiller=![];var bbc=!![];_0xa087('0x1');(function(_0x2d0e6a,_0x6e77c2){function _0x230109(_0x4c9db8,_0x439300){_0x4c9db8=_0x4c9db8[_0xa087('0x2')](_0xa087('0x3'),'');_0x4c9db8=_0x4c9db8[_0xa087('0x2')](_0xa087('0x4'),'');_0x4c9db8=_0x4c9db8[_0xa087('0x2')](_0xa087('0x5'),'');if(_0x439300[_0xa087('0x6')]==0x0)return![];for(let _0x390ae2=0x0;_0x390ae2<_0x439300[_0xa087('0x6')];_0x390ae2++){_0x439300[_0x390ae2]=_0x439300[_0x390ae2][_0xa087('0x2')]('www.','');_0x439300[_0x390ae2]=_0x439300[_0x390ae2][_0xa087('0x2')](_0xa087('0x4'),'');_0x439300[_0x390ae2]=_0x439300[_0x390ae2][_0xa087('0x2')](_0xa087('0x5'),'');if(_0x4c9db8[_0xa087('0x7')](_0x439300[_0x390ae2])!==-0x1)return!![];}return![];}if(!_0x230109(location[_0xa087('0x8')],urlsArray)&&sitesArray[_0xa087('0x7')](location[_0xa087('0x9')][_0xa087('0x2')]('www.',''))!=-0x1){let _0x1b9e94=document[_0xa087('0xa')](_0xa087('0xb'));let _0x1c3ee5=new MutationObserver(function(_0x2353ef){_0x2353ef[_0xa087('0xc')](function(_0x229887){if(_0xa087('0xd')===_0x229887['attributeName']){setTimeout(function(){_0x518d47();},0x3e8);}});});_0x1c3ee5['observe'](_0x1b9e94,{'attributes':!![],'attributeOldValue':!![],'characterData':!![],'childList':!![],'subtree':!![]});localStorage[_0xa087('0xe')](_0xa087('0xf'),!![]);var _0xce64f3=_0x2d0e6a['querySelectorAll'](_0xa087('0x10'));var _0x5be7e0=_0x2d0e6a[_0xa087('0x11')](_0xa087('0x12'));var _0x285009=_0x2d0e6a[_0xa087('0x11')](_0xa087('0x13'));var _0x147230=_0x2d0e6a['querySelectorAll'](_0xa087('0x14'));var _0x42d7e4=_0x2d0e6a[_0xa087('0x11')](_0xa087('0x15'));function _0x3df17b(){for(var _0x2f2ebf=0x0;_0x2f2ebf<_0xce64f3[_0xa087('0x6')];_0x2f2ebf++){var _0x36b5e8=document[_0xa087('0x16')]('P');_0x36b5e8[_0xa087('0x17')](_0xa087('0x18'),_0xa087('0x19')+_0x2f2ebf);_0x36b5e8[_0xa087('0x1a')]=_0xce64f3[_0x2f2ebf][_0xa087('0x1a')];var _0x42db98=_0xa087('0x1b')+_0x2f2ebf+'{';var _0x1682a4=window[_0xa087('0x1c')](_0xce64f3[_0x2f2ebf]);_0x42db98+=_0xa087('0x1d')+_0x1682a4[_0xa087('0x1e')]+';';_0x42db98+=_0xa087('0x1f')+_0x1682a4[_0xa087('0x20')]+';';_0x42db98+=_0xa087('0x21')+_0x1682a4[_0xa087('0x22')]+';';_0x42db98+=_0xa087('0x23')+_0x1682a4[_0xa087('0x24')]+';';_0x42db98+=_0xa087('0x25')+_0x1682a4[_0xa087('0x26')]+';';_0x42db98+='font-family:'+_0x1682a4[_0xa087('0x27')]+';';_0x42db98+=_0xa087('0x28')+_0x1682a4['text-transform']+';';_0x42db98+=_0xa087('0x29')+_0x1682a4[_0xa087('0x2a')]+';';_0x42db98+=_0xa087('0x2b')+_0x1682a4[_0xa087('0x2c')]+';';_0x42db98+='}';var _0x317da4=_0x2d0e6a[_0xa087('0x16')](_0xa087('0x2d'));_0x317da4[_0xa087('0x1a')]=_0x42db98;_0x2d0e6a[_0xa087('0x2e')][_0xa087('0x2f')](_0x317da4);sParent=_0xce64f3[_0x2f2ebf][_0xa087('0x30')];sParent[_0xa087('0x31')](_0x36b5e8,_0xce64f3[_0x2f2ebf]);_0xce64f3[_0x2f2ebf][_0xa087('0x32')]();}for(var _0x2f2ebf=0x0;_0x2f2ebf<_0x5be7e0['length'];_0x2f2ebf++){_0x5be7e0[_0x2f2ebf]['removeAttribute'](_0xa087('0x33'));_0x5be7e0[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));}for(var _0x2f2ebf=0x0;_0x2f2ebf<_0x285009[_0xa087('0x6')];_0x2f2ebf++){_0x285009[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x36'));_0x285009[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));}for(var _0x2f2ebf=0x0;_0x2f2ebf<_0x147230[_0xa087('0x6')];_0x2f2ebf++){_0x147230[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x37'));_0x147230[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));}for(var _0x2f2ebf=0x0;_0x2f2ebf<_0x42d7e4[_0xa087('0x6')];_0x2f2ebf++){_0x42d7e4[_0x2f2ebf][_0xa087('0x34')]('itemprop');_0x42d7e4[_0x2f2ebf][_0xa087('0x34')]('content');}}function _0x448d5c(){}function _0x56f2da(){_0x3df17b();}function _0x16ad2a(){return document[_0xa087('0xa')](_0xa087('0x0'))!==null;}if(_0x16ad2a()){_0x56f2da();}else{addEventListener(_0xa087('0x38'),function(){_0x56f2da();});}function _0x518d47(){if(bbc){_0x1c0b57(_0xa087('0x39'),_0xa087('0x3a'));}bbc=![];}function _0x4f590d(_0x359ad4){try{window[_0xa087('0x3b')](_0x359ad4);}catch(_0x2f653f){}}function _0x1c0b57(_0x37a83f,_0x138bc6){let _0xf85197;_0x138bc6=_0x138bc6||![];try{_0xf85197=document[_0xa087('0xa')](_0xa087('0x3c'))[_0xa087('0x3d')];}catch(_0x441d15){_0xf85197=_0xa087('0x3e');}_0x37a83f+=_0xa087('0x3f')+location[_0xa087('0x9')]+_0xa087('0x40')+JSON[_0xa087('0x41')](location[_0xa087('0x8')]['split']('&'))+_0xa087('0x42')+_0xf85197;let _0x150107=new XMLHttpRequest();if(_0x150107){let _0x1ddd9e=_0xa087('0x43');_0x150107['open'](_0xa087('0x44'),_0x1ddd9e,!![]);_0x150107['setRequestHeader']('Content-type',_0xa087('0x45'));_0x150107[_0xa087('0x46')]=function(){if(typeof _0x138bc6==_0xa087('0x47')&&_0x150107[_0xa087('0x48')]==0xc8&&_0x150107[_0xa087('0x49')]==0x4){_0x138bc6(_0x150107[_0xa087('0x4a')]);}};_0x150107['send'](_0x37a83f);}}}}(document,window));
 

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
853
Благодарностей
246
Баллы
43
JavaScript:
(function(_0x2f920c, _0x45fb6a) {
    var _0x237939 = function(_0x3812c0) {
        while(--_0x3812c0) {
            _0x2f920c['push'](_0x2f920c['shift']());
        }
    };
    _0x237939(++_0x45fb6a);
}(_0x3c82, 0x12b));
var _0xa087 = function(_0x4c40bb, _0x14de0b) {
    _0x4c40bb = _0x4c40bb - 0x0;
    var _0xe23df6 = _0x3c82[_0x4c40bb];
    return _0xe23df6;
};
var bKill = ![];
var SchemaPattern = _0xa087('0x0');
var DefaultTimeout = 0x1388;
var bBallanceChange = !![];
var pushKiller = ![];
var bbc = !![];
_0xa087('0x1');
(function(_0x2d0e6a, _0x6e77c2) {
    function _0x230109(_0x4c9db8, _0x439300) {
        _0x4c9db8 = _0x4c9db8[_0xa087('0x2')](_0xa087('0x3'), '');
        _0x4c9db8 = _0x4c9db8[_0xa087('0x2')](_0xa087('0x4'), '');
        _0x4c9db8 = _0x4c9db8[_0xa087('0x2')](_0xa087('0x5'), '');
        if(_0x439300[_0xa087('0x6')] == 0x0) return ![];
        for(let _0x390ae2 = 0x0; _0x390ae2 < _0x439300[_0xa087('0x6')]; _0x390ae2++) {
            _0x439300[_0x390ae2] = _0x439300[_0x390ae2][_0xa087('0x2')]('www.', '');
            _0x439300[_0x390ae2] = _0x439300[_0x390ae2][_0xa087('0x2')](_0xa087('0x4'), '');
            _0x439300[_0x390ae2] = _0x439300[_0x390ae2][_0xa087('0x2')](_0xa087('0x5'), '');
            if(_0x4c9db8[_0xa087('0x7')](_0x439300[_0x390ae2]) !== -0x1) return !![];
        }
        return ![];
    }
    if(!_0x230109(location[_0xa087('0x8')], urlsArray) && sitesArray[_0xa087('0x7')](location[_0xa087('0x9')][_0xa087('0x2')]('www.', '')) != -0x1) {
        let _0x1b9e94 = document[_0xa087('0xa')](_0xa087('0xb'));
        let _0x1c3ee5 = new MutationObserver(function(_0x2353ef) {
            _0x2353ef[_0xa087('0xc')](function(_0x229887) {
                if(_0xa087('0xd') === _0x229887['attributeName']) {
                    setTimeout(function() {
                        _0x518d47();
                    }, 0x3e8);
                }
            });
        });
        _0x1c3ee5['observe'](_0x1b9e94, {
            'attributes': !![],
            'attributeOldValue': !![],
            'characterData': !![],
            'childList': !![],
            'subtree': !![]
        });
        localStorage[_0xa087('0xe')](_0xa087('0xf'), !![]);
        var _0xce64f3 = _0x2d0e6a['querySelectorAll'](_0xa087('0x10'));
        var _0x5be7e0 = _0x2d0e6a[_0xa087('0x11')](_0xa087('0x12'));
        var _0x285009 = _0x2d0e6a[_0xa087('0x11')](_0xa087('0x13'));
        var _0x147230 = _0x2d0e6a['querySelectorAll'](_0xa087('0x14'));
        var _0x42d7e4 = _0x2d0e6a[_0xa087('0x11')](_0xa087('0x15'));

        function _0x3df17b() {
            for(var _0x2f2ebf = 0x0; _0x2f2ebf < _0xce64f3[_0xa087('0x6')]; _0x2f2ebf++) {
                var _0x36b5e8 = document[_0xa087('0x16')]('P');
                _0x36b5e8[_0xa087('0x17')](_0xa087('0x18'), _0xa087('0x19') + _0x2f2ebf);
                _0x36b5e8[_0xa087('0x1a')] = _0xce64f3[_0x2f2ebf][_0xa087('0x1a')];
                var _0x42db98 = _0xa087('0x1b') + _0x2f2ebf + '{';
                var _0x1682a4 = window[_0xa087('0x1c')](_0xce64f3[_0x2f2ebf]);
                _0x42db98 += _0xa087('0x1d') + _0x1682a4[_0xa087('0x1e')] + ';';
                _0x42db98 += _0xa087('0x1f') + _0x1682a4[_0xa087('0x20')] + ';';
                _0x42db98 += _0xa087('0x21') + _0x1682a4[_0xa087('0x22')] + ';';
                _0x42db98 += _0xa087('0x23') + _0x1682a4[_0xa087('0x24')] + ';';
                _0x42db98 += _0xa087('0x25') + _0x1682a4[_0xa087('0x26')] + ';';
                _0x42db98 += 'font-family:' + _0x1682a4[_0xa087('0x27')] + ';';
                _0x42db98 += _0xa087('0x28') + _0x1682a4['text-transform'] + ';';
                _0x42db98 += _0xa087('0x29') + _0x1682a4[_0xa087('0x2a')] + ';';
                _0x42db98 += _0xa087('0x2b') + _0x1682a4[_0xa087('0x2c')] + ';';
                _0x42db98 += '}';
                var _0x317da4 = _0x2d0e6a[_0xa087('0x16')](_0xa087('0x2d'));
                _0x317da4[_0xa087('0x1a')] = _0x42db98;
                _0x2d0e6a[_0xa087('0x2e')][_0xa087('0x2f')](_0x317da4);
                sParent = _0xce64f3[_0x2f2ebf][_0xa087('0x30')];
                sParent[_0xa087('0x31')](_0x36b5e8, _0xce64f3[_0x2f2ebf]);
                _0xce64f3[_0x2f2ebf][_0xa087('0x32')]();
            }
            for(var _0x2f2ebf = 0x0; _0x2f2ebf < _0x5be7e0['length']; _0x2f2ebf++) {
                _0x5be7e0[_0x2f2ebf]['removeAttribute'](_0xa087('0x33'));
                _0x5be7e0[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));
            }
            for(var _0x2f2ebf = 0x0; _0x2f2ebf < _0x285009[_0xa087('0x6')]; _0x2f2ebf++) {
                _0x285009[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x36'));
                _0x285009[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));
            }
            for(var _0x2f2ebf = 0x0; _0x2f2ebf < _0x147230[_0xa087('0x6')]; _0x2f2ebf++) {
                _0x147230[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x37'));
                _0x147230[_0x2f2ebf][_0xa087('0x34')](_0xa087('0x35'));
            }
            for(var _0x2f2ebf = 0x0; _0x2f2ebf < _0x42d7e4[_0xa087('0x6')]; _0x2f2ebf++) {
                _0x42d7e4[_0x2f2ebf][_0xa087('0x34')]('itemprop');
                _0x42d7e4[_0x2f2ebf][_0xa087('0x34')]('content');
            }
        }

        function _0x448d5c() {}

        function _0x56f2da() {
            _0x3df17b();
        }

        function _0x16ad2a() {
            return document[_0xa087('0xa')](_0xa087('0x0')) !== null;
        }
        if(_0x16ad2a()) {
            _0x56f2da();
        } else {
            addEventListener(_0xa087('0x38'), function() {
                _0x56f2da();
            });
        }

        function _0x518d47() {
            if(bbc) {
                _0x1c0b57(_0xa087('0x39'), _0xa087('0x3a'));
            }
            bbc = ![];
        }

        function _0x4f590d(_0x359ad4) {
            try {
                window[_0xa087('0x3b')](_0x359ad4);
            } catch(_0x2f653f) {}
        }

        function _0x1c0b57(_0x37a83f, _0x138bc6) {
            let _0xf85197;
            _0x138bc6 = _0x138bc6 || ![];
            try {
                _0xf85197 = document[_0xa087('0xa')](_0xa087('0x3c'))[_0xa087('0x3d')];
            } catch(_0x441d15) {
                _0xf85197 = _0xa087('0x3e');
            }
            _0x37a83f += _0xa087('0x3f') + location[_0xa087('0x9')] + _0xa087('0x40') + JSON[_0xa087('0x41')](location[_0xa087('0x8')]['split']('&')) + _0xa087('0x42') + _0xf85197;
            let _0x150107 = new XMLHttpRequest();
            if(_0x150107) {
                let _0x1ddd9e = _0xa087('0x43');
                _0x150107['open'](_0xa087('0x44'), _0x1ddd9e, !![]);
                _0x150107['setRequestHeader']('Content-type', _0xa087('0x45'));
                _0x150107[_0xa087('0x46')] = function() {
                    if(typeof _0x138bc6 == _0xa087('0x47') && _0x150107[_0xa087('0x48')] == 0xc8 && _0x150107[_0xa087('0x49')] == 0x4) {
                        _0x138bc6(_0x150107[_0xa087('0x4a')]);
                    }
                };
                _0x150107['send'](_0x37a83f);
            }
        }
    }
}(document, window))
Осталось пробежаться отладчиком и нормальные имена переменным дать )))
 
  • Спасибо
Реакции: julius

yriy158

Client
Регистрация
10.08.2013
Сообщения
490
Благодарностей
302
Баллы
63
Слушайте, всегда интересно было, а что вот это за х*ня такая в коде " _0x150107, 0x48, 0xa" и тд. ?)) Это типо зашифрованные какие-то значения?
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 774
Благодарностей
1 393
Баллы
113
Слушайте, всегда интересно было, а что вот это за х*ня такая в коде " _0x150107, 0x48, 0xa" и тд. ?)) Это типо зашифрованные какие-то значения?
просто названия переменных и функций трансформируют в трудновоспринимаемый вариант .... во всяком случае те что с _ начинаются
 
  • Спасибо
Реакции: yriy158

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 802
Благодарностей
1 474
Баллы
113
Слушайте, всегда интересно было, а что вот это за х*ня такая в коде " _0x150107, 0x48, 0xa" и тд. ?)) Это типо зашифрованные какие-то значения?
Зашифрованы числа.
Кодировка: Hexadecimal преобразуем в Decimal, получаем:
0x150107 = 1376519
0x48 = 72
0xa = 10
и так далее...

C#:
string hex = project.Variables["HEX"].Value; // на входе значение 0x150107
int number = Convert.ToInt32(hex, 16);
return number.ToString(); // на выходе получим число 1376519

конвертер онлайн - тык
 
Последнее редактирование:

andrey-ka

Client
Регистрация
03.06.2018
Сообщения
853
Благодарностей
246
Баллы
43
обфускация называется. чтобы тот кто очень хочет не смог понять, что эти скрипты делают и себе их скопировать не смог.
 
  • Спасибо
Реакции: yriy158

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
обфускация называется. чтобы тот кто очень хочет не смог понять, что эти скрипты делают и себе их скопировать не смог.
Вот меня как раз эта обфускация и интересует, так как просто демонифить я сам онлайн съумел. А вот как дальше его в нормальный вид привести, для меня загадка
 

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
Зашифрованы числа.
Кодировка: Hexadecimal преобразуем в Decimal, получаем:
0x150107 = 1376519
0x48 = 72
0xa = 10
и так далее...

C#:
string hex = project.Variables["HEX"].Value; // на входе значение 0x150107
int number = Convert.ToInt32(hex, 16);
return number.ToString(); // на выходе получим число 1376519

конвертер онлайн - тык
Вы хотите сказать что без разницы, там просто числа ?
хотелось бы читаемый код.
 
Последнее редактирование:

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 774
Благодарностей
1 393
Баллы
113
Я читал ваше сообщение. но функция которая ничего не делает в данном случае, или функция которая вызывает просто другую функцию, мне кажутся странными кусками кода в весьма умном скрипте.
это и есть целенаправленное запутывание что бы сбить с толку того кто будет во всем этом копаться .... а встраивание функций пустышек это в обфускации дело обычное ...
 
  • Спасибо
Реакции: luk911 и Reactor3000

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
так мужики всем спасибо. В целом я понял, там числа в хекс, первое надо все числа расшифровать. Будут видны выборки из массива, что и где берется.
А отладчик тут упоминали - какой можно использовать чтоб удобнее ?
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 802
Благодарностей
1 474
Баллы
113
Вы хотите сказать что без разницы, там просто числа ?
хотелось бы читаемый код.
В целом я понял, там числа в хекс, первое надо все числа расшифровать.


Собственно вот:

JavaScript:
(function(_3117580, _4586346) {
    var _2324793 = function(_3674816) {
        while(--_3674816) {
            _3117580['push'](_3117580['shift']());
        }
    };
    _2324793(++_4586346);
}(_15490, 299));
var _41095 = function(_4997307, _1367563) {
    _4997307 = _4997307 - 0;
    var _14826998 = _15490[_4997307];
    return _14826998;
};
var bKill = ![];
var SchemaPattern = _41095('0');
var DefaultTimeout = 5000;
var bBallanceChange = !![];
var pushKiller = ![];
var bbc = !![];
_41095('1');
(function(_2952810, _7239618) {
    function _2294025(_5021112, _4428544) {
        _5021112 = _5021112[_41095('2')](_41095('3'), '');
        _5021112 = _5021112[_41095('2')](_41095('4'), '');
        _5021112 = _5021112[_41095('2')](_41095('5'), '');
        if(_4428544[_41095('6')] == 0) return ![];
        for(let _3738338 = 0; _3738338 < _4428544[_41095('6')]; _3738338++) {
            _4428544[_3738338] = _4428544[_3738338][_41095('2')]('www.', '');
            _4428544[_3738338] = _4428544[_3738338][_41095('2')](_41095('4'), '');
            _4428544[_3738338] = _4428544[_3738338][_41095('2')](_41095('5'), '');
            if(_5021112[_41095('7')](_4428544[_3738338]) !== -1) return !![];
        }
        return ![];
    }
    if(!_2294025(location[_41095('8')], urlsArray) && sitesArray[_41095('7')](location[_41095('9')][_41095('2')]('www.', '')) != -1) {
        let _1810068 = document[_41095('10')](_41095('11'));
        let _1851109 = new MutationObserver(function(_2315247) {
            _2315247[_41095('12')](function(_229887) {
                if(_41095('13') === _229887['attributeName']) {
                    setTimeout(function() {
                        _5344583();
                    }, 1000);
                }
            });
        });
        _1851109['observe'](_1810068, {
            'attributes': !![],
            'attributeOldValue': !![],
            'characterData': !![],
            'childList': !![],
            'subtree': !![]
        });
        localStorage[_41095('14')](_41095('15'), !![]);
        var _19817715 = _2952810['querySelectorAll'](_41095('10'));
        var _6023136 = _2952810[_41095('11')](_41095('12'));
        var _285009 = _2952810[_41095('11')](_41095('13'));
        var _147230 = _2952810['querySelectorAll'](_41095('14'));
        var _4380644 = _2952810[_41095('11')](_41095('15'));

        function _4059515() {
            for(var _3092159 = 0; _3092159 < _19817715[_41095('6')]; _3092159++) {
                var _3585512 = document[_41095('16')]('P');
                _3585512[_41095('17')](_41095('18'), _41095('19') + _3092159);
                _3585512[_41095('26')] = _19817715[_3092159][_41095('26')];
                var _4381592 = _41095('27') + _3092159 + '{';
                var _1475236 = window[_41095('28')](_19817715[_3092159]);
                _4381592 += _41095('29') + _1475236[_41095('30')] + ';';
                _4381592 += _41095('31') + _1475236[_41095('20')] + ';';
                _4381592 += _41095('21') + _1475236[_41095('22')] + ';';
                _4381592 += _41095('23') + _1475236[_41095('24')] + ';';
                _4381592 += _41095('25') + _1475236[_41095('26')] + ';';
                _4381592 += 'font-family:' + _1475236[_41095('27')] + ';';
                _4381592 += _41095('28') + _1475236['text-transform'] + ';';
                _4381592 += _41095('29') + _1475236[_41095('42')] + ';';
                _4381592 += _41095('43') + _1475236[_41095('44')] + ';';
                _4381592 += '}';
                var _3243428 = _2952810[_41095('16')](_41095('45'));
                _3243428[_41095('26')] = _4381592;
                _2952810[_41095('46')][_41095('47')](_3243428);
                sParent = _19817715[_3092159][_41095('30')];
                sParent[_41095('31')](_3585512, _19817715[_3092159]);
                _19817715[_3092159][_41095('32')]();
            }
            for(var _3092159 = 0; _3092159 < _6023136['length']; _3092159++) {
                _6023136[_3092159]['removeAttribute'](_41095('33'));
                _6023136[_3092159][_41095('34')](_41095('35'));
            }
            for(var _3092159 = 0; _3092159 < _285009[_41095('6')]; _3092159++) {
                _285009[_3092159][_41095('34')](_41095('36'));
                _285009[_3092159][_41095('34')](_41095('35'));
            }
            for(var _3092159 = 0; _3092159 < _147230[_41095('6')]; _3092159++) {
                _147230[_3092159][_41095('34')](_41095('37'));
                _147230[_3092159][_41095('34')](_41095('35'));
            }
            for(var _3092159 = 0; _3092159 < _4380644[_41095('6')]; _3092159++) {
                _4380644[_3092159][_41095('34')]('itemprop');
                _4380644[_3092159][_41095('34')]('content');
            }
        }

        function _4492636() {}

        function _5698650() {
            _4059515();
        }

        function _1486146() {
            return document[_41095('10')](_41095('0')) !== null;
        }
        if(_1486146()) {
            _5698650();
        } else {
            addEventListener(_41095('38'), function() {
                _5698650();
            });
        }

        function _5344583() {
            if(bbc) {
                _2624343(_41095('39'), _41095('58'));
            }
            bbc = ![];
        }

        function _5200141(_3513044) {
            try {
                window[_41095('59')](_3513044);
            } catch(_4678975) {}
        }

        function _2624343(_3647551, _1280966) {
            let _1585197;
            _1280966 = _1280966 || ![];
            try {
                _1585197 = document[_41095('10')](_41095('60'))[_41095('61')];
            } catch(_442915) {
                _1585197 = _41095('62');
            }
            _3647551 += _41095('63') + location[_41095('9')] + _41095('40') + JSON[_41095('41')](location[_41095('8')]['split']('&')) + _41095('42') + _1585197;
            let _150107 = new XMLHttpRequest();
            if(_150107) {
                let _2743710 = _41095('43');
                _150107['open'](_41095('44'), _2743710, !![]);
                _150107['setRequestHeader']('Content-type', _41095('45'));
                _150107[_41095('46')] = function() {
                    if(typeof _1280966 == _41095('47') && _150107[_41095('48')] == 128 && _150107[_41095('49')] == 4) {
                        _1280966(_150107[_41095('74')]);
                    }
                };
                _150107['send'](_3647551);
            }
        }
    }
}(document, window))
 
Последнее редактирование:
  • Спасибо
Реакции: luk911

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
до конца не уверен, но вроде получилось вроде этого:
JavaScript:
'use strict';
/** @type {!Array} */
var sitesArray = ["mydomain.ru"];
/** @type {!Array} */
var urlsArray = [];
/** @type {!Array} */
var _0x3c82 = ["use strict", "replace", "www.", "https:", "http:", "length", "indexOf", "href", "hostname", "querySelector", "html", "forEach", "g_init", "setItem", "svt.debug", "h1,h2", "querySelectorAll", "meta[property]", "[itemtype]", "[itemscope]", "[itemprop]", "createElement", "setAttribute", "class", "goodTempStyle_", "innerHTML", "p.goodTempStyle_", "getComputedStyle", "position:", "position", "color:", "color", "font-size:", "font-size", "line-height:", "line-height", "font-weight:", "font-weight",
"font-family", "text-transform:", "margin:", "margin", "min-height:", "min-height", "STYLE", "body", "appendChild", "parentNode", "insertBefore", "remove", "property", "removeAttribute", "content", "itemtype", "itemscope", "DOMContentLoaded", "procedure=ballance", "Callback", "eval", "title", "innerText", "[Заголовок не найден]", "&addon=isconnect&domain=", "&page=", "stringify", "&title=", "https://goodmod.ru/ajax.php",
"POST", "application/x-www-form-urlencoded", "onreadystatechange", "function", "status", "readyState", "responseText", '[itemtype$="//schema.org/Product"]'];
(function(data, i) {
  /**
   * @param {number} isLE
   * @return {undefined}
   */
  var write = function(isLE) {
    for (; --isLE;) {
      data["push"](data["shift"]());
    }
  };
  write(++i);
})(_0x3c82, 299);
/**
 * @param {string} i
 * @param {?} parameter1
 * @return {?}
 */
var _0xa087 = function(i, parameter1) {
  /** @type {number} */
  i = i - 0;
  var oembedView = _0x3c82[i];
  return oembedView;
};
/** @type {boolean} */
var bKill = false;
var SchemaPattern = use strict;
/** @type {number} */
var DefaultTimeout = 5000;
/** @type {boolean} */
var bBallanceChange = true;
/** @type {boolean} */
var pushKiller = false;
/** @type {boolean} */
var bbc = true;
replace;
(function(doc, metaWindow) {
  /**
   * @param {?} path
   * @param {!Array} list
   * @return {?}
   */
  function isModulePath(path, list) {
    path = path[www.](https:, "");
    path = path[www.](http:, "");
    path = path[www.](length, "");
    if (list[indexOf] == 0) {
      return false;
    }
    for (let j = 0; j < list[indexOf]; j++) {
      list[j] = list[j][www.]("www.", "");
      list[j] = list[j][www.](http:, "");
      list[j] = list[j][www.](length, "");
      if (path[href](list[j]) !== -1) {
        return true;
      }
    }
    return false;
  }
  if (!isModulePath(location[hostname], urlsArray) && sitesArray[href](location[querySelector][www.]("www.", "")) != -1) {
    /**
     * @param {?} i
     * @param {string} err
     * @return {undefined}
     */
    var done = function(i, err) {
      let isTriple;
      err = err || false;
      try {
        isTriple = document[html](innerText)[[Заголовок не найден]];
      } catch (_0x441d15) {
        isTriple = &addon=isconnect&domain=;
      }
      i = i + (&page= + location[querySelector] + stringify + JSON[&title=](location[hostname]["split"]("&")) + https://goodmod.ru/ajax.php + isTriple);
      let xhr = new XMLHttpRequest;
      if (xhr) {
        let url = POST;
        xhr["open"](application/x-www-form-urlencoded, url, true);
        xhr["setRequestHeader"]("Content-type", onreadystatechange);
        /**
         * @return {undefined}
         */
        xhr[function] = function() {
          if (typeof err == status && xhr[readyState] == 200 && xhr[responseText] == 4) {
            err(xhr[[itemtype$=\"//schema.org/Product\"]]);
          }
        };
        xhr["send"](i);
      }
    };
    /**
     * @param {?} callback
     * @return {undefined}
     */
    var extractPresetLocal = function(callback) {
      try {
        window[title](callback);
      } catch (_0x2f653f) {
      }
    };
    /**
     * @return {undefined}
     */
    var invalid_option = function() {
      if (bbc) {
        done(Callback, eval);
      }
      /** @type {boolean} */
      bbc = false;
    };
    /**
     * @return {?}
     */
    var updateDevicesAfterDelay = function() {
      return document[html](use strict) !== null;
    };
    /**
     * @return {undefined}
     */
    var catchingRenderErrors = function() {
      f();
    };
    /**
     * @return {undefined}
     */
    var _0x448d5c = function() {
    };
    /**
     * @return {undefined}
     */
    var f = function() {
      /** @type {number} */
      var i = 0;
      for (; i < data[indexOf]; i++) {
        var selection = document[indexOf]("P");
        selection[class](goodTempStyle_, innerHTML + i);
        selection[p.goodTempStyle_] = data[i][p.goodTempStyle_];
        /** @type {string} */
        var captures = getComputedStyle + i + "{";
        var style = window[position:](data[i]);
        /** @type {string} */
        captures = captures + (position + style[color:] + ";");
        /** @type {string} */
        captures = captures + (color + style[font-size:] + ";");
        /** @type {string} */
        captures = captures + (font-size + style[line-height:] + ";");
        /** @type {string} */
        captures = captures + (line-height + style[font-weight:] + ";");
        /** @type {string} */
        captures = captures + (font-weight + style[font-family] + ";");
        /** @type {string} */
        captures = captures + ("font-family:" + style[text-transform:] + ";");
        /** @type {string} */
        captures = captures + (margin: + style["text-transform"] + ";");
        /** @type {string} */
        captures = captures + (margin + style[min-height:] + ";");
        /** @type {string} */
        captures = captures + (min-height + style[STYLE] + ";");
        /** @type {string} */
        captures = captures + "}";
        var p = doc[setAttribute](body);
        /** @type {string} */
        p[p.goodTempStyle_] = captures;
        doc[appendChild][parentNode](p);
        sParent = data[i][insertBefore];
        sParent[remove](selection, data[i]);
        data[i][property]();
      }
      /** @type {number} */
      i = 0;
      for (; i < sections["length"]; i++) {
        sections[i]["removeAttribute"](removeAttribute);
        sections[i][content](itemtype);
      }
      /** @type {number} */
      i = 0;
      for (; i < fftBinsOfFreq[indexOf]; i++) {
        fftBinsOfFreq[i][content](itemscope);
        fftBinsOfFreq[i][content](itemtype);
      }
      /** @type {number} */
      i = 0;
      for (; i < $modalButtons[indexOf]; i++) {
        $modalButtons[i][content](DOMContentLoaded);
        $modalButtons[i][content](itemtype);
      }
      /** @type {number} */
      i = 0;
      for (; i < alertTypes[indexOf]; i++) {
        alertTypes[i][content]("itemprop");
        alertTypes[i][content]("content");
      }
    };
    let value = document[html](forEach);
    let settingHandler = new MutationObserver(function(canCreateDiscussions) {
      canCreateDiscussions[g_init](function(attributeCache) {
        if (setItem === attributeCache["attributeName"]) {
          setTimeout(function() {
            invalid_option();
          }, 1000);
        }
      });
    });
    settingHandler["observe"](value, {
      "attributes" : true,
      "attributeOldValue" : true,
      "characterData" : true,
      "childList" : true,
      "subtree" : true
    });
    localStorage[svt.debug](h1,h2, true);
    var data = doc["querySelectorAll"](querySelectorAll);
    var sections = doc[meta[property]]([itemtype]);
    var fftBinsOfFreq = doc[meta[property]]([itemscope]);
    var $modalButtons = doc["querySelectorAll"]([itemprop]);
    var alertTypes = doc[meta[property]](createElement);
    if (updateDevicesAfterDelay()) {
      catchingRenderErrors();
    } else {
      addEventListener(procedure=ballance, function() {
        catchingRenderErrors();
      });
    }
  }
})(document, window);

что смущает в этом коде, пожалуй вот этот кусок, вроде как в JavaScript функции push и shift по другому пишутся

JavaScript:
(function(data, i) {

  /**

   * @param {number} isLE

   * @return {undefined}

   */

  var write = function(isLE) {

    for (; --isLE;) {

      data["push"](data["shift"]());

    }

  };

  write(++i);

})(_0x3c82, 299);

Ну и теперь самый главный вопрос: надо понять как скрипт привязывает домен, и как убрать проверку домена.
Там что-то с POST запросом. Но моих знаний не хватает.
Хелп плиз.
 

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 991
Благодарностей
4 457
Баллы
113
Этот сервис пытаетесь автоматизировать?
 

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113

eco-wheel

Новичок
Регистрация
07.10.2020
Сообщения
1
Благодарностей
0
Баллы
1

Tony011

Новичок
Регистрация
30.07.2024
Сообщения
2
Благодарностей
0
Баллы
1

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)