First thing I will ask is, did you inspect the printer mechanically? With the printer switched off does the print head move freely from front to back and side to side?
If mechanically the printer is fine and you have no spots where the print head is being mechanically restricted, then that leaves us with firmware.
Why firmware because the printers XYZ limits or some refer them as print bed limits etc are defined in the firmware.
There are some sketchy workarounds but the best and only way is to configure proper bed offsets in firmware and configure your slicer with actual bed printable area.
But this is the biggest problem and that is that editing the firmware and compiling is not for the faint hearted.
Question is why did this happen? Did you flash any firmware yourself? Any mechanical changes to the 3d printer?
By the way did you buy it new or used from someone else? Just trying to make sure you actually know all the history of the printer.
Did you try downloading the official firmware from the Creality google drive:
https://drive.google.com/drive/folders/1...YVLFXKBFBi There are 2 versions of the firmware there, depending on whether you have a BLTouch installed or not. I assume not since you were talking about bed leveling help
Usually the process is simple, copy the firmware file onto and SD card, insert SD card into the SD card slot on the printer, switch on the printer and the firmware update should be done, power-cycle the printer and test to see if everything is functional.
XYZ end stops? You mean the physical ones? Just un-tighten the screws using a hex key, move to desired position and tighten them back. Not much too it as long as they does hit the physical limits of the machine. The Z limit is more important as this will limit how much you can adjust the leveling on the bed.
Leveling the bed? Tons of videos out there. But what exactly is it you would like to know?