Important
this project has been officially archived. It has been a rewarding experience to develop and share this project with the community. However, I’ve noticed that many users lack the necessary coding or reverse engineering experience to fully benefit from the project. This has led to an increase in basic questions and issues that detract from the project's original intent.
Deobfuscator Plugin
The DeobfuscatorPlugin
class in the de4py
API allows you to create deobfuscator plugins to simplify code by removing obfuscation.
from plugins.plugins import DeobfuscatorPlugin
import re
class DeobfuscatorExample(DeobfuscatorPlugin):
def __init__(self):
super().__init__(
plugin_name="deobfuscator",
creator="creator",
link="https://github.com/Fadi002/de4py-plugins-repo/blob/main/example1.py",
regex=re.compile(r'regex'),
deobfuscator_function=self.deobfuscator_function
)
def deobfuscator_function(self, file_path) -> str:
# Implement your deobfuscation logic here
# ...
plugin_name
: A unique name for your deobfuscator plugin. (ex. BlankOBF_deobfuscator)creator
: The name of the plugin creator. (ex. Ryan)link
: A link to the plugin's source code of the plugin.regex
: A regular expression to identify obfuscated code patterns.deobfuscator_function
: The function that performs the deobfuscation. It takes afile_path
as an argument and returns the deobfuscated code as a string.
- Create a class that inherits from
DeobfuscatorPlugin
. - Implement the
__init__
method, setting the required parameters. - Implement the
deobfuscator_function
method to perform the actual deobfuscation.
Theme Plugin
The ThemePlugin
class in the de4py
API allows you to create theme plugins to customize the appearance of the de4py interface. Themes are defined using CSS code.
from plugins.plugins import ThemePlugin
class LightThemeExample(ThemePlugin):
def __init__(self):
super().__init__(
plugin_name="Light theme example plugin",
creator="Fadi002",
link="https://github.com/Fadi002/de4py-plugins-repo/blob/main/example2.py",
css="""
body {
background-color: lightpink;
}
h1, h2, h3, h4, h5, h6, p, span, a, ul, li, #clock, label {
color: darkred;
}
.frame {
border: 2px solid #4ba3e2;
background-color: #f8f9fa;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 0 10px #4ba3e2;
}
btn {
color: darkred;
}
#changeLog, #outputanalyzer, #outputwinapihooks, #outputDEOBF, .scroll-box, textarea {
background-color: #f8f9fa;
color: darkred;
}
.custom-input {
background-color: #9e9e9e;
color: #333;
}
.custom-input:hover {
background-color: #e1ecf4;
}
.custom-input:focus {
background-color: #d0e5f5;
}
"""
)
plugin_name
: A unique name for your theme plugin. (ex. Neon Dark theme)creator
: The name of the plugin creator. (ex. Ryan)link
: A link to the plugin's source code.css
: The CSS code defining the theme.
- Create a class that inherits from
ThemePlugin
. - Implement the
__init__
method, setting the required parameters. - Define the theme using CSS code in the
css
parameter.
Make sure to read the CSS source code of the main GUI to understand how to modify the appearance and to create your own themes accordingly.
Help?
Looking for Assistance?
If you need support or want to share your plugin with us, don't hesitate to reach out through our Discord server.
Join us on Discord