o
    j                     @   s   d Z ddlZG dd dZdS )aV  
Hash-Record
===========

Offset	Size	Contents
0x0000	D-Word	Offset of corresponding "nk"-Record
0x0004	D-Word	ASCII: the first 4 characters of the key-name, 
		padded with 0's. Case sensitiv!

Keep in mind, that the value at 0x0004 is used for checking the
data-consistency! If you change the key-name you have to change the
hash-value too!
    Nc                   @   s4   e Zd Zdd Zedd Zedd Zdd Zd	S )
NTRegistryHRc                 C   s   d | _ d | _d S N)	offset_nk	hash_data)self r   /root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/aiowinreg/filestruct/hashrecord.py__init__   s   
zNTRegistryHR.__init__c                 C   s   t t| S r   )r   from_bufferioBytesIO)datar   r   r   
from_bytes   s   zNTRegistryHR.from_bytesc                 C   s.   t  }tj| dddd|_| d|_|S )N   littleF)signed)r   intr   readr   r   )buffhrr   r   r   r
      s   zNTRegistryHR.from_bufferc                 C   sn   d}| j D ]/}t| j | tr't| j | D ]\}}|d||t|f 7 }qq|d|t| j | f 7 }q|S )Nz== NT Registry HASH Record ==
z   %s: %s: %sz	%s: %s 
)__dict__
isinstancelist	enumeratestr)r   tkiitemr   r   r   __str__!   s   
zNTRegistryHR.__str__N)__name__
__module____qualname__r	   staticmethodr   r
   r   r   r   r   r   r      s    

r   )__doc__r   r   r   r   r   r   <module>   s   