Here's a couple of regex-based methods.
alias startsupper return $iif($regex($1,/^[\W\d_]*(?=[^\d_])(\w)/) && $regml(1) isupper, $true, $false)
alias startsupper2 return $regex($1,/^[^a-zA-Z]*[A-Z]/)
Although $startsupper() is longer it should in theory be future-proof for if/when mIRC ever supports Unicode in
isupper (by the looks of things it doesn't yet although I'm only using 6.2).
Edit: Fixed digit/underscore issue. Thanks qwerty!