#!/usr/bin/env python2.7 """ Example IDA Python script to get "names" (functions, variables, etc...) from string constants using Natural Language Processing. """ from __future__ import print_function import pprint import idautils import nltk from nltk.tokenize import word_tokenize from nltk.tag import pos_tag def preprocess(sent): sent = nltk.word_tokenize(sent) sent = nltk.pos_tag(sent) return sent strings = Strings() strings.setup(strtypes=[0, 1]) s = "\n".join(map(str, list(strings))) results = preprocess(s) for value, type in results: if len(value) > 4 and (type == "NN" or type.startswith("VB")): print("Found", value, "type", type)