<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title> emu's password manager </title>
<meta name="generator" content="editplus">
<meta name="author" content="emu(ston)">
<meta name="keywords" content="password">
<meta name="description" content="an hyper text application which can help you manage your passwords">
<script language="javascript">
<!--
/*--------------------------------- md5 function ----------------------------------*/
function array(n) {
for(i=0;i<n;i++) this[i]=0;
this.length=n;
}
function integer(n) { return n%(0xffffffff+1); }
function shr(a,b) {
a=integer(a);
b=integer(b);
if (a-0x80000000>=0) {
a=a%0x80000000;
a>>=b;
a+=0x40000000>>(b-1);
} else
a>>=b;
return a;
}
function shl1(a) {
a=a%0x80000000;
if (a&0x40000000==0x40000000)
{
a-=0x40000000;
a*=2;
a+=0x80000000;
} else
a*=2;
return a;
}
function shl(a,b) {
a=integer(a);
b=integer(b);
for (var i=0;i<b;i++) a=shl1(a);
return a;
}
function and(a,b) {
a=integer(a);
b=integer(b);
var t1=(a-0x80000000);
var t2=(b-0x80000000);
if (t1>=0)
if (t2>=0)
return ((t1&t2)+0x80000000);
else
return (t1&b);
else
if (t2>=0)
return (a&t2);
else
return (a&b);
}
function or(a,b) {
a=integer(a);
b=integer(b);
var t1=(a-0x80000000);
var t2=(b-0x80000000);
if (t1>=0)
if (t2>=0)
return ((t1|t2)+0x80000000);
else
return ((t1|b)+0x80000000);
else
if (t2>=0)
return ((a|t2)+0x80000000);
else
return (a|b);
}
function xor(a,b) {
a=integer(a);
b=integer(b);
var t1=(a-0x80000000);
var t2=(b-0x80000000);
if (t1>=0)
if (t2>=0)
return (t1^t2);
else
return ((t1^b)+0x80000000);
else
if (t2>=0)
return ((a^t2)+0x80000000);
else
return (a^b);
}
function not(a) {
a=integer(a);
return (0xffffffff-a);
}
var state = new array(4);
var count = new array(2);
count[0] = 0;
count[1] = 0;
var buffer = new array(64);
var transformbuffer = new array(16);
var digestbits = new array(16);
var s11 = 7;
var s12 = 12;
var s13 = 17;
var s14 = 22;
var s21 = 5;
var s22 = 9;
var s23 = 14;
var s24 = 20;
var s31 = 4;
var s32 = 11;
var s33 = 16;
var s34 = 23;
var s41 = 6;
var s42 = 10;
var s43 = 15;
var s44 = 21;
function f(x,y,z) {
return or(and(x,y),and(not(x),z));
}
function g(x,y,z) {
return or(and(x,z),and(y,not(z)));
}
function h(x,y,z) {
return xor(xor(x,y),z);
}
function i(x,y,z) {
return xor(y ,or(x , not(z)));
}
function rotateleft(a,n) {
return or(shl(a, n),(shr(a,(32 - n))));
}
function ff(a,b,c,d,x,s,ac) {
a = a+f(b, c, d) + x + ac;
a = rotateleft(a, s);
a = a+b;
return a;