for pattern in method_patterns: for match in re.finditer(pattern, self.file_data): try: address = struct.unpack('<I', match.group(1))[0] # Look for method name nearby method_name = self._find_method_name(match.start()) if method_name: handlers.setdefault(method_name, []).append(address) except: pass
decompiler = DelphiDecompiler(sys.argv[1]) delphi decompiler dede
class ComponentType(Enum): TFORM = "TForm" TBUTTON = "TButton" TEDIT = "TEdit" TMEMO = "TMemo" TLABEL = "TLabel" TCOMBOBOX = "TComboBox" TLISTBOX = "TListBox" TCHECKBOX = "TCheckBox" TRADIOBUTTON = "TRadioButton" TPANEL = "TPanel" TMAINMENU = "TMainMenu" TTIMER = "TTimer" UNKNOWN = "Unknown" for pattern in method_patterns: for match in re