
    5i]	                     8    d dl mZ d dlmZ  G d d          ZdS )    )MINIDUMP_STREAM_TYPE)MINIDUMP_LOCATION_DESCRIPTORc                   d    e Zd Zd Zd Zed	d            Zed             Zed             Zd Z	dS )
MINIDUMP_DIRECTORYc                 "    d | _         d | _        d S N
StreamTypeLocation)selfs    H/home/kali/Ninja/venv/lib/python3.11/site-packages/minidump/directory.py__init__zMINIDUMP_DIRECTORY.__init__   s    )-$//3$---    c                     | j         j                            ddd          }|| j                                        z  }|S N   littleF)	byteordersigned)r
   valueto_bytesr   r   ts     r   r   zMINIDUMP_DIRECTORY.to_bytes
   s>    
o$$QHu$MM!t}!	
(r   Fc                 b    t                               |                     d          dd          S r   )int
from_bytesread)buffpeeks     r   get_stream_type_valuez(MINIDUMP_DIRECTORY.get_stream_type_value   s$    			!(U	K	KKr   c                    t                               |           }|t          j        j        k    }|t          j        v }|r|sd S t                      }t          |          |_        t          j        |           |_	        |S r   )
r   r    r   LastReservedStreamr   _value2member_map_r
   r   parser   )r   raw_stream_type_valueis_user_streamis_stream_supportedmds        r   r$   zMINIDUMP_DIRECTORY.parse   s     -BB4HH
 )+?+R+XX.-1E1XX / 
$"&'<=="-,2488"+	)r   c                 N  K   |                      d           d {V }t                              |dd          }|t          j        j        k    }|t          j        v }|r|sd S t                      }t          |          |_        t          j
        |            d {V |_        |S r   )r   r   r   r   r"   r   r#   r   r
   r   aparser   )r   r   r%   r&   r'   r(   s         r   r*   zMINIDUMP_DIRECTORY.aparse%   s       IIaLL!..5.QQ
 )+?+R+XX.-1E1XX / 
$"&'<=="-29$????????"+	)r   c                 *    d| j         d| j        }|S )NzStreamType:  r	   r   s     r   __str__zMINIDUMP_DIRECTORY.__str__8   s     !___dmm<!	
(r   N)F)
__name__
__module____qualname__r   r   staticmethodr    r$   r*   r-    r   r   r   r      s        4 4 4  
 L L L ,L   ,"   ,$    r   r   N)minidump.constantsr   minidump.common_structsr   r   r2   r   r   <module>r5      s[    3 3 3 3 3 3 @ @ @ @ @ @5 5 5 5 5 5 5 5 5 5r   