I have a program that I am re-writing in C#. There is a function that I do not have the code for that I would like to recreate in the re-write. Based on my investigation I believe that it is an RNG of some sort.
I have isolated the seed value and output of the function. It generates an unsigned integer (seed) on program startup and then produces a 256 uint array based on that seed. The program uses the values in the array and once the program reaches the end of the array the seed increments by 1 and the output of the array changes.
What I have tried: I've set up tests using the algorithms for all the popular(?) RNG/PRNG methods that I could find (mersenne twister, xor32, etc). I figured they might have used one of these when creating the function but have failed to reproduce the output.
My question is, if I have the output and the seed, is there a way to reproduce the function that produced this output? I want to recreate it if possible.