void SetTime(uint16 multiplier, uint16 year, uint16 month, uint16 day, uint16 hour, uint16 minute, uint16 second);
However, it can and will screw up some stuff.
I once made synchronization with realworld time for some x1 multiplier server, and - IIRC - i had to tune all running time events [ChangeTimeEvent()] when using SetTime(). It was done on (re)start only, so before clock even started ticking, no idea what other issues you might have with time travelling on unfrozen world.
Why would you want to change world time on character registration anyway? oO ~settime alone is dangerous enough if used outside of CBT