Exemplo n.º 1
0
        private void new_scan_worker_DoWork(object sender, DoWorkEventArgs e)
        {
            WorkerArgs args       = (WorkerArgs)e.Argument;
            ulong      lenPercent = 0;

            for (int section_idx = 0; section_idx < processManager.mapped_section_list.Count; ++section_idx)
            {
                MappedSection mappedSection = processManager.mapped_section_list[section_idx];
                mappedSection.AddressList = mappedSection.getFilteredAddressList(processManager, value_box.Text,
                                                                                 new_scan_worker, ref lenPercent, 0, 0.5f);
            }
            update_result_list_view(new_scan_worker, args.ValueType, false, 50, 0.5f);
        }
Exemplo n.º 2
0
        private void next_scan_worker_DoWork(object sender, DoWorkEventArgs e)
        {
            ulong percent_len = 0;

            for (int section_idx = 0; section_idx < processManager.MappedSectionList.Count; ++section_idx)
            {
                MappedSection mappedSection = processManager.MappedSectionList[section_idx];
                AddressList   addressList   = mappedSection.AddressList;

                AddressList filtered_list = mappedSection.getFilteredAddressList(processManager, memoryHelper, value_box.Text,
                                                                                 next_scan_worker, ref percent_len, 0, 0.5f);
                mappedSection.AddressList = addressList.Intersect(memoryHelper, filtered_list, value_box.Text);
            }

            WorkerArgs args = (WorkerArgs)e.Argument;

            update_result_list_view(next_scan_worker, args.ValueType, false, 50, 0.5f);
        }
Exemplo n.º 3
0
        private void next_scan_worker_DoWork(object sender, DoWorkEventArgs e)
        {
            ulong percent_len = 0;

            for (int section_idx = 0; section_idx < processManager.mapped_section_list.Count; ++section_idx)
            {
                MappedSection mappedSection = processManager.mapped_section_list[section_idx];
                AddressList   addressList   = mappedSection.AddressList;

                if (mappedSection.AddressList.Count < 50)
                {
                    for (int address_idx = 0; address_idx < addressList.Count; ++address_idx)
                    {
                        Address address = addressList[address_idx];

                        byte[] compare_value = processManager.MemoryHelper.GetCompareBytes(address, value_box.Text);

                        byte[] value = processManager.MemoryHelper.GetBytesByType(address.AddressOffset + mappedSection.Start);
                        if (!processManager.MemoryHelper.Compare(compare_value, value))
                        {
                            addressList.RemoveAt(address_idx);
                            --address_idx;
                        }
                        else
                        {
                            Address address_tmp = new Address();
                            address_tmp.AddressOffset = addressList[address_idx].AddressOffset;
                            address_tmp.MemoryValue   = processManager.MemoryHelper.BytesToUint(value);
                            addressList[address_idx]  = address_tmp;
                        }
                    }
                }
                else
                {
                    AddressList filtered_list = mappedSection.getFilteredAddressList(processManager, value_box.Text,
                                                                                     next_scan_worker, ref percent_len, 0, 0.5f);
                    mappedSection.AddressList = addressList.Intersect(processManager.MemoryHelper, filtered_list, value_box.Text);
                }
            }

            WorkerArgs args = (WorkerArgs)e.Argument;

            update_result_list_view(next_scan_worker, args.ValueType, false, 50, 0.5f);
        }