Hilfe script zu entpacken/decoden?

Tapi

Grünschnabel
Kann mir jemand helfen dieses script zu entpacken/decoden?


Javascript:
<script type="text/javascript">
var steuer = "{$config["mwst"]}";
eval(function(p,a,c,k,e,r){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--)r[e(c)]=k[ C]||e(c);k=[function(e){return r[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}('v O(1g){I s.1L(1g)}v 1M(){t=\\'<1h><1i>\\';t+=\\'<k R=w a="S:1j;"><12 J=1k K="l[]" b="1" 1l=4 13="L()" /></k>\\';t+=\\'<k R=w><T a="S:1N;" 1O=4 K=M[] 13="1m(1n, 1o)"></T></k>\\';t+=\\'<k R=w a="S:1j;"><12 J=1k K="U[]" b="" 1l=4 13="L()" /></k>\\';t+=\\'<k R=w><12 a="14:15;" J=1P K="1Q[]" b=" X " 1R="1p(1o);"/></k>\\';t+=\\'</1i></1h>\\';N=s.1q("1S");N.c=t;O("1r").1s(N);y=s.16("l[]");y[y.d-1].1T()}v 1p(N){O("1r").1U(N.m.m.m.m.m);L()}v L(){y=s.16("l[]");1t=s.16("U[]");z=0;1u(f=0;f<y.d;f++){17=18(y[f].b.7(/,/,"."));19=18(1t[f].b.7(/,/,"."));6(!1v(17)&&!1v(19))z=z+(17*19)}1w=18(1x.7(/,/,"."));1a=z*1w/1V;1y=z+1a;O("1W").b=z.1b(2).1c().7(/\\\\./,",")+" €";O("1x").b=1a.1b(2).1c().7(/\\\\./,",")+" €";O("1X").b=1y.1b(2).1c().7(/\\\\./,",")+" €"}o 5=g;o A=g;o u=B();o h=B();o C=B();o 8=0;v 1m(e,q){6(q.d>10)I;6(!5){5=s.1q("1Y");5.1Z="5";s.20.1s(5);5.a.21=0}D=q.K.7(/\\\\[\\\\]/j,"");e=((!e)?22.1n:e);E=((!e.E)?e.23:e.E);6(E.24==3)E=E.m;F=((e.1z)?e.1z:((e.1A)?e.1A:((e.1B)?e.1B:0)));6(A!=g&&F==25){q.b=u[8];A=g;6(D=="M"){q.m.26.1C.b=h[8];q.m.27.1C.b=C[8]}5.c="";L();I g}6(A!=g&&(F==1D||F==1E)){6(8>0&&F==1E)8--;6(8<(u.d-1)&&F==1D)8++;5.c=u[8].7(/\\\\r\\\\n/j,"<V />");6(q.J.W()=="T"){5.c="<V />"+5.c;6(D=="M")5.c+=" <i a=\\'14:15;\\'>("+h[8]+(h[8].7(/[0-9,\\\\. ]/j,"")==""?"x":"")+" 1F "+C[8]+"€"+(h[8].7(/[0-9,\\\\. ]/j,"")!=""?"/"+h[8].7(/[0-9,\\\\. ]/j,""):"")+")</i>";q.a.1d=(5.1G+1H)+"P"}I g}Y=g;u=B();h=B();C=B();G=p[D];1u(f=0;f<G.d;f++){6(G[f].W().28(q.b.W())!=-1&&q.b.d>0){6(!Y){5.c=G[f].7(/\\\\r\\\\n/j,"<V />");5.a.Z=1e(q,"Z")+"P";5.a.w=1e(q,"w")+"P";5.a.S=q.29+"P";6(q.J.W()=="T"){5.c="<V />"+5.c;6(D=="M")5.c+=" <i a=\\'14:15;\\'>("+p["l"][f]+(p["l"][f].7(/[0-9,\\\\. ]/j,"")==""?"x":"")+" 1F€E€E "+p["U"][f]+""+(p["l"][f].7(/[0-9,\\\\. ]/j,"")!=""?"/"+p["l"][f].7(/[0-9,\\\\. ]/j,""):"")+")</i>";q.a.1d=(5.1G+1H)+"P"}A=G[f];Y=2a;8=0}u[u.d]=G[f];6(D=="M"){h[h.d]=p["l"][f];C[C.d]=p["U"][f]}}}6(!Y){5.c="";q.a.1d="";A=g}}v 1e(11,1f){o Q=(1f=="Z")?11.1I:11.1J;o H=11.1K;2b(H!=2c){Q=(1f=="Z")?Q+H.1I:Q+H.1J;H=H.1K}I Q}',62,137,'|||||typeAheadDsp|if|replace|curIndex||style|value|innerHTML|length|||false|curAnz||ig|td|anz|parentNode||var|typeAheadData|||document|pos|curAheadArray|function|top||a_anz|sum|curAheadString|Array|curEp|wert|target|code|check|parentEl|return|type|name|calculate|dsc|obj||px|totaloffset|valign|width|textarea|ep|br|toLowerCase||found|left||what|input|onKeyUp|color|red|getElementsByName|menge|parseFloat|preis|st|toFixed|toString|height|getposOffset|offsettype|id|table|tr|50px|text|size|typeAhead|event|this|deletePos|createElement|docpos|appendChild|a_ep|for|isNaN|mwst|steuer|total|charCode|keyCode|which|firstChild|40|38|zu|offsetHeight|30|offsetLeft|offsetTop|offsetParent|getElementById|insertPos|500px|rows|button|del|onclick|DIV|focus|removeChild|100|netto|brutto|div|className|body|zIndex|window|srcElement|nodeType|39|previousSibling|nextSibling|indexOf|offsetWidth|true|while|null'.split('|'),0,{}));
</script>

Habe es mit 'alert' ausgegeben und ersetzt, aber dann funktioniert es nicht mehr. Habe dann diese Seite gefunden http://matthewfl.com/unPacker.html aber auch hier leider kein Ergebnis... :-(

Danke für eure Hilfe...

Achso
Das Script kommt von hier http://www.cruso.de/online-pdf/ und dort auf >>Demoseite öffnen<< klicken
 
Hallo Tapi,

das Ausführen des Skriptes innerhalb einer VM brachte mir einen Syntaxfehler:
Firefox hat gesagt.:
SyntaxError: identifier starts immediately after numeric literal
Somit würde wahrscheinlich das Skript niemals ausgeführt werden.
 
Hy
Falls es dir hilft ist hier mal meine decodierte Version :D
Bei meinem Versuch das Skript mit dem Unpacker zu decoden erhalte ich folgenden Code welcher auch korrekt zu sein scheint.
Javascript:
function O(id)
   {
   return document.getElementById(id)
}
function insertPos()
   {
   pos='<table><tr>';
   pos+='<td valign=top style="width:50px;
   "><input type=text name="anz[]" value="1" size=4 onKeyUp="calculate()" /></td>';
   pos+='<td valign=top><textarea style="width:500px;
   " rows=4 name=dsc[] onKeyUp="typeAhead(event, this)"></textarea></td>';
   pos+='<td valign=top style="width:50px;
   "><input type=text name="ep[]" value="" size=4 onKeyUp="calculate()" /></td>';
   pos+='<td valign=top><input style="color:red;
   " type=button name="del[]" value=" X " onclick="deletePos(this);
   "/></td>';
   pos+='</tr></table>';
   obj=document.createElement("DIV");
   obj.innerHTML=pos;
   O("docpos").appendChild(obj);
   a_anz=document.getElementsByName("anz[]");
   a_anz[a_anz.length-1].focus()
}
function deletePos(obj)
   {
   O("docpos").removeChild(obj.parentNode.parentNode.parentNode.parentNode.parentNode);
   calculate()
}
function calculate()
   {
   a_anz=document.getElementsByName("anz[]");
   a_ep=document.getElementsByName("ep[]");
   sum=0;
   for(f=0;
   f<a_anz.length;
   f++)
     {
     menge=parseFloat(a_anz[f].value.replace(/,/,"."));
     preis=parseFloat(a_ep[f].value.replace(/,/,"."));
     if(!isNaN(menge)&&!isNaN(preis))sum=sum+(menge*preis)
   }
   mwst=parseFloat(steuer.replace(/,/,"."));
   st=sum*mwst/100;
   total=sum+st;
   O("netto").value=sum.toFixed(2).toString().replace(/\./,",")+" €";
   O("steuer").value=st.toFixed(2).toString().replace(/\./,",")+" €";
   O("brutto").value=total.toFixed(2).toString().replace(/\./,",")+" €"
}
var typeAheadDsp=false;
var curAheadString=false;
var curAheadArray=Array();
var curAnz=Array();
var curEp=Array();
var curIndex=0;
function typeAhead(e,q)
   {
   if(q.length>10)return;
   if(!typeAheadDsp)
     {
     typeAheadDsp=document.createElement("div");
     typeAheadDsp.className="typeAheadDsp";
     document.body.appendChild(typeAheadDsp);
     typeAheadDsp.style.zIndex=0
   }
   wert=q.name.replace(/\[\]/ig,"");
   e=((!e)?window.event:e);
   target=((!e.target)?e.srcElement:e.target);
   if(target.nodeType==3)target=target.parentNode;
   code=((e.charCode)?e.charCode:((e.keyCode)?e.keyCode:((e.which)?e.which:0)));
   if(curAheadString!=false&&code==39)
     {
     q.value=curAheadArray[curIndex];
     curAheadString=false;
     if(wert=="dsc")
       {
       q.parentNode.previousSibling.firstChild.value=curAnz[curIndex];
       q.parentNode.nextSibling.firstChild.value=curEp[curIndex]
     }
     typeAheadDsp.innerHTML="";
     calculate();
     return false
   }
   if(curAheadString!=false&&(code==40||code==38))
     {
     if(curIndex>0&&code==38)curIndex--;
     if(curIndex<(curAheadArray.length-1)&&code==40)curIndex++;
     typeAheadDsp.innerHTML=curAheadArray[curIndex].replace(/\r\n/ig,"<br />");
     if(q.type.toLowerCase()=="textarea")
       {
       typeAheadDsp.innerHTML="<br />"+typeAheadDsp.innerHTML;
       if(wert=="dsc")typeAheadDsp.innerHTML+=" <i style='color:red;
       '>("+curAnz[curIndex]+(curAnz[curIndex].replace(/[0-9,\. ]/ig,"")==""?"x":"")+" zu "+curEp[curIndex]+"€"+(curAnz[curIndex].replace(/[0-9,\. ]/ig,"")!=""?"/"+curAnz[curIndex].replace(/[0-9,\. ]/ig,""):"")+")</i>";
       q.style.height=(typeAheadDsp.offsetHeight+30)+"px"
     }
     return false
   }
   found=false;
   curAheadArray=Array();
   curAnz=Array();
   curEp=Array();
   check=typeAheadData[wert];
   for(f=0;
   f<check.length;
   f++)
     {
     if(check[f].toLowerCase().indexOf(q.value.toLowerCase())!=-1&&q.value.length>0)
       {
       if(!found)
         {
         typeAheadDsp.innerHTML=check[f].replace(/\r\n/ig,"<br />");
         typeAheadDsp.style.left=getposOffset(q,"left")+"px";
         typeAheadDsp.style.top=getposOffset(q,"top")+"px";
         typeAheadDsp.style.width=q.offsetWidth+"px";
         if(q.type.toLowerCase()=="textarea")
           {
           typeAheadDsp.innerHTML="<br />"+typeAheadDsp.innerHTML;
           if(wert=="dsc")typeAheadDsp.innerHTML+=" <i style='color:red;
           '>("+typeAheadData["anz"][f]+(typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,"")==""?"x":"")+" zu "+typeAheadData["ep"][f]+"€"+(typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,"")!=""?"/"+typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,""):"")+")</i>";
           q.style.height=(typeAheadDsp.offsetHeight+30)+"px"
         }
         curAheadString=check[f];
         found=true;
         curIndex=0
       }
       curAheadArray[curAheadArray.length]=check[f];
       if(wert=="dsc")
         {
         curAnz[curAnz.length]=typeAheadData["anz"][f];
         curEp[curEp.length]=typeAheadData["ep"][f]
       }
     }
   }
   if(!found)
     {
     typeAheadDsp.innerHTML="";
     q.style.height="";
     curAheadString=false
   }
}
function getposOffset(what,offsettype)
   {
   var totaloffset=(offsettype=="left")?what.offsetLeft:what.offsetTop;
   var parentEl=what.offsetParent;
   while(parentEl!=null)
     {
     totaloffset=(offsettype=="left")?totaloffset+parentEl.offsetLeft:totaloffset+parentEl.offsetTop;
     parentEl=parentEl.offsetParent
   }
   return totaloffset
}

Lg hendl
 
Zuletzt bearbeitet:
Die dekodierte Variante schaut doch gar nicht mal so schlecht aus. Anscheinend fügt das Skript eine Tabelle ein.

Was möchtest du denn mit dem Skript anstellen?
 
Die dekodierte Variante schaut doch gar nicht mal so schlecht aus. Anscheinend fügt das Skript eine Tabelle ein.

Was möchtest du denn mit dem Skript anstellen?

Bastel an eine Art Onlinebüro mit Auftragsverwaltung, Rechnung, Kundenverwaltung und etc.

Hy
Falls es dir hilft ist hier mal meine decodierte Version :D
Bei meinem Versuch das Skript mit dem Unpacker zu decoden erhalte ich folgenden Code welcher auch korrekt zu sein scheint.
Javascript:
function O(id)
   {
   return document.getElementById(id)
}
function insertPos()
   {
   pos='<table><tr>';
   pos+='<td valign=top style="width:50px;
   "><input type=text name="anz[]" value="1" size=4 onKeyUp="calculate()" /></td>';
   pos+='<td valign=top><textarea style="width:500px;
   " rows=4 name=dsc[] onKeyUp="typeAhead(event, this)"></textarea></td>';
   pos+='<td valign=top style="width:50px;
   "><input type=text name="ep[]" value="" size=4 onKeyUp="calculate()" /></td>';
   pos+='<td valign=top><input style="color:red;
   " type=button name="del[]" value=" X " onclick="deletePos(this);
   "/></td>';
   pos+='</tr></table>';
   obj=document.createElement("DIV");
   obj.innerHTML=pos;
   O("docpos").appendChild(obj);
   a_anz=document.getElementsByName("anz[]");
   a_anz[a_anz.length-1].focus()
}
function deletePos(obj)
   {
   O("docpos").removeChild(obj.parentNode.parentNode.parentNode.parentNode.parentNode);
   calculate()
}
function calculate()
   {
   a_anz=document.getElementsByName("anz[]");
   a_ep=document.getElementsByName("ep[]");
   sum=0;
   for(f=0;
   f<a_anz.length;
   f++)
     {
     menge=parseFloat(a_anz[f].value.replace(/,/,"."));
     preis=parseFloat(a_ep[f].value.replace(/,/,"."));
     if(!isNaN(menge)&&!isNaN(preis))sum=sum+(menge*preis)
   }
   mwst=parseFloat(steuer.replace(/,/,"."));
   st=sum*mwst/100;
   total=sum+st;
   O("netto").value=sum.toFixed(2).toString().replace(/\./,",")+" €";
   O("steuer").value=st.toFixed(2).toString().replace(/\./,",")+" €";
   O("brutto").value=total.toFixed(2).toString().replace(/\./,",")+" €"
}
var typeAheadDsp=false;
var curAheadString=false;
var curAheadArray=Array();
var curAnz=Array();
var curEp=Array();
var curIndex=0;
function typeAhead(e,q)
   {
   if(q.length>10)return;
   if(!typeAheadDsp)
     {
     typeAheadDsp=document.createElement("div");
     typeAheadDsp.className="typeAheadDsp";
     document.body.appendChild(typeAheadDsp);
     typeAheadDsp.style.zIndex=0
   }
   wert=q.name.replace(/\[\]/ig,"");
   e=((!e)?window.event:e);
   target=((!e.target)?e.srcElement:e.target);
   if(target.nodeType==3)target=target.parentNode;
   code=((e.charCode)?e.charCode:((e.keyCode)?e.keyCode:((e.which)?e.which:0)));
   if(curAheadString!=false&&code==39)
     {
     q.value=curAheadArray[curIndex];
     curAheadString=false;
     if(wert=="dsc")
       {
       q.parentNode.previousSibling.firstChild.value=curAnz[curIndex];
       q.parentNode.nextSibling.firstChild.value=curEp[curIndex]
     }
     typeAheadDsp.innerHTML="";
     calculate();
     return false
   }
   if(curAheadString!=false&&(code==40||code==38))
     {
     if(curIndex>0&&code==38)curIndex--;
     if(curIndex<(curAheadArray.length-1)&&code==40)curIndex++;
     typeAheadDsp.innerHTML=curAheadArray[curIndex].replace(/\r\n/ig,"<br />");
     if(q.type.toLowerCase()=="textarea")
       {
       typeAheadDsp.innerHTML="<br />"+typeAheadDsp.innerHTML;
       if(wert=="dsc")typeAheadDsp.innerHTML+=" <i style='color:red;
       '>("+curAnz[curIndex]+(curAnz[curIndex].replace(/[0-9,\. ]/ig,"")==""?"x":"")+" zu "+curEp[curIndex]+"€"+(curAnz[curIndex].replace(/[0-9,\. ]/ig,"")!=""?"/"+curAnz[curIndex].replace(/[0-9,\. ]/ig,""):"")+")</i>";
       q.style.height=(typeAheadDsp.offsetHeight+30)+"px"
     }
     return false
   }
   found=false;
   curAheadArray=Array();
   curAnz=Array();
   curEp=Array();
   check=typeAheadData[wert];
   for(f=0;
   f<check.length;
   f++)
     {
     if(check[f].toLowerCase().indexOf(q.value.toLowerCase())!=-1&&q.value.length>0)
       {
       if(!found)
         {
         typeAheadDsp.innerHTML=check[f].replace(/\r\n/ig,"<br />");
         typeAheadDsp.style.left=getposOffset(q,"left")+"px";
         typeAheadDsp.style.top=getposOffset(q,"top")+"px";
         typeAheadDsp.style.width=q.offsetWidth+"px";
         if(q.type.toLowerCase()=="textarea")
           {
           typeAheadDsp.innerHTML="<br />"+typeAheadDsp.innerHTML;
           if(wert=="dsc")typeAheadDsp.innerHTML+=" <i style='color:red;
           '>("+typeAheadData["anz"][f]+(typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,"")==""?"x":"")+" zu "+typeAheadData["ep"][f]+"€"+(typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,"")!=""?"/"+typeAheadData["anz"][f].replace(/[0-9,\. ]/ig,""):"")+")</i>";
           q.style.height=(typeAheadDsp.offsetHeight+30)+"px"
         }
         curAheadString=check[f];
         found=true;
         curIndex=0
       }
       curAheadArray[curAheadArray.length]=check[f];
       if(wert=="dsc")
         {
         curAnz[curAnz.length]=typeAheadData["anz"][f];
         curEp[curEp.length]=typeAheadData["ep"][f]
       }
     }
   }
   if(!found)
     {
     typeAheadDsp.innerHTML="";
     q.style.height="";
     curAheadString=false
   }
}
function getposOffset(what,offsettype)
   {
   var totaloffset=(offsettype=="left")?what.offsetLeft:what.offsetTop;
   var parentEl=what.offsetParent;
   while(parentEl!=null)
     {
     totaloffset=(offsettype=="left")?totaloffset+parentEl.offsetLeft:totaloffset+parentEl.offsetTop;
     parentEl=parentEl.offsetParent
   }
   return totaloffset
}

Lg hendl

Das habe ich auch raus bekommen aber leider funktioniert es nich wenn ich es austausche trotzdem danke...


Tapi
 

Neue Beiträge

Zurück