mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-05 13:20:11 +00:00
The libSceLibcInternal of a payload process on a PS5 (firmware 12.70) seeds the additive feedback generator with a good_rand that reads its argument as an int32, turns 0 into 123459876 and applies x = 16807 * (x % 127773) - 2836 * (x / 127773), adding 0x7fffffff to a negative result. Its default state is the state after srandom(1), not a precomputed table. Replace the good_rand, build the default state by seeding it with 1 and add a guest test that pins the first values of a fresh process, the values after each measured seed and the saved state words of every measured initstate size.