In DiscoveryServices.cpp:
srand( GetTickCount() );
should be added to GetRandomWebCache and GetRandomService.
Otherwise, Shareaza Plus will not get services at random. srand( GetTickCount() ); exists in Shareaza.cpp, but srand() is per thread, not per process.