Exemplo n.º 1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ManualScanner"/> class.
        /// </summary>
        public PointerScanner()
        {
            this.InitializeComponent();

            // Windows Forms hosting -- TODO: Phase this out
            this.PointerScanAddressHexDecBox              = new HexDecTextBox(DataTypes.UInt64);
            this.PointerScanAddressHexDecBox.IsHex        = true;
            this.PointerScanAddressHexDecBox.TextChanged += this.PointerScanAddressUpdated;
            this.pointerScanAddressHexDecBox.Children.Add(WinformsHostingHelper.CreateHostedControl(this.PointerScanAddressHexDecBox));

            this.DepthHexDecBox              = new HexDecTextBox(DataTypes.Int32);
            this.DepthHexDecBox.TextChanged += this.DepthUpdated;
            this.DepthHexDecBox.SetValue(PointerScannerViewModel.DefaultPointerScanDepth);
            this.depthHexDecBox.Children.Add(WinformsHostingHelper.CreateHostedControl(this.DepthHexDecBox));

            this.PointerRadiusHexDecBox              = new HexDecTextBox(DataTypes.Int32);
            this.PointerRadiusHexDecBox.TextChanged += this.PointerRadiusUpdated;
            this.PointerRadiusHexDecBox.SetValue(PointerScannerViewModel.DefaultPointerScanRadius);
            this.pointerRadiusHexDecBox.Children.Add(WinformsHostingHelper.CreateHostedControl(this.PointerRadiusHexDecBox));

            this.PointerRescanAddressHexDecBox              = new HexDecTextBox(DataTypes.UInt64);
            this.PointerRescanAddressHexDecBox.IsHex        = true;
            this.PointerRescanAddressHexDecBox.TextChanged += this.PointerRescanAddressUpdated;
            this.pointerRescanAddressHexDecBox.Children.Add(WinformsHostingHelper.CreateHostedControl(this.PointerRescanAddressHexDecBox));

            this.PointerRescanValueHexDecBox              = new HexDecTextBox();
            this.PointerRescanValueHexDecBox.TextChanged += this.PointerRescanValueUpdated;
            this.pointerRescanValueHexDecBox.Children.Add(WinformsHostingHelper.CreateHostedControl(this.PointerRescanValueHexDecBox));

            Task.Run(() => PointerScanResultsViewModel.GetInstance().Subscribe(this));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ManualScanner"/> class.
        /// </summary>
        public PointerScanner()
        {
            this.InitializeComponent();

            this.PointerScanAddressHexDecBoxViewModel = this.PointerScanAddressHexDecBox.DataContext as HexDecBoxViewModel;
            this.PointerScanAddressHexDecBoxViewModel.PropertyChanged += PointerScanAddressHexDecBoxViewModelPropertyChanged;
            this.PointerScanAddressHexDecBoxViewModel.IsHex            = true;
            this.PointerScanAddressHexDecBoxViewModel.DataType         = DataType.UInt64;

            this.PointerRetargetAddressHexDecBoxViewModel = this.PointerRetargetAddressHexDecBox.DataContext as HexDecBoxViewModel;
            this.PointerRetargetAddressHexDecBoxViewModel.PropertyChanged += PointerRetargetAddressHexDecBoxViewModelPropertyChanged;
            this.PointerRetargetAddressHexDecBoxViewModel.IsHex            = true;
            this.PointerRetargetAddressHexDecBoxViewModel.DataType         = DataType.Int32;

            this.DepthHexDecBoxViewModel = this.DepthHexDecBox.DataContext as HexDecBoxViewModel;
            this.DepthHexDecBoxViewModel.PropertyChanged += DepthHexDecBoxViewModelPropertyChanged;
            this.DepthHexDecBoxViewModel.DataType         = DataType.Int32;
            this.DepthHexDecBoxViewModel.SetValue(PointerScannerViewModel.DefaultPointerScanDepth);

            this.PointerRadiusHexDecBoxViewModel = this.PointerRadiusHexDecBox.DataContext as HexDecBoxViewModel;
            this.PointerRadiusHexDecBoxViewModel.PropertyChanged += PointerRadiusHexDecBoxViewModelPropertyChanged;
            this.PointerRadiusHexDecBoxViewModel.DataType         = DataType.Int32;
            this.PointerRadiusHexDecBoxViewModel.SetValue(PointerScannerViewModel.DefaultPointerScanRadius);

            Task.Run(() => PointerScanResultsViewModel.GetInstance().Subscribe(this));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Called when the repeated task completes.
        /// </summary>
        protected override void OnEnd()
        {
            PointerScanResultsViewModel.GetInstance().DiscoveredPointers = this.DiscoveredPointers;

            this.LevelPointers      = null;
            this.DiscoveredPointers = null;
        }
Exemplo n.º 4
0
        /// <summary>
        /// Starts the pointer value rescan.
        /// </summary>
        private void StartPointerRetargetScan()
        {
            TrackableTask <PointerBag> pointerRetargetScanTask = PointerRetargetScan.Scan(this.RetargetAddress, 4, PointerScanResultsViewModel.GetInstance().DiscoveredPointers);

            TaskTrackerViewModel.GetInstance().TrackTask(pointerRetargetScanTask);
            PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerRetargetScanTask.Result;
        }
Exemplo n.º 5
0
        /// <summary>
        /// Starts the pointer address rebase.
        /// </summary>
        private void StartPointerRebase()
        {
            TrackableTask <PointerBag> pointerRebaseTask = PointerRebase.Scan(PointerScanResultsViewModel.GetInstance().DiscoveredPointers, readMemory: true, performUnchangedScan: true);

            TaskTrackerViewModel.GetInstance().TrackTask(pointerRebaseTask);
            PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerRebaseTask.Result;
        }
Exemplo n.º 6
0
        /// <summary>
        /// Starts the pointer scan.
        /// </summary>
        private void StartScan()
        {
            TrackableTask <PointerBag> pointerScanTask = PointerScan.Scan(this.TargetAddress, (UInt32)this.PointerRadius, this.PointerDepth, 4);

            TaskTrackerViewModel.GetInstance().TrackTask(pointerScanTask);
            PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerScanTask.Result;
        }
Exemplo n.º 7
0
 /// <summary>
 /// Starts the pointer scan or rescan.
 /// </summary>
 private void StartScan()
 {
     if (PointerScanResultsViewModel.GetInstance().ResultCount <= 0)
     {
         this.PointerScan.Start();
     }
     else
     {
         this.PointerRescan.Start();
     }
 }
Exemplo n.º 8
0
 /// <summary>
 /// Starts the pointer value rescan.
 /// </summary>
 private void StartPointerRetargetScan()
 {
     try
     {
         TrackableTask <PointerBag> pointerRetargetScanTask = PointerRetargetScan.Scan(this.RetargetAddress, 4, PointerScanResultsViewModel.GetInstance().DiscoveredPointers, PointerScannerViewModel.PointerScanTaskIdentifier);
         TaskTrackerViewModel.GetInstance().TrackTask(pointerRetargetScanTask);
         PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerRetargetScanTask.Result;
     }
     catch (TaskConflictException)
     {
     }
 }
Exemplo n.º 9
0
 /// <summary>
 /// Starts the pointer address rebase.
 /// </summary>
 private void StartPointerRebase()
 {
     try
     {
         TrackableTask <PointerBag> pointerRebaseTask = PointerRebase.Scan(PointerScanResultsViewModel.GetInstance().DiscoveredPointers, readMemory: true, performUnchangedScan: true, taskIdentifier: PointerScannerViewModel.PointerScanTaskIdentifier);
         TaskTrackerViewModel.GetInstance().TrackTask(pointerRebaseTask);
         PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerRebaseTask.Result;
     }
     catch (TaskConflictException)
     {
     }
 }
Exemplo n.º 10
0
 /// <summary>
 /// Starts the pointer value rescan.
 /// </summary>
 private void StartPointerRetargetScan()
 {
     try
     {
         PointerSize pointerSize = SessionManager.Session.OpenedProcess.Is32Bit() ? PointerSize.Byte4 : PointerSize.Byte8;
         TrackableTask <PointerBag> pointerRetargetScanTask = PointerRetargetScan.Scan(
             SessionManager.Session.OpenedProcess,
             this.RetargetAddress,
             pointerSize.ToSize(),
             PointerScanResultsViewModel.GetInstance().DiscoveredPointers,
             PointerScannerViewModel.PointerScanTaskIdentifier
             );
         TaskTrackerViewModel.GetInstance().TrackTask(pointerRetargetScanTask);
         PointerScanResultsViewModel.GetInstance().DiscoveredPointers = pointerRetargetScanTask.Result;
     }
     catch (TaskConflictException)
     {
     }
 }
Exemplo n.º 11
0
 /// <summary>
 /// Called when the scheduled task starts.
 /// </summary>
 protected override void OnBegin()
 {
     this.DiscoveredPointers = PointerScanResultsViewModel.GetInstance().DiscoveredPointers;
 }