When creating a vsite (/site/register) scholarregister_validate_domain() will check for an existing vsite using the same path but it doesn't check to see if the requested path is in use elsewhere. There is nothing preventing the user from creating a vsite with a path of 'node', 'user', 'site'...

If a user creates a vsite called 'site' the entire registration process 404's as 'register' is not one of the 'site' vsite's pages.

My suggestion would be to also check the `menu_router` table for paths starting with the requested path.