Ok.. done some further study...And this algorithm definitely works with Thomson TG585 v7 router. I have calculated WPA PSK manually as well as with this python script http://pastebin.com/tjV2RZ23 and it matches.

I am now talking about Thomson TG585 v8

Here is an output of wps2key for TG585 v8:

Code:
root@bt:~/scripts/wpstools# ./wps2key.py -i mon0
WARNING: No route found for IPv6 destination :: (no default route?)

BSSID: 08:76:FF:10:4B:D4
ESSID: Thomson104BD4
----------------------------------------------------------
Version                           : 0x10
WPS State                         : 0x02
Response Type                     : 0x03
UUID-E                            : 0x71a8e7f061795361a4c9736bfc330c12
Manufacturer                      : THOMSON
Model Name                        : Thomson TG
Model Number                      : 585 v8
Serial Number                     : 1040SF3DH
DEFAULT KEY                       : 9438086AB8
Primary Device Type               : 0x00060050f2040001
Device Name                       : Thomson TG585 v8
Config Methods                    : 0x0084
RF Bands                          : 0x03
I also have calculated the default key manually and had arrived with the following sha-1 hash
9438086ab83e2d16eaffccd167f4c0ef6aa6feae

So far so good except this is the not the printed WPA PSK key..

Here is the details printed on the sticker on the modem:

Mac: 08:76:FF:10:0E:81 (Note the difference in MAC Address, I was rather surprised)
Access Key: NRMWF6EN
S/N: CP1040SF3DH
WPA Key: CA0CFFE8B2

Note the Key which is printed is different from what was calculated.

So the question is what is the new algorithm and is there something I am doing here wrong.

Reagrds