The only ways I can see approaching this would be from a binary standpoint, i.e. go one by one and look for the top 5. No way of doing it with a mIRC cal, or so I'm aware.

That being said, do you have a ceiling on the score or size values, or can they continue to grow? If you know the ceiling, go in reverse order (counting down) and look for the table entry with the highest value, then subtract one. Look for the next highest, etc. Keep a queue of 5 "tops", and display them.

I'll see what i can do playing around with it. If anyone wants to play with it as well, here's a generator to give you something to work with:

Code:
alias pinfo {
  var %tbl = pinfo, %entries = 100

  if (!$hget(%tbl)) {
    /hmake %tbl 10

    var %p = 0, %tab = $chr(9)
    while (%p < %entries) {
      var %n = 0, %len = $rand(6,12)
      while (%n < %len) {
        var %name = $+(%name,$rand(a,z))
        /inc %n
      }
      /hadd %tbl %p $+($rand(1,10),%tab,$rand(1,10),%tab,$rand(1,10),%tab,%name,%tab,$rand(1,1000),%tab,$rand(1,65535))
      /unset %name
      /inc %p
    }
    /echo -s Table %tbl created with %p entries
  }
}


-KingTomato