With an update, the unencrypted password string could be captured just before it is encrypted as part of the confirmation process, and then this could be included in the email sent to the user. Wouldn't this be possible? Reference a value already in memory, instead of reading from the database. Or build the email to be sent, before the password is encrypted, and decide whether to send after the confirmation updates are completed.
This should be fairly easy to incorporate, with a few enhancements to the code, and a bit of open thinking.
G