Is it possible to restore a connection that is in state TIME_WAIT?
If not, I use raw packets (forgering the source), is it possible?
(Please understand that I do not intend to do bad things, it's just a matter of curiosity)
No, this is not possible. TIME_WAIT is a state that acts like a bucket to catch packets that could belong to the closed connection and could screw up a new connection using the same IP/Port combinations. This is an error-catching state. Replaying packets from the original connection will be sent to the bit-bucket and not interfere with any other connections that may exist.