diff --git a/DotNetCTFDumper/DotNetCTFDumper.csproj b/DotNetCTFDumper/DotNetCTFDumper.csproj
index 8948fb5..b00f942 100644
--- a/DotNetCTFDumper/DotNetCTFDumper.csproj
+++ b/DotNetCTFDumper/DotNetCTFDumper.csproj
@@ -149,6 +149,12 @@
HexViewForm.cs
+
+ Form
+
+
+ MainConsole.cs
+
Form
@@ -263,6 +269,9 @@
HexViewForm.cs
+
+ MainConsole.cs
+
MainForm.cs
diff --git a/DotNetCTFDumper/GUI/MainConsole.cs b/DotNetCTFDumper/GUI/MainConsole.cs
new file mode 100644
index 0000000..0330641
--- /dev/null
+++ b/DotNetCTFDumper/GUI/MainConsole.cs
@@ -0,0 +1,28 @@
+using System;
+using System.Runtime.CompilerServices;
+using System.Windows.Forms;
+
+namespace DotNetCTFDumper.GUI
+{
+ public partial class MainConsole : Form
+ {
+ public static MainConsole inst;
+ public MainConsole()
+ {
+ inst = this;
+ InitializeComponent();
+ this.Closing += (a,b) =>
+ {
+ Environment.Exit(0);
+ };
+ }
+
+ public static void Message(string msg)
+ {
+ var date = DateTime.Now;
+ inst.textBox1.AppendText(msg.Length > 0
+ ? $"[{date.Hour,2}:{date.Minute,2}:{date.Second,2}:{date.Millisecond,3}] {msg}\r\n"
+ : "\r\n");
+ }
+ }
+}
\ No newline at end of file
diff --git a/DotNetCTFDumper/MMFParser/EXE/ChunkList.cs b/DotNetCTFDumper/MMFParser/EXE/ChunkList.cs
index ba59f6c..be09e7f 100644
--- a/DotNetCTFDumper/MMFParser/EXE/ChunkList.cs
+++ b/DotNetCTFDumper/MMFParser/EXE/ChunkList.cs
@@ -24,10 +24,7 @@ namespace DotNetCTFDumper.MMFParser.EXE
chunk.Read(exeReader);
chunk.Loader = LoadChunk(chunk);
Chunks.Add(chunk);
- if (chunk.Id == 8750)
- {
- chunk.BuildKey();
- }
+ if (chunk.Id == 8750) chunk.BuildKey();
if (exeReader.Tell() >= exeReader.Size()) break;
if (chunk.Id == 32639) break; //LAST chunkID
}
@@ -132,14 +129,13 @@ namespace DotNetCTFDumper.MMFParser.EXE
- Settings.AppName=_chunkList.GetChunk()?.Value;
- Settings.Copyright = _chunkList.GetChunk()?.Value;
- Settings.ProjectPath = _chunkList.GetChunk()?.Value;
+ Settings.AppName=_chunkList.GetChunk()?.Value??"";
+ Settings.Copyright = _chunkList.GetChunk()?.Value??"";
+ Settings.ProjectPath = _chunkList.GetChunk()?.Value??"";
if (Exe.Instance.GameData.ProductBuild > 284)Decryption.MakeKey(Settings.AppName,Settings.Copyright,Settings.ProjectPath);
else Decryption.MakeKey(Settings.ProjectPath, Settings.AppName, Settings.Copyright);
- Logger.Log("New Key!");
@@ -255,12 +251,7 @@ namespace DotNetCTFDumper.MMFParser.EXE
}
- if (loader != null)
- {
- //Logger.Log($"Reading {loader.GetType().Name}...",true,ConsoleColor.Yellow);
- loader.Read();
-
- }
+ if (loader != null) loader.Read();
return loader;
}
diff --git a/DotNetCTFDumper/MMFParser/EXE/EXE.cs b/DotNetCTFDumper/MMFParser/EXE/EXE.cs
index 295f1bf..045e47c 100644
--- a/DotNetCTFDumper/MMFParser/EXE/EXE.cs
+++ b/DotNetCTFDumper/MMFParser/EXE/EXE.cs
@@ -1,6 +1,7 @@
using System;
using System.Data.OleDb;
using System.IO;
+using DotNetCTFDumper.GUI;
using DotNetCTFDumper.Utils;
namespace DotNetCTFDumper.MMFParser.EXE
@@ -73,6 +74,7 @@ namespace DotNetCTFDumper.MMFParser.EXE
{
PackData = new PackData();
PackData.Read(exeReader);
+
GameData = new GameData();
GameData.Read(exeReader);
Console.ForegroundColor = ConsoleColor.DarkGreen;
diff --git a/DotNetCTFDumper/MMFParser/EXE/GameData.cs b/DotNetCTFDumper/MMFParser/EXE/GameData.cs
index 3f8f8e3..3f56de4 100644
--- a/DotNetCTFDumper/MMFParser/EXE/GameData.cs
+++ b/DotNetCTFDumper/MMFParser/EXE/GameData.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using DotNetCTFDumper.GUI;
using DotNetCTFDumper.MMFParser.EXE.Loaders;
using DotNetCTFDumper.MMFParser.EXE.Loaders.Banks;
using DotNetCTFDumper.Utils;
diff --git a/DotNetCTFDumper/MMFParser/EXE/Loaders/Frame.cs b/DotNetCTFDumper/MMFParser/EXE/Loaders/Frame.cs
index 3d723df..f32f176 100644
--- a/DotNetCTFDumper/MMFParser/EXE/Loaders/Frame.cs
+++ b/DotNetCTFDumper/MMFParser/EXE/Loaders/Frame.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
+using DotNetCTFDumper.GUI;
using DotNetCTFDumper.Utils;
namespace DotNetCTFDumper.MMFParser.EXE.Loaders
diff --git a/DotNetCTFDumper/MMFParser/EXE/PackData.cs b/DotNetCTFDumper/MMFParser/EXE/PackData.cs
index 0b9892e..5074069 100644
--- a/DotNetCTFDumper/MMFParser/EXE/PackData.cs
+++ b/DotNetCTFDumper/MMFParser/EXE/PackData.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.IO;
+using DotNetCTFDumper.GUI;
using DotNetCTFDumper.Utils;
namespace DotNetCTFDumper.MMFParser.EXE
diff --git a/DotNetCTFDumper/MMFParser/Translation/PAME2MFA.cs b/DotNetCTFDumper/MMFParser/Translation/PAME2MFA.cs
index 9e1c429..33159e7 100644
--- a/DotNetCTFDumper/MMFParser/Translation/PAME2MFA.cs
+++ b/DotNetCTFDumper/MMFParser/Translation/PAME2MFA.cs
@@ -253,14 +253,6 @@ namespace DotNetCTFDumper.MMFParser.Translation
}
}
}
-
-
-
-
-
-
-
-
newFrame.Items = newFrameItems;
newFrame.Instances = newInstances;
newFrame.Folders=new List();
diff --git a/DotNetCTFDumper/Program.cs b/DotNetCTFDumper/Program.cs
index 4eb04a3..e4b5764 100644
--- a/DotNetCTFDumper/Program.cs
+++ b/DotNetCTFDumper/Program.cs
@@ -39,9 +39,12 @@ namespace DotNetCTFDumper
Settings.UseGUI = true;
MyForm = new MainForm();
+ var console = new MainConsole();
+ console.Show();
Application.Run(MyForm);
-
-
+
+
+
}
diff --git a/DotNetCTFDumper/Utils/Logger.cs b/DotNetCTFDumper/Utils/Logger.cs
index 2ddb0ef..a740a94 100644
--- a/DotNetCTFDumper/Utils/Logger.cs
+++ b/DotNetCTFDumper/Utils/Logger.cs
@@ -1,13 +1,14 @@
using System;
using System.IO;
using System.Web.UI.WebControls;
+using DotNetCTFDumper.GUI;
namespace DotNetCTFDumper.Utils
{
public static class Logger
{
static StreamWriter _writer;
- public static void Log(string text, bool logToScreen = true,ConsoleColor color = ConsoleColor.White)
+ public static void Log(string text, bool logToScreen = true,ConsoleColor color = ConsoleColor.White, bool logToConsole=true)
{
if (_writer == null)
{
@@ -24,6 +25,8 @@ namespace DotNetCTFDumper.Utils
Console.WriteLine(Helper.GetCurrentTime()+text);
Console.ForegroundColor = ConsoleColor.White;
}
+ if(logToConsole) MainConsole.Message(text);
+
}