(Replying to PARENT post)
Also sprinkle some parts of the code that check how much time it takes to execute it and then takes a different code path if it was interrupted.
What is done here is child's play, the author is clearly not familiar with old-school assembly obfuscation - this code is one script away from being de-obfuscated.
(Replying to PARENT post)
(The JS that's used to detect adblockers and/or coerce you into viewing ads is often obfuscated. Those of you who have played around with this stuff may recognise this keyword: DtsBlkVFQx.)
(Replying to PARENT post)
Looks insane, in a bad way.
(Replying to PARENT post)
(Replying to PARENT post)
I'm genuinely curious how much time and money was wasted on this imbecilic venture.
(Replying to PARENT post)
(Replying to PARENT post)
If you would prefer that a summer student at an enterprise customer doesn't replace your product with an in-house work-alike, it's useful. Similar if it's cheaper to buy your product than spending several hours reversing it.
If your business model relies on the integrity of a secret (key, derivation component, method, etc), it probably has a single, catastrophic failure mode and obfuscation isn't your solution.
(Replying to PARENT post)
And for what? Obfuscating your code so that people don't steal it or whatever? This kind of obfuscation can be easily and programmatically reversed engineered if someone really wants to, so... why do it? Just to screw with people trying to look at the source code of a web page?
People complain about JavaScript minifiers and WebAssembly that they're making the web less open and hackable, but at least those things have a point to them. There's a performance upside! This is just "naah, lets make the web slower, more closed and less hackable, for... you know... reasons."