rewrite the prng() with assembly language