For a proof of work system a hash algorithm generates one pseudorandom index each round, in the same manner as RC4 and Spritz do. And it uses a bigger S-box, e.g. 2^20 numbers. The actual hash would be the first 32 output bytes of the stream cipher after dropping a certain number of rounds.
Would this be sufficient to get ASIC-resistance in a cryptocurrency?