lelinhtinh / de4js

JavaScript Deobfuscator and Unpacker
https://lelinhtinh.github.io/de4js/
MIT License
1.29k stars 325 forks source link

Add WiseLoop unpacker #67

Closed Alluseri closed 3 years ago

Alluseri commented 3 years ago

Is your feature request related to a problem? Please describe. It is not related to a problem of mine, but I want de4js to expand as a project, so I am submitting a useful feature.

Describe the solution you'd like I have this Javascript project: https://github.com/FAKE1007/NotSoWise/blob/main/notsowise.js Perhaps you could make a good unpacker from that code. It's not perfect, and I believe it might have a few problems, but it works, so you could take that as a base.

Additional context WiseLoop Packer link: https://wiseloop.com/demo/php-javascript-obfuscator

lelinhtinh commented 3 years ago

Although the Eval Method can decode this, it's not as easy and clean as your library. I understand you want to contribute a Pull Request, but looking at my smelly code you don't know where to start - sorry for that. Every time I add a new feature or fix a bug, that's every time I want to refactor this sh*t, ... at next time. So far, it never be completed. If anyone else can help, PR is always welcome.

lelinhtinh commented 3 years ago

I made a little change and added NotSoWise to this project. https://github.com/lelinhtinh/de4js/commit/ec17b85821d1d08d0fa833d327591e422018f641 If you continue to develop NotSoWise into a complete library, I will add it as a Git Submodule.

Alluseri commented 3 years ago

Thanks, I will try to continue improving my project!

Alluseri commented 3 years ago

Hello. I have updated my project: https://github.com/FAKE1007/NotSoWise/blob/main/unpacker.js

I styled it so it would fit other modules(based off of ArrayDecode.js), and added 2 different modes: Eval and Functional. I am not sure if I want to do a pull request or not, since if I'm going to break something it's going to be on me.