Good luck, though, knowing when a user's nick (or a channel) is UTF-8 encoded in the instance of the server, and when it's not.
$rawbytes was added to overcome that limitation, it returns non-decoded and unaltered received text. prior to its addition,
/debug -i could also have been used, though less comfortably, to handle the data as it was originally received
With either of those solutions, you would need to store an altername nicklist for each channel you're in, as well as an alternate list of channels you're in, if you want to use a popup command to ban or kick someone. And the former becomes completely unreliable if you join the same channel twice (with ANSI and UTF-8 encodings), or if a nickname exists twice in a channel.
As mIRC stands right now, there is no way to target ANSI-encoded users or channels by using mIRC's native functionality, which is the real problem. If that issue is ever solved, I hope that Khaled adds something like $rawchan, $rawnick, $rawchan(N), $rawnick(rawchan,N), $rawsnicks in the future, so that popups can work reliably with ANSI-encoded elements, though it will probably never happen.