here my attempt.
na trim down ko sa 11 digits and output. pero need pa galawin ang values for variables add and subtract. need natin modify function to translate mac address to HEX kung yun ang tamang concept.
<script language="jscript">
var add=[12,2,17,5,16,31,28,10,16,20,22,1];
var subst={58:122,59:121,60:120,61:119,62:118,63:117,64:116,91:115,92:114,93:113,94:112,45:111,96:110};
function generatePassword(input){
var inputMac=input.replace(/:/g,"").toUpperCase();
var macPassword="";
if((inputMac.search(/^[A-F0-9]{12}$/)==-1) || (inputMac =="000000000000")){
return macPassword="invalid"}
else{
var b;
var a;
var c="";
for(b=0;b<11;b++){
a=inputMac.charCodeAt(b)+add;
if(subst[a]){
a=subst[a]
}
c+=String.fromCharCode(a)
}
return macPassword=c;
}
};
</script>