def __init__(self, name): vm = auto_vm(name) if vm is None: raise ValueError('Format not recognised: %s' % name) self.vma = analysis.uVMAnalysis(vm) self.classes = dict((dvclass.get_name(), dvclass) for dvclass in vm.get_classes())
def display_dvm_info(self): a = apk.APK(self.apk) vm = dvm.DalvikVMFormat(a.get_dex()) vmx = analysis.uVMAnalysis(vm) return { "Native": analysis.is_native_code(vmx), "Dynamic": analysis.is_dyn_code(vmx), "Reflection": analysis.is_reflection_code(vmx), "Obfuscation": analysis.is_ascii_obfuscation(vm) }
def analyze(self) : self.__a = analysis.uVMAnalysis( self.__bc ) self.__bc.set_vmanalysis( self.__a )