Example #1
0
def _spawnThreads():
    for i in range(config.workers_num):
        qp = QueueProcessor()
        t = Thread(target=qp.Work)
        t.setDaemon(True)
        t.start()


print(banner())
l = Logger("main")

if __name__ == "__main__":  # TODO: log.error when target couldn't be found
    _initDirs()
    _spawnThreads()
    machine_id = _setMachineId()
    analysis_id = _setAnalysisId()
    debug = Debug(EH, bHostileCode=config.antianti)  # ANTIANTI = EXPERIMENTAL
    target = Target(argv[1] if len(argv) == 2 else askForTarget())
    db.ProcessStartup(target)
    l.warn('Malyzer analysis started.')
    if (target.isdigit()):
        attachToPid(int(target))
    elif (target.isPath()):
        runAndAttach(target.split(' '))  # make cmd and args apart
    else:
        attachToFilename(target)
    if config.make_summary:
        r.printReport(machine_id)
    l.conPrint("Thank you for using malyzer ;-)")