using System;
using System.IO;
using System.Text;
using System.Linq;
using System.Windows.Forms;
namespace Magic{
public partial class MainForm : Form{
public MainForm(){
InitializeComponent();
}
OpenFileDialog ofd = new OpenFileDialog();
void Button1Click(object sender, EventArgs e){
if(ofd.ShowDialog() == DialogResult.OK){
textBox1.Text = ofd.FileName;
textBox2.Text = ofd.SafeFileName;
String tmp = ofd.FileName;
m2Name(tmp);
}
}
private static string m2Name(string path){
string name = "";
var stream = new FileStream(path, FileMode.Open);
byte[] bArr = new byte[4];
stream.Seek(8, SeekOrigin.Begin);
stream.Read(bArr, 0, 4);
uint nameLenght = BitConverter.ToUInt32(bArr,0)-1;
stream.Seek(12, SeekOrigin.Begin);
stream.Read(bArr, 0, 4);
uint nameOffset = BitConverter.ToUInt32(bArr, 0);
var nameByteArr = new byte[nameLenght];
stream.Seek(nameOffset, SeekOrigin.Begin);
stream.Read(nameByteArr, 0, (int)nameLenght);
name = Encoding.ASCII.GetString(nameByteArr);
String filePath = @"C:\Users\Jula\Desktop\names.txt";
File.WriteAllText(filePath, name, Encoding.ASCII);
return name;
}
}
}