Start kind using some White Vinegar with a couple of drops of dish soap, the discoloration you describe may just be sweat and dried oil marks. Next step if that does not work try Brass metal polish this is one of the less abrasive and even les abrasive is silver polish. A polish that is designed for Chrome of Stainless Steel, a name that comes to mind is "Solvol Autosol" if that does not work live with what you have because anything harsher can take the sharpness of the engraving.
Take your time be gentle and do not leave your gun in a worse state than it is now.
Good luck