I want to be able to put my mouse over a mob and I want the mouse_over_pointer's icon_state to because "[mobs.rank]", I'm not even sure this is possible but it would be a nice feature to add, any ideas?
"This variable may also be assigned to any of the other built-in mouse pointers, or a custom icon or icon state. If an icon state is specified, this is applied against the object's main icon to find a custom pointer."

When working with mouse pointers, you generally alter your icon file to make it fit the format used for mouse pointers, not the other way around. If you don't want to do that, you could use an icon object.
I might have mis-read the request but what about something like this?

var/icon/I = new("Icon.dmi", "Rank1"); // Rank1 is an image in the .dmi file.
I.Scale(16, 16);
usr.client.mouse_pointer_icon = I;

usr.client.mouse_pointer_icon = initial(usr.client.mouse_pointer_icon);
In response to Tsfreaks
It would be good if you cached those icons as well, as the icons procs can be rather slow and bandwidth consuming.