The Javascript Obfusication Competiton



  • I found the following on Telstra's (Australia'a major telecommunications website). It should still be viewable at http://www.telstra.com/index.jsp on line 897 of its source code:

    Prizes to the first that can figure out what the heck it does :P


    /************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
    var s_objectID;function s_c2fe(f){var x='',s=0,e,a,b,c;while(1){e=
    f.indexOf('"',s);b=f.indexOf('\\',s);c=f.indexOf("\n",s);if(e<0||(b>=
    0&&b<e))e=b;if(e<0||(c>=0&&c<e))e=c;if(e>=0){x+=(e>s?f.substring(s,e):
    '')+(e==c?'\\n':'\\'+f.substring(e,e+1));s=e+1}else return x
    +f.substring(s)}return f}function s_c2fa(f){var s=f.indexOf('(')+1,e=
    f.indexOf(')'),a='',c;while(s>=0&&s<e){c=f.substring(s,s+1);if(c==',')
    a+='","';else if(("\n\r\t ").indexOf(c)<0)a+=c;s++}return a?'"'+a+'"':
    a}function s_c2f(cc){cc=''+cc;var fc='var f=new Function(',s=
    cc.indexOf(';',cc.indexOf('{')),e=cc.lastIndexOf('}'),o,a,d,q,c,f,h,x
    fc+=s_c2fa(cc)+',"var s=new Object;';c=cc.substring(s+1,e);s=
    c.indexOf('function');while(s>=0){d=1;q='';x=0;f=c.substring(s);a=
    s_c2fa(f);e=o=c.indexOf('{',s);e++;while(d>0){h=c.substring(e,e+1);if(
    q){if(h==q&&!x)q='';if(h=='\\')x=x?0:1;else x=0}else{if(h=='"'||h=="'"
    )q=h;if(h=='{')d++;if(h=='}')d--}if(d>0)e++}c=c.substring(0,s)
    +'new Function('+(a?a+',':'')+'"'+s_c2fe(c.substring(o+1,e))+'")'
    +c.substring(e+1);s=c.indexOf('function')}fc+=s_c2fe(c)+';return s");'
    eval(fc);return f}function s_gi(un,pg,ss){var c="function s_c(un,pg,s"
    +"s){var s=this;s.wd=window;if(!s.wd.s_c_in){s.wd.s_c_il=new Array;s."
    +"wd.s_c_in=0;}s._il=s.wd.s_c_il;s._in=s.wd.s_c_in;s._il[s._in]=s;s.w"
    +"d.s_c_in++;s.m=function(m){return (''+m).indexOf('{')<0};s.fl=funct"
    +"ion(x,l){return x?(''+x).substring(0,l):x};s.co=function(o){if(!o)r"
    +"eturn o;var n=new Object,x;for(x in o)if(x.indexOf('select')<0&&x.i"
    +"ndexOf('filter')<0)n[x]=o[x];return n};s.num=function(x){x=''+x;for"
    +"(var p=0;p<x.length;p++)if(('0123456789').indexOf(x.substring(p,p+1"
    +"))<0)return 0;return 1};s.rep=function(x,o,n){var i=x.indexOf(o),l="
    +"n.length>0?n.length:1;while(x&&i>=0){x=x.substring(0,i)+n+x.substri"
    +"ng(i+o.length);i=x.indexOf(o,i+l)}return x};s.ape=function(x){var s"
    +"=this,i;x=x?s.rep(escape(''+x),'+','%2B'):x;if(x&&s.charSet&&s.em=="
    +"1&&x.indexOf('%u')<0&&x.indexOf('%U')<0){i=x.indexOf('%');while(i>="
    +"0){i++;if(('89ABCDEFabcdef').indexOf(x.substring(i,i+1))>=0)return "
    +"x.substring(0,i)+'u00'+x.substring(i);i=x.indexOf('%',i)}}return x}"
    +";s.epa=function(x){var s=this;return x?unescape(s.rep(''+x,'+',' ')"
    +"):x};s.pt=function(x,d,f,a){var s=this,t=x,z=0,y,r;while(t){y=t.ind"
    +"exOf(d);y=y<0?t.length:y;t=t.substring(0,y);r=s.m(f)?s[f](t,a):f(t,"
    +"a);if(r)return r;z+=y+d.length;t=x.substring(z,x.length);t=z<x.leng"
    +"th?t:''}return ''};s.isf=function(t,a){var c=a.indexOf(':');if(c>=0"
    +")a=a.substring(0,c);if(t.substring(0,2)=='s_')t=t.substring(2);retu"
    +"rn (t!=''&&t==a)};s.fsf=function(t,a){var s=this;if(s.pt(a,',','isf"
    +"',t))s.fsg+=(s.fsg!=''?',':'')+t;return 0};s.fs=function(x,f){var s"
    +"=this;s.fsg='';s.pt(x,',','fsf',f);return s.fsg};s.c_d='';s.c_gdf=f"
    +"unction(t,a){var s=this;if(!s.num(t))return 1;return 0};s.c_gd=func"
    +"tion(){var s=this,d=s.wd.location.hostname,n=s.fpCookieDomainPeriod"
    +"s,p;if(!n)n=s.cookieDomainPeriods;if(d&&!s.c_d){n=n?parseInt(n):2;n"
    +"=n>2?n:2;p=d.lastIndexOf('.');while(p>=0&&n>1){p=d.lastIndexOf('.',"
    +"p-1);n--}s.c_d=p>0&&s.pt(d,'.','c_gdf',0)?d.substring(p):''}return "
    +"s.c_d};s.c_r=function(k){var s=this;k=s.ape(k);var c=' '+s.d.cookie"
    +",i=c.indexOf(' '+k+'='),e=i<0?i:c.indexOf(';',i),v=i<0?'':s.epa(c.s"
    +"ubstring(i+2+k.length,e<0?c.length:e));return v!='[[B]]'?v:''};s.c_"
    +"w=function(k,v,e){var s=this,d=s.c_gd(),l=s.cookieLifetime,t;v=''+v"
    +";l=l?(''+l).toUpperCase():'';if(e&&l!='SESSION'&&l!='NONE'){t=(v!='"
    +"'?parseInt(l?l:0):-60);if(t){e=new Date;e.setTime(e.getTime()+(t*10"
    +"00))}}if(k&&l!='NONE'){s.d.cookie=k+'='+s.ape(v!=''?v:'[[B]]')+'; p"
    +"ath=/;'+(e&&l!='SESSION'?' expires='+e.toGMTString()+';':'')+(d?' d"
    +"omain='+d+';':'');return s.c_r(k)==v}return 0};s.eh=function(o,e,r,"
    +"f){var s=this,b='s_'+e+'_'+s._in,n=-1,l,i,x;if(!s.ehl)s.ehl=new Arr"
    +"ay;l=s.ehl;for(i=0;i<l.length&&n<0;i++){if(l[i].o==o&&l[i].e==e)n=i"
    +"}if(n<0){n=i;l[n]=new Object}x=l[n];x.o=o;x.e=e;f=r?x.b:f;if(r||f){"
    +"x.b=r?0:o[e];x.o[e]=f}if(x.b){x.o[b]=x.b;return b}return 0};s.cet=f"
    +"unction(f,a,t,o,b){var s=this,r;if(s.apv>=5&&(!s.isopera||s.apv>=7)"
    +")eval('try{r=s.m(f)?s[f](a):f(a)}catch(e){r=s.m(t)?s[t](e):t(e)}');"
    +"else{if(s.ismac&&s.u.indexOf('MSIE 4')>=0)r=s.m(b)?s[b](a):b(a);els"
    +"e{s.eh(s.wd,'onerror',0,o);r=s.m(f)?s[f](a):f(a);s.eh(s.wd,'onerror"
    +"',1)}}return r};s.gtfset=function(e){var s=this;return s.tfs};s.gtf"
    +"soe=new Function('e','var s=s_c_il['+s._in+'];s.eh(window,\"onerror"
    +"\",1);s.etfs=1;var c=s.t();if(c)s.d.write(c);s.etfs=0;return true')"
    +";s.gtfsfb=function(a){return window};s.gtfsf=function(w){var s=this"
    +",p=w.parent,l=w.location;s.tfs=w;if(p&&p.location!=l&&p.location.ho"
    +"st==l.host){s.tfs=p;return s.gtfsf(s.tfs)}return s.tfs};s.gtfs=func"
    +"tion(){var s=this;if(!s.tfs){s.tfs=s.wd;if(!s.etfs)s.tfs=s.cet('gtf"
    +"sf',s.tfs,'gtfset',s.gtfsoe,'gtfsfb')}return s.tfs};s.ca=function()"
    +"{var s=this,imn='s_i_'+s.fun;if(s.d.images&&s.apv>=3&&(!s.isopera||"
    +"s.apv>=7)&&(s.ns6<0||s.apv>=6.1)){s.ios=1;if(!s.d.images[imn]&&(!s."
    +"isns||(s.apv<4||s.apv>=5))){s.d.write('<im'+'g name=\"'+imn+'\" hei"
    +"ght=1 width=1 border=0 alt=\"\">');if(!s.d.images[imn])s.ios=0}}};s"
    +".mr=function(sess,q,ta){var s=this,ns=s.visitorNamespace,unc=s.rep("
    +"s.fun,'_','-'),imn='s_i_'+s.fun,im,b,e,rs='http'+(s.ssl?'s':'')+':/"
    +"/'+(s.ssl?'infos':'info')+'.telstra.com/b/ss/'+s.un+'/1/H.3-pdv-"
    +"2/'+sess+'?[AQB]&ndh=1'+(q?q:'')+(s.q?s.q:'')+'&[AQE]';if(s.isie&&!"
    +"s.ismac){if(s.apv>5.5)rs=s.fl(rs,4095);else rs=s.fl(rs,2047)}if(s.i"
    +"os){if (!s.ss)s.ca();im=s.wd[imn]?s.wd[imn]:s.d.images[imn];if(!im)"
    +"im=s.wd[imn]=new Image;im.src=rs;if(rs.indexOf('&pe=')>=0&&(!ta||ta"
    +"=='_self'||ta=='_top'||(s.wd.name&&ta==s.wd.name))){b=e=new Date;wh"
    +"ile(e.getTime()-b.getTime()<500)e=new Date}return ''}return '<im'+'"
    +"g sr'+'c=\"'+rs+'\" width=1 height=1 border=0 alt=\"\">'};s.gg=func"
    +"tion(v){var s=this;return s.wd['s_'+v]};s.glf=function(t,a){if(t.su"
    +"bstring(0,2)=='s_')t=t.substring(2);var s=this,v=s.gg(t);if(v)s[t]="
    +"v};s.gl=function(v){var s=this;s.pt(v,',','glf',0)};s.gv=function(v"
    +"){var s=this;return s['vpm_'+v]?s['vpv_'+v]:(s[v]?s[v]:'')};s.havf="
    +"function(t,a){var s=this,b=t.substring(0,4),x=t.substring(4),n=pars"
    +"eInt(x),k='g_'+t,m='vpm_'+t,q=t,v=s.linkTrackVars,e=s.linkTrackEven"
    +"ts;s[k]=s.gv(t);if(s.lnk||s.eo){v=v?v+','+s.vl_l:'';if(v&&!s.pt(v,'"
    +",','isf',t))s[k]='';if(t=='events'&&e)s[k]=s.fs(s[k],e)}s[m]=0;if(t"
    +"=='pageURL')q='g';else if(t=='referrer')q='r';else if(t=='vmk')q='v"
    +"mt';else if(t=='charSet'){q='ce';if(s[k]&&s.em==2)s[k]='UTF-8'}else"
    +" if(t=='visitorNamespace')q='ns';else if(t=='cookieDomainPeriods')q"
    +"='cdp';else if(t=='cookieLifetime')q='cl';else if(t=='visitVariable"
    +"Provider')q='vvp';else if(t=='currencyCode')q='cc';else if(t=='chan"
    +"nel')q='ch';else if(t=='campaign')q='v0';else if(s.num(x)) {if(b=='"
    +"prop')q='c'+n;else if(b=='eVar')q='v'+n;else if(b=='hier'){q='h'+n;"
    +"s[k]=s.fl(s[k],255)}}if(s[k]&&t!='linkName'&&t!='linkType')s.qav+='"
    +"&'+q+'='+s.ape(s[k]);return ''};s.hav=function(){var s=this;s.qav='"
    +"';s.pt(s.vl_t,',','havf',0);return s.qav};s.lnf=function(t,h){t=t?t"
    +".toLowerCase():'';h=h?h.toLowerCase():'';var te=t.indexOf('=');if(t"
    +"&&te>0&&h.indexOf(t.substring(te+1))>=0)return t.substring(0,te);re"
    +"turn ''};s.ln=function(h){var s=this,n=s.linkNames;if(n)return s.pt"
    +"(n,',','lnf',h);return ''};s.ltdf=function(t,h){t=t?t.toLowerCase()"
    +":'';h=h?h.toLowerCase():'';var qi=h.indexOf('?');h=qi>=0?h.substrin"
    +"g(0,qi):h;if(t&&h.substring(h.length-(t.length+1))=='.'+t)return 1;"
    +"return 0};s.ltef=function(t,h){t=t?t.toLowerCase():'';h=h?h.toLower"
    +"Case():'';if(t&&h.indexOf(t)>=0)return 1;return 0};s.lt=function(h)"
    +"{var s=this,lft=s.linkDownloadFileTypes,lef=s.linkExternalFilters,l"
    +"if=s.linkInternalFilters;lif=lif?lif:s.wd.location.hostname;h=h.toL"
    +"owerCase();if(s.trackDownloadLinks&&lft&&s.pt(lft,',','ltdf',h))ret"
    +"urn 'd';if(s.trackExternalLinks&&(lef||lif)&&(!lef||s.pt(lef,',','l"
    +"tef',h))&&(!lif||!s.pt(lif,',','ltef',h)))return 'e';return ''};s.l"
    +"c=new Function('e','var s=s_c_il['+s._in+'],b=s.eh(this,\"onclick\""
    +");s.lnk=s.co(this);s.t();s.lnk=0;if(b)return this[b](e);return true"
    +"');s.bc=new Function('e','var s=s_c_il['+s._in+'];if(s.d&&s.d.all&&"
    +"s.d.all.cppXYctnr)return;s.eo=e.srcElement?e.srcElement:e.target;s."
    +"t();s.eo=0');s.ot=function(o){var a=o.type,b=o.tagName;return (a&&a"
    +".toUpperCase?a:b&&b.toUpperCase?b:o.href?'A':'').toUpperCase()};s.o"
    +"id=function(o){var s=this,t=s.ot(o),p=o.protocol,c=o.onclick,n='',x"
    +"=0;if(!o.s_oid){if(o.href&&(t=='A'||t=='AREA')&&(!c||!p||p.toLowerC"
    +"ase().indexOf('javascript')<0))n=o.href;else if(c){n=s.rep(s.rep(s."
    +"rep(s.rep(''+c,\"\\r\",''),\"\\n\",''),\"\\t\",''),' ','');x=2}else"
    +" if(o.value&&(t=='INPUT'||t=='SUBMIT')){n=o.value;x=3}else if(o.src"
    +"&&t=='IMAGE')n=o.src;if(n){o.s_oid=s.fl(n,100);o.s_oidt=x}}return o"
    +".s_oid};s.rqf=function(t,un){var s=this,e=t.indexOf('='),u=e>=0?','"
    +"+t.substring(0,e)+',':'';return u&&u.indexOf(','+un+',')>=0?s.epa(t"
    +".substring(e+1)):''};s.rq=function(un){var s=this,c=un.indexOf(',')"
    +",v=s.c_r('s_sq'),q='';if(c<0)return s.pt(v,'&','rqf',un);return s.p"
    +"t(un,',','rq',0)};s.sqp=function(t,a){var s=this,e=t.indexOf('='),q"
    +"=e<0?'':s.epa(t.substring(e+1));s.sqq[q]='';if(e>=0)s.pt(t.substrin"
    +"g(0,e),',','sqs',q);return 0};s.sqs=function(un,q){var s=this;s.squ"
    +"[un]=q;return 0};s.sq=function(q){var s=this,k='s_sq',v=s.c_r(k),x,"
    +"c=0;s.sqq=new Object;s.squ=new Object;s.sqq[q]='';s.pt(v,'&','sqp',"
    +"0);s.pt(s.un,',','sqs',q);v='';for(x in s.squ)s.sqq[s.squ[x]]+=(s.s"
    +"qq[s.squ[x]]?',':'')+x;for(x in s.sqq)if(x&&s.sqq[x]&&(x==q||c<2)){"
    +"v+=(v?'&':'')+s.sqq[x]+'='+s.ape(x);c++}return s.c_w(k,v,0)};s.wdl="
    +"new Function('e','var s=s_c_il['+s._in+'],r=true,b=s.eh(s.wd,\"onlo"
    +"ad\"),i,o,oc;if(b)r=this[b](e);for(i=0;i<s.d.links.length;i++){o=s."
    +"d.links[i];oc=o.onclick?\"\"+o.onclick:\"\";if((oc.indexOf(\"s_gs("
    +"\")<0||oc.indexOf(\".s_oc(\")>=0)&&oc.indexOf(\".tl(\")<0)s.eh(o,\""
    +"onclick\",0,s.lc);}return r');s.wds=function(){var s=this;if(s.apv>"
    +"3&&(!s.isie||!s.ismac||s.apv>=5)){if(s.b&&s.b.attachEvent)s.b.attac"
    +"hEvent('onclick',s.bc);else if(s.b&&s.b.addEventListener)s.b.addEve"
    +"ntListener('click',s.bc,false);else s.eh(s.wd,'onload',0,s.wdl)}};s"
    +".vs=function(x){var s=this,v=s.visitorSampling,g=s.visitorSamplingG"
    +"roup,k='s_vsn_'+s.un+(g?'_'+g:''),n=s.c_r(k),e=new Date,y=e.getYear"
    +"();e.setYear(y+10+(y<1900?1900:0));if(v){v*=100;if(!n){if(!s.c_w(k,"
    +"x,e))return 0;n=x}if(n%10000>v)return 0}return 1};s.dyasmf=function"
    +"(t,m){if(t&&m&&m.indexOf(t)>=0)return 1;return 0};s.dyasf=function("
    +"t,m){var s=this,i=t?t.indexOf('='):-1,n,x;if(i>=0&&m){var n=t.subst"
    +"ring(0,i),x=t.substring(i+1);if(s.pt(x,',','dyasmf',m))return n}ret"
    +"urn 0};s.uns=function(){var s=this,x=s.dynamicAccountSelection,l=s."
    +"dynamicAccountList,m=s.dynamicAccountMatch,n,i;s.un.toLowerCase();i"
    +"f(x&&l){if(!m)m=s.wd.location.host;if(!m.toLowerCase)m=''+m;l=l.toL"
    +"owerCase();m=m.toLowerCase();n=s.pt(l,';','dyasf',m);if(n)s.un=n}i="
    +"s.un.indexOf(',');s.fun=i<0?s.un:s.un.substring(0,i)};s.t=function("
    +"){var s=this,trk=1,tm=new Date,sed=Math&&Math.random?Math.floor(Mat"
    +"h.random()*10000000000000):tm.getTime(),sess='s'+Math.floor(tm.getT"
    +"ime()/10800000)%10+sed,yr=tm.getYear(),vt=tm.getDate()+'/'+tm.getMo"
    +"nth()+'/'+(yr<1900?yr+1900:yr)+' '+tm.getHours()+':'+tm.getMinutes("
    +")+':'+tm.getSeconds()+' '+tm.getDay()+' '+tm.getTimezoneOffset(),tf"
    +"s=s.gtfs(),ta='',q='',qs='';s.uns();if(!s.q){var tl=tfs.location,x="
    +"'',c='',v='',p='',bw='',bh='',j='1.0',k=s.c_w('s_cc','true',0)?'Y':"
    +"'N',hp='',ct='',pn=0,ps;if(s.apv>=4)x=screen.width+'x'+screen.heigh"
    +"t;if(s.isns||s.isopera){if(s.apv>=3){j='1.1';v=s.n.javaEnabled()?'Y"
    +"':'N';if(s.apv>=4){j='1.2';c=screen.pixelDepth;bw=s.wd.innerWidth;b"
    +"h=s.wd.innerHeight;if(s.apv>=4.06)j='1.3'}}s.pl=s.n.plugins}else if"
    +"(s.isie){if(s.apv>=4){v=s.n.javaEnabled()?'Y':'N';j='1.2';c=screen."
    +"colorDepth;if(s.apv>=5){bw=s.d.documentElement.offsetWidth;bh=s.d.d"
    +"ocumentElement.offsetHeight;j='1.3';if(!s.ismac&&s.b){s.b.addBehavi"
    +"or('#default#homePage');hp=s.b.isHomePage(tl)?\"Y\":\"N\";s.b.addBe"
    +"havior('#default#clientCaps');ct=s.b.connectionType}}}else r=''}if("
    +"s.pl)while(pn<s.pl.length&&pn<30){ps=s.fl(s.pl[pn].name,100)+';';if"
    +"(p.indexOf(ps)<0)p+=ps;pn++}s.q=(x?'&s='+s.ape(x):'')+(c?'&c='+s.ap"
    +"e(c):'')+(j?'&j='+j:'')+(v?'&v='+v:'')+(k?'&k='+k:'')+(bw?'&bw='+bw"
    +":'')+(bh?'&bh='+bh:'')+(ct?'&ct='+s.ape(ct):'')+(hp?'&hp='+hp:'')+("
    +"p?'&p='+s.ape(p):'')}if(s.usePlugins)s.doPlugins(s);var l=s.wd.loca"
    +"tion,r=tfs.document.referrer;if(!s.pageURL)s.pageURL=s.fl(l?l:'',25"
    +"5);if(!s.referrer)s.referrer=s.fl(r?r:'',255);if(s.lnk||s.eo){var o"
    +"=s.eo?s.eo:s.lnk;if(!o)return '';var p=s.gv('pageName'),w=1,t=s.ot("
    +"o),n=s.oid(o),x=o.s_oidt,h,l,i,oc;if(s.eo&&o==s.eo){while(o&&!n&&t!"
    +"='BODY'){o=o.parentElement?o.parentElement:o.parentNode;if(!o)retur"
    +"n '';t=s.ot(o);n=s.oid(o);x=o.s_oidt}oc=o.onclick?''+o.onclick:'';i"
    +"f((oc.indexOf(\"s_gs(\")>=0&&oc.indexOf(\".s_oc(\")<0)||oc.indexOf("
    +"\".tl(\")>=0)return ''}ta=o.target;h=o.href?o.href:'';i=h.indexOf('"
    +"?');h=s.linkLeaveQueryString||i<0?h:h.substring(0,i);l=s.linkName?s"
    +".linkName:s.ln(h);t=s.linkType?s.linkType.toLowerCase():s.lt(h);if("
    +"t&&(h||l))q+='&pe=lnk_'+(t=='d'||t=='e'?s.ape(t):'o')+(h?'&pev1='+s"
    +".ape(h):'')+(l?'&pev2='+s.ape(l):'');else trk=0;if(s.trackInlineSta"
    +"ts){if(!p){p=s.gv('pageURL');w=0}t=s.ot(o);i=o.sourceIndex;if(s.gg("
    +"'objectID')){n=s.gg('objectID');x=1;i=1}if(p&&n&&t)qs='&pid='+s.ape"
    +"(s.fl(p,255))+(w?'&pidt='+w:'')+'&oid='+s.ape(s.fl(n,100))+(x?'&oid"
    +"t='+x:'')+'&ot='+s.ape(t)+(i?'&oi='+i:'')}}if(!trk&&!qs)return '';v"
    +"ar code='';if(trk&&s.vs(sed))code=s.mr(sess,(vt?'&t='+s.ape(vt):'')"
    +"+s.hav()+q+(qs?qs:s.rq(s.un)),ta);s.sq(trk?'':qs);s.lnk=s.eo=s.link"
    +"Name=s.linkType=s.wd.s_objectID='';return code};s.tl=function(o,t,n"
    +"){var s=this;s.lnk=s.co(o);s.linkType=t;s.linkName=n;s.t()};s.ssl=("
    +"s.wd.location.protocol.toLowerCase().indexOf('https')>=0);s.d=docum"
    +"ent;s.b=s.d.body;s.n=navigator;s.u=s.n.userAgent;s.ns6=s.u.indexOf("
    +"'Netscape6/');var apn=s.n.appName,v=s.n.appVersion,ie=v.indexOf('MS"
    +"IE '),o=s.u.indexOf('Opera '),i;if(v.indexOf('Opera')>=0||o>0)apn='"
    +"Opera';s.isie=(apn=='Microsoft Internet Explorer');s.isns=(apn=='Ne"
    +"tscape');s.isopera=(apn=='Opera');s.ismac=(s.u.indexOf('Mac')>=0);i"
    +"f(o>0)s.apv=parseFloat(s.u.substring(o+6));else if(ie>0){s.apv=pars"
    +"eInt(i=v.substring(ie+5));if(s.apv>3)s.apv=parseFloat(i)}else if(s."
    +"ns6>0)s.apv=parseFloat(s.u.substring(s.ns6+10));else s.apv=parseFlo"
    +"at(v);s.em=0;if(String.fromCharCode){i=escape(String.fromCharCode(2"
    +"56)).toUpperCase();s.em=(i=='%C4%80'?2:(i=='%U0100'?1:0))}s.un=un;s"
    +".uns();s.vl_l='vmk,charSet,visitorNamespace,cookieDomainPeriods,coo"
    +"kieLifetime,visitVariableProvider,pageName,pageURL,referrer,currenc"
    +"yCode,purchaseID';s.vl_t=s.vl_l+',channel,server,pageType,campaign,"
    +"state,zip,events,products,linkName,linkType';for(var n=1;n<51;n++)s"
    +".vl_t+=',prop'+n+',eVar'+n+',hier'+n;s.vl_g=s.vl_t+',trackDownloadL"
    +"inks,trackExternalLinks,trackInlineStats,linkLeaveQueryString,linkD"
    +"ownloadFileTypes,linkExternalFilters,linkInternalFilters,linkNames'"
    +";if(pg)s.gl(s.vl_g);s.ss=ss;if(!ss){s.wds();s.ca()}}",
    l=window.s_c_il,n=navigator,u=n.userAgent,v=n.appVersion,e=v.indexOf(
    'MSIE '),m=u.indexOf('Netscape6/'),a,i,s;if(l)for(i=0;i<l.length;i++){
    s=l[i];s.uns();if(s.un==un)return s;else if(s.pt(s.un,',','isf',un)){
    s=s.co(s);s.un=un;s.uns();return s}}if(e>0){a=parseInt(i=v.substring(e
    +5));if(a>3)a=parseFloat(i)}else if(m>0)a=parseFloat(u.substring(m+10)
    );else a=parseFloat(v);if(a>=5&&v.indexOf('Opera')<0&&u.indexOf(
    'Opera')<0){eval(c);return new s_c(un,pg,ss)}else s=s_c2f(c);return s(
    un,pg,ss)}


  • http://mensa.ath.cx/~polzer/rbiclan/wiki/spoilers.js

    The Real WTF is that the author of the long gibberish-looking script didn't use Lambda calculus. And his script looks like Perl.



  • http://mensa.ath.cx/~polzer/rbiclan/wiki/spoilers.js

    The Real WTF is that the author of the long gibberish-looking script didn't use Lambda calculus. And his script looks like Perl.

    I disagree. It looks like Lisp.

    Hm.
    Do those parenthesised expressions do anything special in JS that I'm unaware of? As far as I know they don't actually do anything, save giving priority to execution, but there's nothing to prioritize against...

    Possibly just trying to Make It Look Cool.
     



  • @TehPenguin said:

    I found the following on Telstra's (Australia'a major telecommunications website). It should still be viewable at http://www.telstra.com/index.jsp on line 897 of its source code:

    Prizes to the first that can figure out what the heck it does :P

    This really isn't that uncommin, and it's not a WTF either. It's all just standard "homepage" javeascript.. comparing browser versions, probably some dynamic image swapping and maybe some "AJAX" call backs. But that's not the point..

    The code you're seeing here has not so much been 'obfuscated' but rather compressed. There's no need to keep whitespace and nice formatting around for the web browser. That's all just extra bytes that the ISP would have to serve X millions of times per day. Lots of highly trafficed sites do the same -- look at googles javascript applications for example.

    There are tools that will compressed javascript in this manner. Of course, you keep the original copy in source control for further development. 



  • About spoilers.js - the expressions do domething.

    (function(a, b) { ... a ... b ... })(what, the);

    is equivalent to

    ... what ... the ...

    More fun:

    (function(f) { f(f); }) (function(f) { f(f); });

    endless recursion... 



  • @TehPenguin said:

    Prizes to the first that can figure out what the heck it does :P

    The answer is 42. 



  • @OpBaI said:

    http://mensa.ath.cx/~polzer/rbiclan/wiki/spoilers.js

    The Real WTF is that the author of the long gibberish-looking script didn't use Lambda calculus. And his script looks like Perl.

    That looks vaguely like continuation-passing style to me.  Although I didn't bother reading it too carefully, I might just be imagining it.  And as for Lambda Calculus - I'm not so sure.  This comment suggests something rather lambdaish, but again I didn't analyse it much:

    /* wrapper: JS boolean -> functional boolean */


  • here is the product the site is using.


     



  • @OpBaI said:

    About spoilers.js - the expressions do domething.

    (function(a, b) { ... a ... b ... })(what, the);

    is equivalent to

    ... what ... the ...

    More fun:

    (function(f) { f(f); }) (function(f) { f(f); });

    endless recursion... 

    Ahh, I see it now. Yes Yes. Of course.

    Bit of an odd thing to do... for a website.


     



  • I think the *REAL* real WTF is that the author of the script above apparently is not only eval'ing nine tenths of the source code but heavily employs self-modifying code as well.

    I didn't read too much into it but the possible implications of those "x.indexOf('function')"s scattered around everywhere make me shudder.

    Has this guy never heard of function(){}

     



  • (Double post because my "edit permission expired", sorry)

    On further checking, found a "new Function('...')" inside the string as well... eval'ing evals to the win!



  • @TehPenguin said:

    Prizes to the first that can figure out what the heck it does :P

    Duh, obviously it prints "Just another JavaScript hacker" to stdout.



  • @TehPenguin said:

    Prizes to the first that can figure out what the heck it does :P

    This is easy with an editor that highlights matching braces. The code declares a variable named s_objectID but doesn't assign anything to it, then defines 4 functions:
    function s_c2fe(f)
    function s_c2fa(f)
    function s_c2f(cc)
    function s_gi(un,pg,ss)

    That's all it does. What are my prizes?



  • @mrsticks1982 said:

    here is the product the site is using.


     

     

    I worked for a company that used this same solution... its for analytics and runs a few grand a month... basically they know everything about you... browser, OS, where you came from, how you got there, your click path, how long you looked at pages, how far you scrolled... and the list goes on and on.. its quite common procedure and code... but we never compressed it like that.

     

    EDIT

     

    they also know the name of your first born child and blood type ;)
     


Log in to reply