private void FileOpen(string file) { // Set status bar location for the file. tbStatusBarLocation.Text = file; // Parse the PE file if (!PeFile.IsPEFile(file)) { ShowInvalidPeFileMsgBox(); return; } _peFile = new PeFile(file); // Set all FileInfo fields. FileInfo.SetFileInfo(_peFile); // Set the DOS header fields DosNtHeader.SetDosHeader(_peFile); // Set the PE File fields DosNtHeader.SetNtHeader(_peFile); // Set the File header FileHeaderDebug.SetFileHeader(_peFile); // Set the Debug directory. FileHeaderDebug.SetDebug(_peFile); // Set the Optional header OptionalHeader.SetOptionalHeader(_peFile); // Set the imports. Imports.SetImports(_peFile); // Set the exports. Exports.SetExports(_peFile); // Set the resources. Resource.SetResources(_peFile); // Set the sections. SectionHeaders.SetSections(_peFile); // Set the Exception (only for x64) Exceptions.SetException(_peFile); // Set the Relocations. Relocation.SetRelocations(_peFile); // Set the Digital Signature information. Signature.SetDigSignature(_peFile); // Set the Bound Import directory. DebugBoundImport.SetBoundImport(_peFile); // Set the Delay Import descriptor. DebugBoundImport.SetDelayImport(_peFile); // Set the TLS directory. TlsDirectory.SetTlsDirectory(_peFile); // Set the Load Config Directory LoadConfig.SetLoadConfig(_peFile); // Set the Data Directory View DirectoryView.SetDirectoryView(_peFile); }