Just messing with the new mIRC and it looks like this works fine for Unicode:
alias UrlEncode return $regsubex($1-,/([^\d\w])/g,$+(%,$base($asc(\t),10,16)))
The regsubex engine seems to be splitting the unicode back into pairs before processing.