Ok .. ma mi avevi detto che ti interessava solamente l'ultimo byte dei risultati intermedi. Dato che i valori sono
499602D2
E2F62FF2
12592F12
37EC2032
B6AE2352
21905872
3A95DF92
E3F3D8B2
233163D2
a te interessa sempre e solo D2, F2, 12 ... giusto?
P.S. Nel codice che hai mostrato la linea
t = ( code & 0x00F00000 ) >> 28;
non fa altro che azzerare t in ogni caso e quindi la
code |= t;
e' completamente inutile ...
Probabilmente dovrai rivedere queste linee ...