Offtopic, but as someone who hasn't done a lot of JS recently, debugging something like this looks like a terrible job. I assume the non-sensible function/object names are the result of some kind of packer? Do modern JS folks have to recreate this sort of thing in a pre-packed environment to track it down more easily?