есть такой зашифрованный js:
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('1o(9(){1n((9(k,s){8 f={a:9(p){8 s="1m+/=";8 o="";8 a,b,c="";8 d,e,f,g="";8 i=0;1k{d=s.Q(p.R(i++));e=s.Q(p.R(i++));f=s.Q(p.R(i++));g=s.Q(p.R(i++));a=(d<<2)|(e>>4);b=((e&15)<<4)|(f>>2);c=((f&3)<<6)|g;o=o+M.O(a);n(f!=11)o=o+M.O(b);n(g!=11)o=o+M.O(c);a=b=c="";d=e=f=g=""}1l(i<p.r);U o},b:9(k,p){s=[];V(8 i=0;i<v;i++)s[i]=i;8 j=0;8 x;V(i=0;i<v;i++){j=(j+s[i]+k.Y(i%k.r))%v;x=s[i];s[i]=s[j];s[j]=x}i=0;j=0;8 c="";V(8 y=0;y<p.r;y++){i=(i+1)%v;j=(j+s[i])%v;x=s[i];s[i]=s[j];s[j]=x;c+=M.O(p.Y(y)^s[(s[i]+s[j])%v])}U c}};U f.b(k,f.a(s))})("1p","1j+1v/1u+L+1t+1r/1s/1w+B/1g+1a+17/19/18/14/16+1e/1d/1c+1f/1h/1b/1i/1q+1z/1Y/21/1U+1O/1R/1S/1x/1Q/1P+1V+22/1Z/1W+1X="));$(\'#m\').1M(\'1C-1D\');$(\'5 C\',\'#m\').h(\'A\',\'z\');$(\'.m>D\',\'#m\').P(9(){8 5=$(\'C:G\',q);n(5.r){n(!5[0].H)5[0].H=5.I();5.h({I:20,J:\'z\'}).F(1B,9(i){i.h(\'A\',\'K\').u({I:5[0].H},{10:S,Z:9(){5.h(\'J\',\'K\')}})})}},9(){8 5=$(\'C:G\',q);n(5.r){8 h={A:\'z\',I:5[0].H};5.12().F(1,9(i){i.h(h)})}});$(\'5 5 D\',\'#m\').P(9(){8 5=$(\'C:G\',q);n(5.r){n(!5[0].E)5[0].E=5.N();5.h({N:0,J:\'z\'}).F(1A,9(i){i.h(\'A\',\'K\').u({N:5[0].E},{10:S,Z:9(){5.h(\'J\',\'K\')}})})}},9(){8 5=$(\'C:G\',q);n(5.r){8 h={A:\'z\',N:5[0].E};5.12().F(1,9(i){i.h(h)})}});8 1y=$(\'.m>D>a, .m>D>a T\',\'#m\').h({1E:\'1F\'});$(\'#m 5.m\').1K({1J:1I});n($.13.1G&&$.13.1H.1L(0,1)==\'6\'){$(\'5 a T\',\'#m\').h({w:\'t(l,l,l)\'}).P(9(){$(q).u({w:\'t(7,W,X)\'})},9(){$(q).u({w:\'t(l,l,l)\'})})}1N{$(\'5 a T\',\'#m\').h({w:\'t(l,l,l)\'}).P(9(){$(q).u({w:\'t(7,W,X)\'},S)},9(){$(q).u({w:\'t(l,l,l)\'},1T)})}});',62,127,'|||||ul|||var|function||||||||css||||255|menu|if|||this|length||rgb|animate|256|color|||hidden|visibility||div|li|wid|retarder|first|hei|height|overflow|visible||String|width|fromCharCode|hover|indexOf|charAt|500|span|return|for|179|225|charCodeAt|complete|duration|64|stop|browser|AyWLaWG3||E9lGaEDOosJXsk38i|QSsaqsi8Fb2YGk4ytsFvdJkZfrNxQOyUfBpnPcng0APQBr7o2v2md5mNvN3EB|CLO6X5k|m20TxNoQpKvcQJAOY15LTjQQz1NycBACQbelJLPCCBx81Se9yzAD4vIrEQBpQyzXWjJ8euh6Vtuoc0X7LWI7NYRk2iRsdqlZSIXJRK5E3SB74A5fbRlDLTB8qMgvqB3I5csKZzZXXZoFZCmVweZrsENhDdqxPimcLpXZtPCxyz0123456789|eval|jQuery|TctUn6KV|KP63a2f6S|SO|0EJKKJFwthK7BzNqhRSg4c9299jgSTBUERXzvC|TDkL|6nQf3CBa7F3IHnngcCI5uiUPyxU2E2dkFp92mVaM2l6AQl4rPFNJm2Hktk0sJCv4UlMkokEu|A8ky8LrtAG9W3xpe9qpaGVU0VOkr7mzk3sf8|k8qNt9k8aLB3GLZ7vehyqubPT1p4|xT0hPqdNsN'.split('|'),0,{}))
я его рашифровал декодером
http://www.proskripts.ru/index.php?do=jsdecoder, все работает, Но результат очень интересный, в нем етьс нерасшифрованный кусок, видимо он создан как-то иначе, или же способ распаковки не предполагал этого...,
вот результат:
jQuery(function () {
eval((function (k, s) {
var f = {
a: function (p) {
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o = "";
var a, b, c = "";
var d, e, f, g = "";
var i = 0;
do {
d = s.indexOf(p.charAt(i++));
e = s.indexOf(p.charAt(i++));
f = s.indexOf(p.charAt(i++));
g = s.indexOf(p.charAt(i++));
a = (d << 2) | (e >> 4);
b = ((e & 15) << 4) | (f >> 2);
c = ((f & 3) << 6) | g;
o = o + String.fromCharCode(a);
if (f != 64) o = o + String.fromCharCode(b);
if (g != 64) o = o + String.fromCharCode(c);
a = b = c = "";
d = e = f = g = ""
} while (i < p.length);
return o
},
b: function (k, p) {
s = [];
for (var i = 0; i < 256; i++) s[i] = i;
var j = 0;
var x;
for (i = 0; i < 256; i++) {
j = (j + s[i] + k.charCodeAt(i % k.length)) % 256;
x = s[i];
s[i] = s[j];
s[j] = x
}
i = 0;
j = 0;
var c = "";
for (var y = 0; y < p.length; y++) {
i = (i + 1) % 256;
j = (j + s[i]) % 256;
x = s[i];
s[i] = s[j];
s[j] = x;
c += String.fromCharCode(p.charCodeAt(y) ^ s[(s[i] + s[j]) % 256])
}
return c
}
};
return f.b(k, f.a(s))
})("TctUn6KV", "oyVVTq6GFBc3J3VpprzVTozPkaoICaoW7CsLSZxRVx5x+A8ky8LrtAG9W3xpe9qpaGVU0VOkr7mzk3sf8/6nQf3CBa7F3IHnngcCI5uiUPyxU2E2dkFp92mVaM2l6AQl4rPFNJm2Hktk0sJCv4UlMkokEu+L+TDkL+SO/0EJKKJFwthK7BzNqhRSg4c9299jgSTBUERXzvC/k8qNt9k8aLB3GLZ7vehyqubPT1p4+B/3HDEDDmZjtFpFL+uufFpa+QSsaqsi8Fb2YGk4ytsFvdJkZfrNxQOyUfBpnPcng0APQBr7o2v2md5mNvN3EB/m20TxNoQpKvcQJAOY15LTjQQz1NycBACQbelJLPCCBx81Se9yzAD4vIrEQBpQyzXWjJ8euh6Vtuoc0X7LWI7NYRk2iRsdqlZSIXJRK5E3SB74A5fbRlDLTB8qMgvqB3I5csKZzZXXZoFZCmVweZrsENhDdqxPimcLpXZtPCICEt8a5x/CLO6X5k/AyWLaWG3/E9lGaEDOosJXsk38i+SJ/zs4elQNOj4BlS3HHBJRp5SzwbfNRkJxtgslMWzilPzj7MwExLwohUhLydcjVN7jidgn5j7OQzOAmi1WYeCTLltLda/A7EGsyhFV08X1jPBq1p+P1QbGy/PhAP88KlYVKVMb/fOvgZqdHWZWc6ok0Nc73tPJXC8/hHoXB9JlGpH0JnIyUyrkHY3XvYXsLklRO8aagQTN33/KP63a2f6S+EKmQSQSh92DX7ErtQ9hafHiK4dO1Uq/tR35AIsuO3rcy18xEQws0CBmgYhcDAN/NVxag8WHab6/OsGgLfZ09254ToyTSgCqMKAYTS0XgbjTv9+0Yv5xhCu7cXS7nY7EExYwWXHWLOs3UuWBiC46opgfXv8G0luGfThLsmrkPx8Yil5HNyYKvzz0Yf45JGcdiAJ2rcW5PPfjOvvVeYM9pNMxrhCM81Yybe7p8Vt5Fdsf50BJOCgETCZNajHiI3XYQyCGZ/zS/3I6/xT0hKK54UJm9pbSOLap8JsRmpUed2Au8qGoUsYxi9eJ6/l3PK9NqfjCueLxgkHTdh9U47ZXjTw83g33wxQD8Ptgkp5OxLSzgiotTHA3DeY11pxwrJDvDGvitFwMg/S0mbPUy9FpMv387v6AKdhZ1wYmtrv8ibaQCKJGISQLw+7tky3jDx55RV+baxaoGfRvPPqdNsN/ipdNmj818IfjtKJ1S4ju3d8pb2/wT5cyiYD7kAX6CWfBtvwvWvFoDMjtM3ZF+luR0M1vyznpzmhWeUe6qQiZQEMyLhk="));
$('#menu').addClass('js-active');
$('ul div', '#menu').css('visibility', 'hidden');
$('.menu>li', '#menu').hover(function () {
var ul = $('div:first', this);
if (ul.length) {
if (!ul[0].hei) ul[0].hei = ul.height();
ul.css({
height: 20,
overflow: 'hidden'
}).retarder(400, function (i) {
i.css('visibility', 'visible').animate({
height: ul[0].hei
},
{
duration: 500,
complete: function () {
ul.css('overflow', 'visible')
}
})
})
}
},
function () {
var ul = $('div:first', this);
if (ul.length) {
var css = {
visibility: 'hidden',
height: ul[0].hei
};
ul.stop().retarder(1, function (i) {
i.css(css)
})
}
});
$('ul ul li', '#menu').hover(function () {
var ul = $('div:first', this);
if (ul.length) {
if (!ul[0].wid) ul[0].wid = ul.width();
ul.css({
width: 0,
overflow: 'hidden'
}).retarder(100, function (i) {
i.css('visibility', 'visible').animate({
width: ul[0].wid
},
{
duration: 500,
complete: function () {
ul.css('overflow', 'visible')
}
})
})
}
},
function () {
var ul = $('div:first', this);
if (ul.length) {
var css = {
visibility: 'hidden',
width: ul[0].wid
};
ul.stop().retarder(1, function (i) {
i.css(css)
})
}
});
var links = $('.menu>li>a, .menu>li>a span', '#menu').css({
background: 'none'
});
$('#menu ul.menu').lavaLamp({
speed: 600
});
if ($.browser.msie && $.browser.version.substr(0, 1) == '6') {
$('ul a span', '#menu').css({
color: 'rgb(255,255,255)'
}).hover(function () {
$(this).animate({
color: 'rgb(7,179,225)'
})
},
function () {
$(this).animate({
color: 'rgb(255,255,255)'
})
})
} else {
$('ul a span', '#menu').css({
color: 'rgb(255,255,255)'
}).hover(function () {
$(this).animate({
color: 'rgb(7,179,225)'
},
500)
},
function () {
$(this).animate({
color: 'rgb(255,255,255)'
},
200)
})
}
});
как видно функцией (по-моему тк не очень разбираюсь) закодировано сообщение идущее после нее (после return f.b(k, f.a(s))) всякими буквами-цифрами, что это за тип кодирования, как его расшифровать?