Esempio n. 1
0
 public RegistryKey(IDataStream stream, ulong offset)
 {
     m_Stream = stream;
     m_blockOffset = offset;
     m_keyBlock = LoadBlock(stream, offset);
     Name = m_keyBlock.name;
 }
Esempio n. 2
0
        private static KeyBlock LoadBlock(IDataStream stream, ulong blockOffset)
        {
            ulong offset = blockOffset;

            KeyBlock result = new KeyBlock();
            result.blockSize = Util.GetUInt32(stream, offset);
            result.subkeyCount = Util.GetUInt32(stream, offset + 24);
            result.subkeys = Util.GetUInt32(stream, offset + 32);
            result.valueCount = Util.GetUInt32(stream, offset + 40);
            result.offsets = Util.GetInt32(stream, offset + 44);
            result.len = Util.GetInt16(stream, offset + 76);
            result.du = Util.GetInt16(stream, offset + 78);

            result.name = Util.GetASCIIString(stream, offset + 80, (ulong)result.len);
            return result;
        }