Hi ,
You can try re-pushing the clients from the SCCM console or you can try the below script to change the site code. You can distribute this script thru software distribution method or can apply as logon script.
sSiteCode = "xxx"
sMachine = "."
set oCCMNamespace = GetObject("winmgmts://" & sMachine & "/root/ccm")
Set oInstance = oCCMNamespace.Get("SMS_Client")
set oParams = oInstance.Methods_("SetAssignedSite").inParameters.SpawnInstance_()
oParams.sSiteCode = sSiteCode
oCCMNamespace.ExecMethod "SMS_Client", "SetAssignedSite", oParams
'xxx - refers to site code
NOTE : Please try the same on your lab first before testing it to your production environment.
regards ,
Raj