If I'm not mistaken, SplitMix64 does this, too. Its update function is a simple addition, so random access is just a matter of multiplication. All the randomness is provided by the mixing function (which uses XORs, bitshifts, and multiplies).
SplitMix64 uses another multiplication and only fixed bitshifts, and is 64-bit. I've found more about the standard form of its core - a permuting hash function with two multiplications and three xor-right-shifts. There are also 32-bit functions of that type, where the best seem to be listed in this article on the topic: https://nullprogram.com/blog/2018/07/31/