/// <summary> /// Instantiate a new Sniffer on process, using cache /// </summary> /// <param name="rsProcess"></param> /// <param name="cache"></param> public Sniffer(Process rsProcess, ICache cache, SnifferSettings settings = null) { //Use default settings if no settings were given if (settings == null) { settings = new SnifferSettings(); } _rsProcess = rsProcess; _cache = cache; _settings = settings; //Initialise memory reader memReader = new RSMemoryReader(rsProcess); OnStateChanged += Sniffer_OnStateChanged; //Listen to PsarcInstalled event for auto enumeration if (settings.enableAutoEnumeration) { OnPsarcInstalled += Sniffer_OnPsarcInstalled; } DoMemoryReadout(); DoStateMachine(); DoSniffing(); }
/// <summary> /// Instantiate a new Sniffer on process, using cache /// </summary> /// <param name="rsProcess"></param> /// <param name="cache"></param> public Sniffer(Process rsProcess, ICache cache) { this.rsProcess = rsProcess; this.cache = cache; memReader = new RSMemoryReader(rsProcess); DoMemoryReadout(); DoStateMachine(); DoSniffing(); }
/// <summary> /// Instantiate a new Sniffer on process, using cache /// </summary> /// <param name="rsProcess"></param> /// <param name="cache"></param> /// <param name="config"></param> public Sniffer(Process rsProcess, ICache cache, SnifferActions actions) { this.rsProcess = rsProcess; this.cache = cache; memReader = new RSMemoryReader(rsProcess); if (actions.HasFlag(SnifferActions.MEMORY_READOUT)) { DoMemoryReadout(); } if (actions.HasFlag(SnifferActions.STATE_MACHINE)) { DoStateMachine(); } if (actions.HasFlag(SnifferActions.SNIFF_FILE_HANDLES)) { DoSniffing(); } }