Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void Form1_Load(object sender, EventArgs e)
- {
- //fs.Read(read, 0, len);
- }
- #endregion
- #region Defaults
- OpenFileDialog open = new OpenFileDialog();
- static int len = 1000000000;
- byte[] read = new byte[len];
- static string path = "";
- int index = 0;
- int count = -1;
- List<int> saveSearch = new List<int>();
- #endregion
- #region output funcs
- public int findBytes(byte[] haystack, byte[] needle, int start_index)
- {
- int len = needle.Length;
- int limit = haystack.Length - len;
- for (int i = start_index; i <= limit; i++)
- {
- int k = 0;
- for (; k < len; k++)
- {
- if (needle[k] != haystack[i + k]) break;
- }
- if (k == len) return i;
- }
- return -1;
- }
- private string DebuggerStr(byte[] numArray, int start)
- {
- try
- {
- StringBuilder stringBuilder = new StringBuilder();
- StringBuilder stringBuilder1 = new StringBuilder();
- for (int i = 0; i < (int)numArray.Length; i++)
- {
- int num2 = numArray[i + start];
- if (num2 > Convert.ToInt32(0x19) && num2 < Convert.ToInt32(0x7F))
- {
- stringBuilder1.Append((char)numArray[i + start]);
- }
- else if (num2 == Convert.ToInt32(0x0A))
- {
- break;
- }
- else
- {
- stringBuilder1.Append(".");
- }
- stringBuilder.Append(string.Concat(stringBuilder1.ToString()));
- stringBuilder1 = new StringBuilder();
- }
- return stringBuilder.ToString();
- }
- catch
- {
- return "";
- }
- }
- #endregion
- #region Button Controls
- private void button2_Click(object sender, EventArgs e)
- {
- if (count != 0)
- {
- string save = DebuggerStr(read, saveSearch[--count]);
- textBox2.Text = save;
- }
- }
- private void button3_Click(object sender, EventArgs e)
- {
- byte[] search = Encoding.ASCII.GetBytes(textBox1.Text);
- index = findBytes(read, search, index);
- if (index != -1)
- {
- ++count;
- saveSearch.Add(index);
- string save = DebuggerStr(read, saveSearch[count]);
- textBox2.Text = save;
- index += search.Length;
- }
- else
- {
- resetSearch();
- textBox2.Text = "No Results";
- }
- }
- private void button1_Click(object sender, EventArgs e)
- {
- if (open.ShowDialog() == DialogResult.OK)
- {
- path = open.FileName;
- FileStream fs = new FileStream(path, FileMode.Open);
- fs.Read(read, 0, len);
- resetSearch();
- Text = "Text Searcher - File Opened: " + path;
- }
- }
- private void button4_Click(object sender, EventArgs e)
- {
- resetSearch();
- }
- #endregion
- #region Other funcs
- private void resetSearch()
- {
- textBox2.Clear();
- saveSearch.Clear();
- index = 0;
- count = -1;
- }
- private void textBox1_TextChanged(object sender, EventArgs e)
- {
- index = 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement