def doNumToName(self): allMethodCallNumMap = {} for sName in self.accessSmaliSet.keys(): callNumMap = self.accessSmaliSet[sName].methodCallNumMap for callNum in callNumMap.keys(): if callNum not in allMethodCallNumMap.keys(): allMethodCallNumMap[callNum] = callNumMap[callNum] else: raise ValueError("method call num map duplicate") for s in self.smaliList: sFile = File(os.path.join(self.path, s)) sName = Smali.getSmaliName(s) if sName in self.accessSmaliSet.keys(): sFile.replaces(self.accessSmaliSet[sName].methodDefNumMap) sFile.replaces(allMethodCallNumMap)
def doNameToNum(self): allMethodCallNameMap = {} for aSmali in self.accessSmaliSet.keys(): self.accessSmaliSet[aSmali].createNameMap() callNameMap = self.accessSmaliSet[aSmali].methodCallNameMap for callName in callNameMap.keys(): if callName not in allMethodCallNameMap.keys(): allMethodCallNameMap[callName] = callNameMap[callName] else: raise ValueError("method call name map duplicate") for s in self.smaliList: sFile = File(os.path.join(self.path, s)) sName = Smali.getSmaliName(s) if sName in self.accessSmaliSet.keys(): sFile.replaces(self.accessSmaliSet[sName].methodDefNameMap) sFile.replaces(allMethodCallNameMap)