internal static void saveAddonProperty(this String filePath, dynamic[] typeDef, String strValue, Boolean resetFile = false)
{
using (FileStream fileStream = new FileStream(filePath, resetFile ? FileMode.Create : FileMode.Open, FileAccess.Write, FileShare.None))
{
byte[] value = new UTF8Encoding(false, false).GetBytes(strValue.Substring(0, Math.Min(strValue.Length, typeDef[2] - 1)) + '\0');
fileStream.Position = typeDef[1];
fileStream.Write(value, 0, value.Length);
}
}