TCIP6C595 replacement
Well one idea would be to go ahead and still use the HC595 but buffer it with a part such as the ULN2003A. That would at least get rid of having to use the batch of discrete transistors.

Two issues with the part would be that it is only 7 drives so it does not match up 1::1 with an 8-bit HC595. The other issue is that the ULN2003A is a darlington part so when it saturates in the ON State it will have a voltage drop at the output of ~0.8 -> 1V to GND. That can cause problems if the outputs are being used to drive standard logic signals. The voltage drop may also increase the power dissipation in the part to unacceptable levels if you are sinking a lot of current.