using System.Security.Cryptography;
public static void Main()
packed = magic & lowerMask;
packed = packed | magic >> 8;
packed = packed | mags[0];
packed = packed | mags[1];
Console.WriteLine(packed);
string hex = packed.ToString("X");
byte[] bytes = BitConverter.GetBytes(packed);
if (BitConverter.IsLittleEndian) {
foreach(byte b in plain) {
Console.Write(">" + b.ToString() + " ");
string str = GetString(bytes);
Console.Write("String: " + str);
Console.Write(" Val: " + ((int)(c)).ToString("X"));
public static string GetString(byte[] bytes) {
char[] chars = new char[bytes.Length / sizeof(char)];
System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
return new string(chars);