
function hexadec(n) {var h=parseInt(n).toString(16); return (h.length%2)?"0"+h:h;}

function validatepwd(key, text) {
 var i, x, y, t, x2, tt, kl=key.length;
 s=[];

 for (i=0; i<256; i++) s[i]=i
 y=0
 for(j=0; j<2; j++) {
  for(x=0; x<256; x++) {
   y=(key.charCodeAt(x%kl) + s[x] + y) % 256
   t=s[x]; s[x]=s[y]; s[y]=t
  }
 }
 var z=""
 for (x=0; x<text.length; x++) {
  x2=x & 255
  y=( s[x2] + y) & 255
  t=s[x2]; s[x2]=s[y]; s[y]=t
  z+= hexadec(text.charCodeAt(x) ^ s[(s[x2] + s[y]) % 256])
 }
 return z;
}
