As long as we can start with a uint64 number, this should work reasonably well:
N = uint64(2025027714713048816);
u = uint64(sqrt(double(N)))
Then perform this iteratively, UNTIL u converges:
u = (u + N/u)/2
Wrapping a while loop around it would suffice, but it should not take many iterations. See that the double sqrt has in fact arrived at the proper (approximate) sqrt, with no extra steps required at all.
So, not exact, but as close as we can get to the true square root in integers.