I agree with a few of the posters above. remove the chain to get a good deep cleaning.
On very badly rusted, dirty chains I start with industrial de-greasers and regular dish soap in a container in the sink.
I keep working the chain until it loosens up and no more dirt seem to be coming out of the links, than rinse with water.
Next I soak it in denatured alcohol and continue agitating. alcohol will help remove smaller particles and remove water from the rinse.
Next I soak in WD40 and keep agitating. if the alcohol or wwd40 changes color its still has dirt trapped in the links so do a fluid change and repeat.
one pint soup containers w covers work great for soaking and shaking the chain.
It a slow process (1hr), but I just savaged a sedis that looked like it was trashed and when cleaned looked and functioned as new.