Is there a function to get post info for any publish_status by post ID?

There is nothing in the codex that would suggest that get_post() would not work with drafts.
if you experience otherwise, try get_posts() with the include or post__in parameter.

Also see the supported type and status parameters here.