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 ...