public static unsafe byte[] ReadByte(ulong address, int size)
        {
            IntPtr buffer = Marshal.AllocHGlobal(size);

            Imports.ReadMemory(socket, (uint)PID, address, (UIntPtr)buffer.ToPointer(), size);

            byte[] output = new byte[size];
            Marshal.Copy(buffer, output, 0, size);

            Marshal.FreeHGlobal(buffer);

            return(output);
        }
        public static unsafe T Read <T>(ulong address)
        {
            int size = Marshal.SizeOf(typeof(T));

            IntPtr buffer = Marshal.AllocHGlobal(size);

            Imports.ReadMemory(socket, (uint)PID, address, (UIntPtr)buffer.ToPointer(), size);

            T structure = (T)Marshal.PtrToStructure(buffer, typeof(T));

            Marshal.FreeHGlobal(buffer);

            return(structure);
        }