diff --git a/BurnOutSharp/INEContentCheck.cs b/BurnOutSharp/INEContentCheck.cs
new file mode 100644
index 00000000..733a4466
--- /dev/null
+++ b/BurnOutSharp/INEContentCheck.cs
@@ -0,0 +1,18 @@
+using BurnOutSharp.ExecutableType.Microsoft.NE;
+
+namespace BurnOutSharp
+{
+ // TODO: This should either include an override that takes a Stream instead of the byte[]
+ internal interface INEContentCheck
+ {
+ ///
+ /// Check a path for protections based on file contents
+ ///
+ /// File to check for protection indicators
+ /// Byte array representing the file contents
+ /// True to include debug data, false otherwise
+ /// NewExecutable representing the read-in file
+ /// String containing any protections found in the file
+ string CheckNEContents(string file, byte[] fileContent, bool includeDebug, NewExecutable nex);
+ }
+}
diff --git a/BurnOutSharp/IPEContentCheck.cs b/BurnOutSharp/IPEContentCheck.cs
new file mode 100644
index 00000000..812db3e0
--- /dev/null
+++ b/BurnOutSharp/IPEContentCheck.cs
@@ -0,0 +1,18 @@
+using BurnOutSharp.ExecutableType.Microsoft.PE;
+
+namespace BurnOutSharp
+{
+ // TODO: This should either include an override that takes a Stream instead of the byte[]
+ internal interface IPEContentCheck
+ {
+ ///
+ /// Check a path for protections based on file contents
+ ///
+ /// File to check for protection indicators
+ /// Byte array representing the file contents
+ /// True to include debug data, false otherwise
+ /// PortableExecutable representing the read-in file
+ /// String containing any protections found in the file
+ string CheckPEContents(string file, byte[] fileContent, bool includeDebug, PortableExecutable pex);
+ }
+}