this is only for 4.21:
you have have to decrypt vsh.self.swp and vsh.self.cexsp and change two offsets. in vsh.self.swp go to offset 0x65BBA0 where you have to change the image version, and at offset 0x671B90 the firmware version.
in vsh.self.cexsp go to offset 0x653890 to change cex image version and at offset 0x6695B8 cex firmware version. of course on both you have to use the same values.
besides patching vsh selfs you have to rename the index.dat from the ofw version you want to spoof to, to index.dat.swp, and version.txt to version.txt.swp and copy them over to dev_flash/vsh/etc. this is done in normal mode and not in rebug mode or you replace files in pup itself.
a little late... i won't provide any spoofers, but i can tell you how to do it on your own.