It seems to me that you are simply using UPPER and lower case letters to represent binary.

Code:

alias combinations {
  if ($1 == $null) { echo -a /combinations <text> | return }
  var %t, %tt, %i = $$1
  var %n = 0, %nn = $base($str(1,$len(%i)),2,10)
  while (%n <= %nn) {
    %t = $null
    var %m = 0, %mm = $len(%i)
    while (%m < %mm) {
      inc %m
      %tt = $mid(%i,%m,1)
      %t = %t $+ $iif($mid($base(%n,10,2),%m,1) = 1,$upper(%tt),%tt)
    }
    inc %n
    echo -a %t
  }
  echo -a Found $calc(%nn + 1) combinations
}


- This will list all combinations of the first word only. It will require some modifications to support multiple words, due to how mIRC handles spaces. It will also accept non-letter characters without throwing an error, but it will attempt to make numbers and symbols into upper and lower case (which are the same character in mIRC). You can change the output from /echo to whatever form you need.

* trying to input a long word will lock up your mIRC for a long time, and likely disconnect you from any servers you are on due to ping timeouts.

-genius_at_work