Okay, so the pointer to Cyndaquil script is back to normal (and so is its script, right) ?
Does the problem only occur with Cyndaquil event?
All I can pick up from this is that you have either programmed something wrong (with asm) yourself, or some data for example in rom bank 0 has been edited by an accident.
Edit:
Sounds like some "table handler" isn't doing the job right. Instead of loading some 16-bit value in little endian, you'll get it in big endian instead. If you can fix the problem by debugging, good. But if not, you can also try tracking down the bug with ips files (especially if you have kept backups).
If you haven't kept regular backups, this method is pretty useless though. I really advise keeping backups though - I have almost 1000 copies of Dark Energy in my computer (with version numbers at the end of their names).
P.S
Just as interesting note, the freezing during that script happens due to a thing which is called "
stack overflow". It's a common programming error especially when trying to implement a program, or part of it, with recursion.