\hypertarget{classtheo_1_1obf_1_1engine__t}{}\doxysection{theo\+::obf\+::engine\+\_\+t Class Reference} \label{classtheo_1_1obf_1_1engine__t}\index{theo::obf::engine\_t@{theo::obf::engine\_t}} singleton obfuscation engine class. this class is responsible for keeping track of the registered passes and the order in which to execute them. {\ttfamily \#include $<$engine.\+hpp$>$} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item void \mbox{\hyperlink{classtheo_1_1obf_1_1engine__t_a8ffc963a133653fa3a0875798d0d3426}{add\+\_\+pass}} (\mbox{\hyperlink{classtheo_1_1obf_1_1pass__t}{pass\+\_\+t}} $\ast$pass) \begin{DoxyCompactList}\small\item\em add a pass to the engine. the order in which you call this function matters as the underlying data structure that contains the passes is a vector. \end{DoxyCompactList}\item void \mbox{\hyperlink{classtheo_1_1obf_1_1engine__t_a7acfdbe9c229cf1f351cec610ab193d3}{run}} (\mbox{\hyperlink{classtheo_1_1decomp_1_1symbol__t}{decomp\+::symbol\+\_\+t}} $\ast$sym) \begin{DoxyCompactList}\small\item\em run all the passes on the symbol. this function will only run a pass if the symbol is the same type as the pass requires. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection*{Static Public Member Functions} \begin{DoxyCompactItemize} \item static \mbox{\hyperlink{classtheo_1_1obf_1_1engine__t}{engine\+\_\+t}} $\ast$ \mbox{\hyperlink{classtheo_1_1obf_1_1engine__t_a545af3868f9037dbbfefb02e03e60f8a}{get}} () \begin{DoxyCompactList}\small\item\em get the singleton object of this class. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection{Detailed Description} singleton obfuscation engine class. this class is responsible for keeping track of the registered passes and the order in which to execute them. Definition at line 42 of file engine.\+hpp. \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classtheo_1_1obf_1_1engine__t_a8ffc963a133653fa3a0875798d0d3426}\label{classtheo_1_1obf_1_1engine__t_a8ffc963a133653fa3a0875798d0d3426}} \index{theo::obf::engine\_t@{theo::obf::engine\_t}!add\_pass@{add\_pass}} \index{add\_pass@{add\_pass}!theo::obf::engine\_t@{theo::obf::engine\_t}} \doxysubsubsection{\texorpdfstring{add\_pass()}{add\_pass()}} {\footnotesize\ttfamily void theo\+::obf\+::engine\+\_\+t\+::add\+\_\+pass (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classtheo_1_1obf_1_1pass__t}{pass\+\_\+t}} $\ast$}]{pass }\end{DoxyParamCaption})} add a pass to the engine. the order in which you call this function matters as the underlying data structure that contains the passes is a vector. \begin{DoxyParams}{Parameters} {\em pass} & a pointer to the pass in which to add to the engine.\\ \hline \end{DoxyParams} \mbox{\Hypertarget{classtheo_1_1obf_1_1engine__t_a545af3868f9037dbbfefb02e03e60f8a}\label{classtheo_1_1obf_1_1engine__t_a545af3868f9037dbbfefb02e03e60f8a}} \index{theo::obf::engine\_t@{theo::obf::engine\_t}!get@{get}} \index{get@{get}!theo::obf::engine\_t@{theo::obf::engine\_t}} \doxysubsubsection{\texorpdfstring{get()}{get()}} {\footnotesize\ttfamily static \mbox{\hyperlink{classtheo_1_1obf_1_1engine__t}{engine\+\_\+t}}$\ast$ theo\+::obf\+::engine\+\_\+t\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} get the singleton object of this class. \begin{DoxyReturn}{Returns} the singleton object of this class. \end{DoxyReturn} \mbox{\Hypertarget{classtheo_1_1obf_1_1engine__t_a7acfdbe9c229cf1f351cec610ab193d3}\label{classtheo_1_1obf_1_1engine__t_a7acfdbe9c229cf1f351cec610ab193d3}} \index{theo::obf::engine\_t@{theo::obf::engine\_t}!run@{run}} \index{run@{run}!theo::obf::engine\_t@{theo::obf::engine\_t}} \doxysubsubsection{\texorpdfstring{run()}{run()}} {\footnotesize\ttfamily void theo\+::obf\+::engine\+\_\+t\+::run (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classtheo_1_1decomp_1_1symbol__t}{decomp\+::symbol\+\_\+t}} $\ast$}]{sym }\end{DoxyParamCaption})} run all the passes on the symbol. this function will only run a pass if the symbol is the same type as the pass requires. \begin{DoxyParams}{Parameters} {\em sym} & symbol to run all passes on.\\ \hline \end{DoxyParams} The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item include/obf/\mbox{\hyperlink{engine_8hpp}{engine.\+hpp}}\end{DoxyCompactItemize}