WOW!, doesn't anybody bother to read anymore before posting.... He basically wants to know what the algorithm so he can do it manually or perhaps make his own tool.
It is very easy to do. For examples just enter BCDFGHJKMPQRTVWXY2346789 in to your favorite search engine. You will see tons of examples written in different languages from C,delphi to autoit and powershell. Good luck.
Never personally needed anything for office, but I know the key is supposed to be stored in this path Without office installed myself I'm unable to test, sorry.
2007 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Registration\{90120000-0011-0000-0000-0000000FF1CE}\DigitalProductID hope this helps
"0FF1CE" Really?? Someone should tell Microsoft that 13375P33K isn't a very valid way to encrypt things.
slightly modifcation from Daz's code tested with myself, and it worked Code: Set WshShell = CreateObject("WScript.Shell") MsgBox ConvertToKey(WshShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Registration\{90120000-0011-0000-0000-0000000FF1CE}\DigitalProductID")) Function ConvertToKey(Key) Const KeyOffset = 52 i = 28 Chars = "BCDFGHJKMPQRTVWXY2346789" Do Cur = 0 x = 14 Do Cur = Cur * 256 Cur = Key(x + KeyOffset) + Cur Key(x + KeyOffset) = (Cur \ 24) And 255 Cur = Cur Mod 24 x = x -1 Loop While x >= 0 i = i -1 KeyOutput = Mid(Chars, Cur + 1, 1) & KeyOutput If (((29 - i) Mod 6) = 0) And (i <> -1) Then i = i -1 KeyOutput = "-" & KeyOutput End If Loop While i >= 0 ConvertToKey = KeyOutput End Function thanks Daz, great program