Private/Get-PlainPasswordFromCredential.ps1

function Get-PlainPasswordFromCredential {
    param(
        [Parameter(Mandatory)]
        [pscredential]$Credential
    )
    $bstr = [Runtime.InteropServices.Marshal]::SecureStringToBSTR($Credential.Password)
    try { [Runtime.InteropServices.Marshal]::PtrToStringBSTR($bstr) }
    finally { [Runtime.InteropServices.Marshal]::ZeroFreeBSTR($bstr) }
}