Get-Translit.psm1

function Get-Translit {
    param([string]$inString)
    $Translit = @{
        [char]'�' = "a"
        [char]'�' = "a"
        [char]'�' = "b"
        [char]'�' = "b"
        [char]'�' = "v"
        [char]'�' = "v"
        [char]'�' = "g"
        [char]'�' = "g"
        [char]'�' = "d"
        [char]'�' = "d"
        [char]'�' = "e"
        [char]'�' = "e"
        [char]'�' = "yo"
        [char]'�' = "yo"
        [char]'�' = "zh"
        [char]'�' = "zh"
        [char]'�' = "z"
        [char]'�' = "z"
        [char]'�' = "i"
        [char]'�' = "i"
        [char]'�' = "y"
        [char]'�' = "y"
        [char]'�' = "k"
        [char]'�' = "k"
        [char]'�' = "l"
        [char]'�' = "l"
        [char]'�' = "m"
        [char]'�' = "m"
        [char]'�' = "n"
        [char]'�' = "n"
        [char]'�' = "o"
        [char]'�' = "o"
        [char]'�' = "p"
        [char]'�' = "p"
        [char]'�' = "r"
        [char]'�' = "r"
        [char]'�' = "s"
        [char]'�' = "s"
        [char]'�' = "t"
        [char]'�' = "t"
        [char]'�' = "u"
        [char]'�' = "u"
        [char]'�' = "f"
        [char]'�' = "f"
        [char]'�' = "h"
        [char]'�' = "h"
        [char]'�' = "c"
        [char]'�' = "c"
        [char]'�' = "ch"
        [char]'�' = "ch"
        [char]'�' = "sh"
        [char]'�' = "sh"
        [char]'�' = "sch"
        [char]'�' = "sch"
        [char]'�' = ""
        [char]'�' = ""
        [char]'�' = "y"
        [char]'�' = "y"
        [char]'�' = ""
        [char]'�' = ""
        [char]'�' = "e"
        [char]'�' = "e"
        [char]'�' = "yu"
        [char]'�' = "yu"
        [char]'�' = "ya"
        [char]'�' = "ya"
    }
    $outCHR = ""
    foreach ($CHR in $inCHR = $inString.ToCharArray()) {
        if ($Null -cne $Translit[$CHR] )
        { $outCHR += $Translit[$CHR] }
        else
        { $outCHR += $CHR }
    }
    Write-Output $outCHR
}

Get-Translit($args[0].ToString())