def loadProfile(self): if self.ui.listProfiles.currentItem() is None: self.notifyStatus({ 'statuscode': 1, 'message': 'No profile selected' }) return profile = VBProfile.load(self.ui.listProfiles.currentItem().text()) if type(profile) is not VBProfile: self.notifyStatus(profile) return cfg = profile.config self.ui.editProfileName.setText(cfg['Name']) self.ui.editAPIKey.setText(cfg['APIKey']) self.ui.editHighlightCaption.setText(cfg['HighlightCaption']) self.ui.btnHighlightColorChooser.setStyleSheet(cfg['HighlightColor']) self.ui.boxThreshold.setValue(cfg['Threshold']) self.ui.checkUpperHalf.setCheckState(QtCore.Qt.CheckState.Checked if cfg['Upperhalf'] else QtCore.Qt.CheckState.Unchecked) self.ui.checkNoLibProc.setCheckState(QtCore.Qt.CheckState.Checked if cfg['NoLibProc'] else QtCore.Qt.CheckState.Unchecked) self.ui.editServerPort.setText(cfg['serverPort']) VBAPI.setAPIPort(cfg['serverPort']) self.notifyStatus({ 'statuscode': 0, 'message': 'Profile loaded successfully' }) self.cleanCaches()
def loadProfile(self): if self.ui.listProfiles.currentItem() is None: self.notifyStatus({ 'statuscode': 1, 'message': 'No profile selected' }) return profile = VBProfile.load(self.ui.listProfiles.currentItem().text()) if type(profile) is not VBProfile: self.notifyStatus(profile) return cfg = profile.config self.ui.editProfileName.setText(cfg['Name']) self.ui.editAPIKey.setText(cfg['APIKey']) self.ui.editHighlightCaption.setText(cfg['HighlightCaption']) self.ui.btnHighlightColorChooser.setStyleSheet(cfg['HighlightColor']) self.ui.boxThreshold.setValue(cfg['Threshold']) self.ui.checkUpperHalf.setCheckState( QtCore.Qt.CheckState.Checked if cfg['Upperhalf'] else QtCore.Qt. CheckState.Unchecked) self.ui.checkNoLibProc.setCheckState( QtCore.Qt.CheckState.Checked if cfg['NoLibProc'] else QtCore.Qt. CheckState.Unchecked) self.ui.editServerPort.setText(cfg['serverPort']) VBAPI.setAPIPort(cfg['serverPort']) self.notifyStatus({ 'statuscode': 0, 'message': 'Profile loaded successfully' }) self.cleanCaches()
def tryRun(self): """Try to run the configured command and in case of Exception return Exception message as a result Returns: TYPE: Dict """ try: if self.command == 'register': result = VBAPI.register(self.args[0], self.args[1]) elif self.command == 'download': if len(self.args) > 3: result = VBAPI.download( self.args[0], self.args[1], self.args[2], self.args[3]) else: result = VBAPI.download( self.args[0], self.args[1], self.args[2]) elif self.command == 'query': if len(self.args) > 1: result = VBAPI.query(self.args[0], self.args[1]) else: result = VBAPI.query(self.args[0]) elif self.command == 'searchProcs': if len(self.args) > 3: result = VBAPI.searchProcs( self.args[0], self.args[1], self.args[2], self.args[3]) elif len(self.args) == 3: result = VBAPI.searchProcs( self.args[0], self.args[1], self.args[2]) else: result = VBAPI.searchProcs(self.args[0], self.args[1]) elif self.command == 'searchBins': if len(self.args) > 3: result = VBAPI.searchBins( self.args[0], self.args[1], self.args[2], self.args[3]) elif len(self.args) == 3: result = VBAPI.searchBins( self.args[0], self.args[1], self.args[2]) else: result = VBAPI.searchBins(self.args[0], self.args[1]) elif self.command == 'showProc': if len(self.args) > 3: result = VBAPI.showProc( self.args[0], self.args[1], self.args[2], self.args[3]) else: result = VBAPI.showProc( self.args[0], self.args[1], self.args[2]) elif self.command == 'showBin': if len(self.args) > 2: result = VBAPI.showBin( self.args[0], self.args[1], self.args[2]) else: result = VBAPI.showBin(self.args[0], self.args[1]) elif self.command == 'upload': if len(self.args) > 4: result = VBAPI.upload( self.args[0], self.args[1], self.args[2], self.args[3], self.args[4]) elif len(self.args) == 4: result = VBAPI.upload( self.args[0], self.args[1], self.args[2], self.args[3]) elif len(self.args) == 3: result = VBAPI.upload( self.args[0], self.args[1], self.args[2]) else: result = VBAPI.upload(self.args[0], self.args[1]) elif self.command == 'reprocess': if len(self.args) > 2: result = VBAPI.reprocess( self.args[0], self.args[1], self.args[2]) else: result = VBAPI.reprocess(self.args[0], self.args[1]) elif self.command == 'avscans': if len(self.args) > 1: result = VBAPI.avscans(self.args[0], self.args[1]) elif self.command == 'behaviors': if len(self.args) > 1: result = VBAPI.behaviors(self.args[0], self.args[1]) elif self.command == 'pedata': if len(self.args) > 1: result = VBAPI.pedata(self.args[0], self.args[1]) except Exception as e: result = { 'statuscode': 1, 'message': e.message } return result