USALS is a DiSEqC command of a specific calculated hex value. There is no recalculate function with the USALS process. Only one motor command value is issued or reissued. Does this happen with multiple multiboot images?
This sounds like a DiSEqC decoding error with the STAB motor. Causes could include signal amplitude (attenuation by fitting corrosion, kinked, pinched, kinked or water infiltrated coax), internal motor position sensor miscounts, or a motor logic issue.
I have seen USALS enabled motors loose counts during a move and return to "0" reference position to recount the calculated offset. Is the motor returning to the centered position during this swing dance? That would point to the internal sensor issue as jorgek found.
Suggested testing steps if not the above:
1. Run a temporary coax.
2. Perform a motor reset.
3. Test for correct STB DiSEqC command strings.
4. If only with one image, perform factory reset and do not reinstall .xml file. Build new configurations and lists.