I can do both. Sharing the code may take me a couple of days. The code I wrote for it was a few projects back and I have to dig through my archives to find it but once I do i will be glad to share it with you. What the module does is pretty basic. For the situation I am in at work, it works perfectly. We added the module to the user page. When added the module supplies two buttons, "add a new user", and "modify an existing". By clicking on add you get the very basic information to add, username, display name, first name, last name and email, if I remember correctly. Then you get a checkbox list of all of you portals based on their portal name. Enter the information on the user to register them and then select any of the portals that you want them added to. Once you hit submit, it enters the new user, with no roles, on all of the portals you selected.
If you hit modify an existing, you get a checkbox list of all of the portals, and the user information specified above, then you can select any portals you want to add the user to, or remove them from. Hitting submit will update the portals to reflect the new assignments.
I couldn't find an elegant role to add the user with permissions because each of the portals we have has unique user roles. If you did want to add a user and your portals all have the same role, then you could modify this to add the role at the same time without too much effort. I think you might be able to add a user to all your portals in the admin role at once too. Once the user is added you just need to go to each portal login and set roles. We usually have 15 or more but I don't usually need to add a user to more the 2 or 3 portals at a time so the permissions is a bit of a pain but not bad.
The module if pretty basic, I didn't put much effort into making it look pretty but it wouldn't take much to do so. We just needed a quick solution and the only people that use it are programmers and we didn't really care about looks. It does have standard setting controls so you could allow other users to manipulate it if you put it on a different page but we just wanted 3 of us to have access and so we put it where only the 3 of us can get at it.
I will try to find and get you the code in the next couple of days. I will send it to you in a zip package. I don't usually create the dll's so you will have the actual source and can change it at will. One word of caution, it is written in C#.