o
    Žõ±j! ã                   @   sú  d dl Z d dlmZmZmZ d dlmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZ G dd„ deƒZG d	d
„ d
eƒZG dd„ dƒZG dd„ deƒZG dd„ dƒZG dd„ deƒZG dd„ dƒZ G dd„ deƒZ!G dd„ dƒZ"G dd„ deƒZ#G dd„ dƒZ$G dd„ deƒZ%G dd „ d ƒZ&G d!d"„ d"eƒZ'G d#d$„ d$ƒZ(G d%d&„ d&eƒZ)G d'd(„ d(ƒZ*G d)d*„ d*eƒZ+G d+d,„ d,ƒZ,G d-d.„ d.eƒZ-G d/d0„ d0ƒZ.G d1d2„ d2ƒZ/G d3d4„ d4eƒZ0G d5d6„ d6ƒZ1G d7d8„ d8eƒZ2G d9d:„ d:ƒZ3G d;d<„ d<eƒZ4G d=d>„ d>ƒZ5G d?d@„ d@ƒZ6G dAdB„ dBƒZ7G dCdD„ dDeƒZ8G dEdF„ dFƒZ9G dGdH„ dHeƒZ:G dIdJ„ dJƒZ;G dKdL„ dLeƒZ<G dMdN„ dNƒZ=G dOdP„ dPeƒZ>G dQdR„ dRƒZ?G dSdT„ dTeƒZ@G dUdV„ dVƒZAG dWdX„ dXeƒZBG dYdZ„ dZƒZCG d[d\„ d\eƒZDG d]d^„ d^ƒZEG d_d`„ d`eƒZFG dadb„ dbƒZGG dcdd„ ddeƒZHG dedf„ dfƒZIG dgdh„ dheƒZJG didj„ djƒZKG dkdl„ dleƒZLG dmdn„ dnƒZMG dodp„ dpeƒZNG dqdr„ drƒZOG dsdt„ dteƒZPG dudv„ dvƒZQG dwdx„ dxeƒZRG dydz„ dzƒZSG d{d|„ d|ƒZTdS )}é    N)ÚKatzSystemArchitectureÚWindowsMinBuildÚWindowsBuild)ÚPOINTERÚPVOIDÚULONGÚ
LIST_ENTRYÚDWORDÚLSA_UNICODE_STRINGÚPKERB_EXTERNAL_NAMEÚKIWI_GENERIC_PRIMARY_CREDENTIALÚLUIDÚPLSAISO_DATA_BLOBÚULONG64ÚFILETIMEÚPCWSTRÚSIZE_TÚBOOL)ÚPackageTemplate)Úhexdump)Úloggerc                       ó(   e Zd Z‡ fdd„Zedd„ ƒZ‡  ZS )ÚKerberosTemplatec                    s<   t ƒ  d|¡ d | _d | _d | _d | _d | _d | _d | _d S )NÚKerberos)	ÚsuperÚ__init__Ú	signatureÚfirst_entry_offsetÚkerberos_session_structÚkerberos_ticket_structÚkeys_list_structÚhash_password_structÚcsp_info_struct)ÚselfÚsysinfo©Ú	__class__© ú¥/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/pypykatz/alsadecryptor/packages/kerberos/templates.pyr      s   
zKerberosTemplate.__init__c                 C   s²  t | ƒ}| jtjk�r¢tjj| j  krtjjk r3n nd|_	d|_
t|_t|_t|_t|_t|_�nåtjj| j  krBtjjk r[n nd|_	d|_
t|_t|_t|_t|_t|_�n½tjj| j  krjtjjk rƒn nd|_	d|_
t|_t|_t|_t|_t|_�n•tjj| j  kr’tjjk r«n nd|_	d|_
t|_t|_t|_t|_t|_�nmtjj| j  krºtj jk rÓn nd|_	d|_
t|_t|_t|_t|_t!|_�nEtj j| j  krâtj"jk rûn nd|_	d|_
t#|_t|_t|_t|_t$|_�ntj"j| j  k�rtj%jk �r%n nd|_	d|_
t#|_t&|_t|_t|_t$|_�nótj%j| j  k�r6tj'jk �rOn nd|_	d|_
t(|_t)|_t|_t*|_t$|_�nÉtj'j| j  k�r`tj+jk �ryn nd|_	d|_
t(|_t,|_t|_t*|_t$|_�nŸ| jtj+jk�r˜d|_	d|_
t-|_t,|_t|_t*|_t$|_�n€t.d| j| jf ƒ‚| jtj/k�rtjj| j  k�rºtjjk �rÓn nd|_	d|_
t|_t|_t|_t|_t|_�nEtjj| j  k�rätjjk �rýn nd|_	d|_
t|_t|_t|_t|_t|_�ntjj| j  k�rtjjk �r&n nd|_	d	|_
t|_t|_t|_t|_t|_nòtjj| j  k�r7tjjk �rOn nd|_	d	|_
t|_t|_t|_t|_t|_nÉtjj| j  k�r`tj0jk �rxn nd
|_	d|_
t|_t|_t|_t|_t!|_n tj0j| j  k�r‰tj jk �r¡n nd|_	d|_
t|_t|_t|_t|_t!|_nwtj j| j  k�r²tj"jk �rÊn nd|_	d|_
t1|_t|_t|_t|_t$|_nNtj"j| j  k�rÛtj2jk �rón nd|_	d|_
t3|_t)|_t|_t*|_t$|_n%tj2j| jk�rd|_	d|_
t3|_t)|_t|_t*|_t$|_nt.d| j ƒ‚t4 5d| ¡ t4 5d|j	 ¡ t4 5d|j
 ¡ t4 5d|j ¡ t4 5d|j ¡ t4 5d|j ¡ t4 5d|j ¡ t4 5d|j ¡ |S )Ns   H;þ„éüÿÿÿs   H‹H�é   zECould not identify template! Architecture: %s sysinfo.buildnumber: %ss   ‹}‹9Piøÿÿÿs   S‹PViõÿÿÿs   W‹8Phiòÿÿÿs   V‹0PWiñÿÿÿs   V‹0PSzUnknown architecture! %sztemplate: %szsignature: %szfirst_entry_offset: %szkerberos_session_struct: %szkerberos_ticket_struct: %szkeys_list_struct: %szhash_password_struct: %szcsp_info_struct: %s)6r   Úarchitecturer   ÚX64r   ÚWIN_XPÚvalueÚbuildnumberÚWIN_2K3r   r   ÚKIWI_KERBEROS_LOGON_SESSION_51r   Ú KIWI_KERBEROS_INTERNAL_TICKET_51r   ÚKIWI_KERBEROS_KEYS_LIST_5r    ÚKERB_HASHPASSWORD_5r!   ÚKIWI_KERBEROS_CSP_INFOS_5r"   Ú	WIN_VISTAÚKIWI_KERBEROS_LOGON_SESSIONÚ KIWI_KERBEROS_INTERNAL_TICKET_52ÚWIN_7Ú KIWI_KERBEROS_INTERNAL_TICKET_60ÚKIWI_KERBEROS_KEYS_LIST_6ÚKERB_HASHPASSWORD_6ÚKIWI_KERBEROS_CSP_INFOS_60ÚWIN_8ÚKIWI_KERBEROS_INTERNAL_TICKET_6r   ÚWIN_10_1507ÚKIWI_KERBEROS_CSP_INFOS_62ÚWIN_10_1511ÚKIWI_KERBEROS_LOGON_SESSION_10ÚKIWI_KERBEROS_CSP_INFOS_10ÚWIN_10_1607Ú KIWI_KERBEROS_INTERNAL_TICKET_10ÚWIN_11_2022Ú#KIWI_KERBEROS_LOGON_SESSION_10_1607Ú%KIWI_KERBEROS_INTERNAL_TICKET_10_1607ÚKERB_HASHPASSWORD_6_1607ÚWIN_11_24H2Ú KIWI_KERBEROS_INTERNAL_TICKET_11Ú KIWI_KERBEROS_LOGON_SESSION_24H2Ú	ExceptionÚX86ÚWIN_BLUEÚ"KIWI_KERBEROS_LOGON_SESSION_10_X86ÚWIN_10_1903Ú'KIWI_KERBEROS_LOGON_SESSION_10_1607_X86r   Údebug)r$   Útemplater'   r'   r(   Úget_template   sN  "
"
"
"
"
"
&
&
&

&
&
&&&&&&€zKerberosTemplate.get_template)Ú__name__Ú
__module__Ú__qualname__r   ÚstaticmethodrV   Ú__classcell__r'   r'   r%   r(   r      s    
r   c                       r   )ÚPKERB_SMARTCARD_CSP_INFO_5c                    ó   t ƒ  ¡  d S ©N©r   r   ©r#   r%   r'   r(   r   æ   ó   z#PKERB_SMARTCARD_CSP_INFO_5.__init__c                 Ã   ó,   �t ƒ }|  ¡ |_|  ¡ I d H |_t|_|S r^   )r\   ÚtellÚlocationÚ	read_uintr.   ÚKERB_SMARTCARD_CSP_INFO_5Ú	finaltype©ÚreaderÚpr'   r'   r(   Úloadé   ó   €
zPKERB_SMARTCARD_CSP_INFO_5.load©rW   rX   rY   r   rZ   rk   r[   r'   r'   r%   r(   r\   å   ó    r\   c                   @   ó0   e Zd Zdd„ Zedd„ ƒZdd„ Zdd„ Zd	S )
rf   c                 C   ó(   d | _ d | _d | _d | _d | _d | _d S r^   )ÚContextInformationÚnCardNameOffsetÚnReaderNameOffsetÚnContainerNameOffsetÚnCSPNameOffsetÚbBufferr`   r'   r'   r(   r   ó   s   
z"KERB_SMARTCARD_CSP_INFO_5.__init__c                 Ã   sž   �t ƒ }|  ¡ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	|  ¡ | }|  
|| d ¡I d H }t |¡|_|S )Né   )rf   rc   r   Ú	loadvaluerq   r   rr   rs   rt   ru   ÚreadÚioÚBytesIOrv   ©ri   ÚsizeÚresÚposÚdiffÚdatar'   r'   r(   rk   ý   s   €zKERB_SMARTCARD_CSP_INFO_5.loadc                 C   óˆ   |  ¡ }| |d¡ d}d}d}|dk r5|dkrn| d¡}|dkr'|d7 }nd}||7 }|d7 }|dk s| |d¡ | d¡ dd	¡S ©
Nr   ó    éÿ   é   é   ó    z	utf-16-leú Ú ©rc   Úseekry   ÚdecodeÚreplace©r#   ÚbufferÚtposr   r�   ÚiÚncÚcr'   r'   r(   Úread_wcharnull  ó"   

÷
z(KERB_SMARTCARD_CSP_INFO_5.read_wcharnullc                 C   óX   i }|   | j| j¡|d< |   | j| j¡|d< |   | j| j¡|d< |   | j| j¡|d< |S ©NÚCardNameÚ
ReaderNameÚContainerNameÚCSPName©r•   rv   rr   rs   rt   ru   ©r#   Útr'   r'   r(   Ú	get_infos  ó   z#KERB_SMARTCARD_CSP_INFO_5.get_infosN©rW   rX   rY   r   rZ   rk   r•   r    r'   r'   r'   r(   rf   ò   s    

rf   c                       r   )ÚPKERB_SMARTCARD_CSP_INFOc                    r]   r^   r_   r`   r%   r'   r(   r   )  ra   z!PKERB_SMARTCARD_CSP_INFO.__init__c                 Ã   rb   r^   )r£   rc   rd   re   r.   ÚKERB_SMARTCARD_CSP_INFOrg   rh   r'   r'   r(   rk   ,  rl   zPKERB_SMARTCARD_CSP_INFO.loadrm   r'   r'   r%   r(   r£   (  rn   r£   c                   @   ro   )
r¤   c                 C   ó@   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d S r^   )
ÚMessageTyperq   ÚSpaceHolderForWow64ÚflagsÚKeySpecrr   rs   rt   ru   rv   r`   r'   r'   r(   r   6  ó   
z KERB_SMARTCARD_CSP_INFO.__init__c                 Ã   s  �t ƒ }|  ¡ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
t | ¡I d H |_| jd9  _t | ¡I d H |_| jd9  _t | ¡I d H |_| jd9  _t | ¡I d H |_| jd9  _|  ¡ | }|  || d ¡I d H }t |¡|_|S )Né   rw   )r¤   rc   r	   rx   r¦   r   rq   r   r§   r¨   r©   r   rr   rs   rt   ru   ry   rz   r{   rv   r|   r'   r'   r(   rk   B  s(   €zKERB_SMARTCARD_CSP_INFO.loadc                 C   r‚   rƒ   r‹   r�   r'   r'   r(   r•   Y  r–   z&KERB_SMARTCARD_CSP_INFO.read_wcharnullc                 C   r—   r˜   r�   rž   r'   r'   r(   r    l  r¡   z!KERB_SMARTCARD_CSP_INFO.get_infosNr¢   r'   r'   r'   r(   r¤   5  s    
r¤   c                       r   )ÚPKIWI_KERBEROS_CSP_INFOS_5c                    r]   r^   r_   r`   r%   r'   r(   r   v  ra   z#PKIWI_KERBEROS_CSP_INFOS_5.__init__c                 Ã   rb   r^   )r¬   rc   rd   re   r.   r5   rg   rh   r'   r'   r(   rk   y  rl   zPKIWI_KERBEROS_CSP_INFOS_5.loadrm   r'   r'   r%   r(   r¬   u  rn   r¬   c                   @   ó    e Zd Zdd„ Zedd„ ƒZdS )r5   c                 C   s4   d | _ d | _d | _d | _d | _d | _d | _d | _d S r^   )ÚPinCodeÚunk0Úunk1ÚCertificateInfosÚunkDataÚFlagsÚCspDataLengthÚCspDatar`   r'   r'   r(   r   ‚  ó   
z"KIWI_KERBEROS_CSP_INFOS_5.__init__c                 Ã   s¢   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 
| ¡I d H |_t	 
| ¡I d H |_tj| |jd�I d H |_|S ©N)r}   )r5   r
   rk   r®   r   r¯   r°   r±   r²   r	   rx   r³   r´   rf   rµ   ©ri   r~   r'   r'   r(   rk   Œ  s   €zKIWI_KERBEROS_CSP_INFOS_5.loadN©rW   rX   rY   r   rZ   rk   r'   r'   r'   r(   r5   �  s    
r5   c                       r   )ÚPKIWI_KERBEROS_CSP_INFOS_60c                    r]   r^   r_   r`   r%   r'   r(   r   ›  ra   z$PKIWI_KERBEROS_CSP_INFOS_60.__init__c                 Ã   rb   r^   )rº   rc   rd   re   r.   r=   rg   rh   r'   r'   r(   rk   ž  rl   z PKIWI_KERBEROS_CSP_INFOS_60.loadrm   r'   r'   r%   r(   rº   š  rn   rº   c                   @   r­   )r=   c                 C   s:   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d S r^   )	r®   r¯   r°   r±   r²   r³   ÚunkFlagsr´   rµ   r`   r'   r'   r(   r   ¨  s   
z#KIWI_KERBEROS_CSP_INFOS_60.__init__c                 Ã   s´   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	t
 | ¡I d H |_t
 | ¡I d H |_t
 | ¡I d H |_tj| |jd�I d H |_|S r·   )r5   r
   rk   r®   r   rx   r¯   r°   r±   r²   r	   r³   r»   r´   r¤   rµ   r¸   r'   r'   r(   rk   ³  s   €zKIWI_KERBEROS_CSP_INFOS_60.loadNr¹   r'   r'   r'   r(   r=   §  s    r=   c                       r   )ÚPKIWI_KERBEROS_CSP_INFOS_62c                    r]   r^   r_   r`   r%   r'   r(   r   Â  ra   z$PKIWI_KERBEROS_CSP_INFOS_62.__init__c                 Ã   rb   r^   )r¼   rc   rd   re   r.   rA   rg   rh   r'   r'   r(   rk   Å  rl   z PKIWI_KERBEROS_CSP_INFOS_62.loadrm   r'   r'   r%   r(   r¼   Á  rn   r¼   c                   @   r­   )rA   c                 C   r¥   r^   )
r®   r¯   r°   r±   Úunk2r²   r³   r»   r´   rµ   r`   r'   r'   r(   r   Ï  rª   z#KIWI_KERBEROS_CSP_INFOS_62.__init__c                 Ã   sÆ   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_tj| |jd�I d H |_|S r·   )rA   r
   rk   r®   r   rx   r¯   r°   r±   r½   r²   r	   r³   r»   r´   r¤   rµ   r¸   r'   r'   r(   rk   Û  s   €zKIWI_KERBEROS_CSP_INFOS_62.loadNr¹   r'   r'   r'   r(   rA   Î  s    rA   c                       r   )ÚPKIWI_KERBEROS_CSP_INFOS_10c                    r]   r^   r_   r`   r%   r'   r(   r   ì  ra   z$PKIWI_KERBEROS_CSP_INFOS_10.__init__c                 Ã   rb   r^   )r¾   rc   rd   re   r.   rD   rg   rh   r'   r'   r(   rk   ï  rl   z PKIWI_KERBEROS_CSP_INFOS_10.loadrm   r'   r'   r%   r(   r¾   ë  rn   r¾   c                   @   r­   )rD   c                 C   sF   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d S r^   )r®   r¯   r°   r±   r½   r²   r³   r»   Úunk3r´   rµ   r`   r'   r'   r(   r   ø  s   
z#KIWI_KERBEROS_CSP_INFOS_10.__init__c                 Ã   sØ   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_tj| |jd�I d H |_|S r·   )rD   r
   rk   r®   r   rx   r¯   r°   r±   r½   r²   r	   r³   r»   r¿   r´   r¤   rµ   r¸   r'   r'   r(   rk     s   €zKIWI_KERBEROS_CSP_INFOS_10.loadNr¹   r'   r'   r'   r(   rD   ÷  s    rD   c                       r   )ÚPKIWI_KERBEROS_LOGON_SESSION_51c                    r]   r^   r_   r`   r%   r'   r(   r     ra   z(PKIWI_KERBEROS_LOGON_SESSION_51.__init__c                 Ã   rb   r^   )rÀ   rc   rd   re   r.   r1   rg   rh   r'   r'   r(   rk     rl   z$PKIWI_KERBEROS_LOGON_SESSION_51.loadrm   r'   r'   r%   r(   rÀ     rn   rÀ   c                   @   r­   )r1   c                 C   óÄ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d S r^   ) Ú
UsageCountr¯   r°   r½   r¿   Úunk4Úunk5Úunk6Úunk7ÚLocallyUniqueIdentifierÚunk8Úunk9Úunk10Úunk11Úunk12Úunk13Úunk14ÚcredentialsÚunk15Úunk16Úunk17Úunk18Úunk19Úunk20Úunk21Úunk22ÚpKeyListÚunk24Ú	Tickets_1Ú	Tickets_2Ú	Tickets_3ÚSmartcardInfosr`   r'   r'   r(   r   "  s@   
z'KIWI_KERBEROS_LOGON_SESSION_51.__init__c                 Ã   s\  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)|S ©Né   )*r1   r   rx   rÂ   r   rk   r¯   r°   r   r½   r¿   rÃ   rÄ   rÅ   rÆ   r   rÇ   Úalignr   rÈ   rÉ   rÊ   rË   rÌ   rÍ   rÎ   r   rÏ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rØ   rÙ   rÚ   rÛ   rÜ   rÝ   r¸   r'   r'   r(   rk   E  sH   €z#KIWI_KERBEROS_LOGON_SESSION_51.loadNr¹   r'   r'   r'   r(   r1   !  ó    #r1   c                       r   )ÚPKIWI_KERBEROS_LOGON_SESSIONc                    r]   r^   r_   r`   r%   r'   r(   r   o  ra   z%PKIWI_KERBEROS_LOGON_SESSION.__init__c                 Ã   rb   r^   )râ   rc   rd   re   r.   r7   rg   rh   r'   r'   r(   rk   r  rl   z!PKIWI_KERBEROS_LOGON_SESSION.loadrm   r'   r'   r%   r(   râ   n  rn   râ   c                   @   r­   )r7   c                 C   óÐ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _ d | _!d S r^   )"rÂ   r¯   r°   r½   r¿   rÃ   rÄ   rÅ   rÇ   rÆ   rÈ   rÉ   rÊ   rË   rÌ   rÍ   rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   rØ   Úunk23rÚ   rÙ   rÛ   Úunk25rÜ   Úunk26rÝ   r`   r'   r'   r(   r   {  sD   
z$KIWI_KERBEROS_LOGON_SESSION.__init__c                 Ã   sœ  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$|  ¡ I d H  t | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+|S rÞ   ),r7   r   rx   rÂ   rà   r   rk   r¯   r   r°   r½   r¿   rÃ   rÄ   rÅ   r   rÇ   r   rÆ   rÈ   rÉ   rÊ   rË   rÌ   rÍ   r   rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   rØ   rä   rÚ   rÙ   rÛ   rå   rÜ   ræ   rÝ   r¸   r'   r'   r(   rk      sP   €z KIWI_KERBEROS_LOGON_SESSION.loadNr¹   r'   r'   r'   r(   r7   z  s    %r7   c                       r   )Ú$PKIWI_KERBEROS_10_PRIMARY_CREDENTIALc                    r]   r^   r_   r`   r%   r'   r(   r   Ì  ra   z-PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL.__init__c                 Ã   rb   r^   )rç   rc   rd   re   r.   Ú#KIWI_KERBEROS_10_PRIMARY_CREDENTIALrg   rh   r'   r'   r(   rk   Ï  rl   z)PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL.loadrm   r'   r'   r%   r(   rç   Ë  rn   rç   c                   @   r­   )rè   c                 C   ó   d | _ d | _d | _d | _d S r^   )ÚUserNameÚDomainer¯   ÚPasswordr`   r'   r'   r(   r   Ø  ó   
z,KIWI_KERBEROS_10_PRIMARY_CREDENTIAL.__init__c                 Ã   sT   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|S r^   )	rè   r
   rk   rê   rë   r   rx   r¯   rì   r¸   r'   r'   r(   rk   Þ  ó   €z(KIWI_KERBEROS_10_PRIMARY_CREDENTIAL.loadNr¹   r'   r'   r'   r(   rè   ×  ó    rè   c                       r   )ÚPKIWI_KERBEROS_LOGON_SESSION_10c                    r]   r^   r_   r`   r%   r'   r(   r   è  ra   z(PKIWI_KERBEROS_LOGON_SESSION_10.__init__c                 Ã   rb   r^   )rð   rc   rd   re   r.   rC   rg   rh   r'   r'   r(   rk   ë  rl   z$PKIWI_KERBEROS_LOGON_SESSION_10.loadrm   r'   r'   r%   r(   rð   ç  rn   rð   c                   @   r­   )rQ   c                 C   óâ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _ d | _!d | _"d | _#d | _$d S r^   ©%rÂ   r¯   r°   Úunk1br½   rÃ   rÄ   rÅ   rÇ   rÆ   rÈ   Úunk8brÉ   rË   rÌ   rÍ   rÏ   rÎ   rÐ   rÑ   rÒ   rÔ   rÕ   rÖ   r×   rä   rÙ   rå   rØ   ræ   rÚ   Úunk27rÛ   Úunk28rÜ   Úunk29rÝ   r`   r'   r'   r(   r   ô  óJ   
z+KIWI_KERBEROS_LOGON_SESSION_10_X86.__init__c                 Ã   s  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'|  ¡ I d H  t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-t | ¡I d H |_.|S rÞ   )/rQ   r   rx   rÂ   rà   r   rk   r¯   r   r°   ró   r   r½   rÃ   rÄ   rÅ   r   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   rè   rÏ   rÎ   rÐ   rÑ   rÒ   rÔ   rÕ   rÖ   r×   rä   rÙ   rå   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r¸   r'   r'   r(   rk     s^   €z'KIWI_KERBEROS_LOGON_SESSION_10_X86.loadNr¹   r'   r'   r'   r(   rQ   ó  ó    (rQ   c                   @   r­   )rC   c                 C   rñ   r^   rò   r`   r'   r'   r(   r   U  sJ   
z'KIWI_KERBEROS_LOGON_SESSION_10.__init__c                 Ã   sÐ  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-t | ¡I d H |_.|S r^   )/rC   r   rx   rÂ   rà   r   rk   r¯   r   r°   ró   r   r½   rÃ   rÄ   rÅ   r   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   rè   rÏ   rÎ   rÐ   rÑ   rÒ   rÔ   rÕ   rÖ   r×   rä   rÙ   rå   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r¸   r'   r'   r(   rk   }  sV   €z#KIWI_KERBEROS_LOGON_SESSION_10.loadNr¹   r'   r'   r'   r(   rC   T  rù   rC   c                       r   )Ú-PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISOc                    r]   r^   r_   r`   r%   r'   r(   r   ¬  ra   z6PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISO.__init__c                 Ã   rb   r^   )rú   rc   rd   re   r.   Ú,KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISOrg   rh   r'   r'   r(   rk   ¯  rl   z2PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISO.loadrm   r'   r'   r%   r(   rú   «  rn   rú   c                   @   r­   )rû   c                 C   ó   d | _ d | _d S r^   )Ú
StructSizeÚisoBlobr`   r'   r'   r(   r   ¸  ó   
z5KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISO.__init__c                 Ã   ó>   �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_|S r^   )rû   r	   rx   rý   rà   r   rk   rþ   r¸   r'   r'   r(   rk   ¼  ó   €z1KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607_ISO.loadNr¹   r'   r'   r'   r(   rû   ·  ó    rû   c                       r   )Ú)PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607c                    r]   r^   r_   r`   r%   r'   r(   r   Å  ra   z2PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607.__init__c                 Ã   rb   r^   )r  rc   rd   re   r.   Ú(KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607rg   rh   r'   r'   r(   rk   È  rl   z.PKIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607.loadrm   r'   r'   r%   r(   r  Ä  rn   r  c                   @   r­   )r  c                 C   rp   r^   )rê   rë   ÚunkFunctionÚtyperì   ÚIsoPasswordr`   r'   r'   r(   r   Ñ  s   
z1KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607.__init__c                 Ã   s†   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	|  
¡ I d H  t | ¡I d H |_t | ¡I d H |_|S r^   )r  r
   rk   rê   rë   r   rx   r  r	   r  rà   rì   rû   r  r¸   r'   r'   r(   rk   Ù  s   €z-KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607.loadNr¹   r'   r'   r'   r(   r  Ð  s    r  c                       r   )Ú$PKIWI_KERBEROS_LOGON_SESSION_10_1607c                    r]   r^   r_   r`   r%   r'   r(   r   æ  ra   z-PKIWI_KERBEROS_LOGON_SESSION_10_1607.__init__c                 Ã   rb   r^   )r  rc   rd   re   r.   rH   rg   rh   r'   r'   r(   rk   é  rl   z)PKIWI_KERBEROS_LOGON_SESSION_10_1607.loadrm   r'   r'   r%   r(   r  å  rn   r  c                   @   r­   )rH   c                 C   óÜ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _ d | _!d | _"d | _#d S r^   )$rÂ   r¯   r°   ró   r½   rÃ   rÄ   rÅ   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r`   r'   r'   r(   r   ó  óH   
z,KIWI_KERBEROS_LOGON_SESSION_10_1607.__init__c                 Ã   sÜ  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$|  ¡ I d H  t | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-|S rÞ   ).rH   r   rx   rÂ   rà   r   rk   r¯   r   r°   ró   r   r½   rÃ   rÄ   rÅ   r   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   r  rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r¸   r'   r'   r(   rk     sX   €z(KIWI_KERBEROS_LOGON_SESSION_10_1607.loadNr¹   r'   r'   r'   r(   rH   ò  ó    &rH   c                   @   r­   )rM   c                 C   rã   r^   )"rÂ   r¯   r°   r½   rÃ   rÄ   rÅ   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r`   r'   r'   r(   r   M  sD   
z)KIWI_KERBEROS_LOGON_SESSION_24H2.__init__c                 Ã   s¸  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	|  ¡ I d H  t
 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t
 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t
 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  d¡I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"|  ¡ I d H  t | ¡I d H |_#t | ¡I d H |_$t | ¡I d H |_%t
 | ¡I d H |_&t | ¡I d H |_'t
 | ¡I d H |_(t | ¡I d H |_)t
 | ¡I d H |_*t | ¡I d H |_+|S rÞ   ),rM   r   rx   rÂ   rà   r   rk   r¯   r   r°   r   r½   rÃ   rÄ   rÅ   r   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   r  rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r¸   r'   r'   r(   rk   q  sT   €z%KIWI_KERBEROS_LOGON_SESSION_24H2.loadNr¹   r'   r'   r'   r(   rM   L  ó    $rM   c                   @   r­   )rS   c                 C   rñ   r^   )%rÂ   r¯   r°   ró   r½   rÃ   rÄ   rÅ   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   ÚunkAlignrÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r`   r'   r'   r(   r   ž  rø   z0KIWI_KERBEROS_LOGON_SESSION_10_1607_X86.__init__c                 Ã   sÞ  �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	t | ¡I d H |_
|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t | ¡I d H |_%|  ¡ I d H  t | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-t | ¡I d H |_.|S r^   )/rS   r   rx   rÂ   rà   r   rk   r¯   r   r°   ró   r   r½   rÃ   rÄ   rÅ   r   rÇ   rÆ   rÈ   rô   rÉ   rË   rÌ   rÍ   r  r  rÏ   rÎ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rä   rØ   ræ   rÚ   rõ   rÛ   rö   rÜ   r÷   rÝ   r¸   r'   r'   r(   rk   Æ  sX   €z,KIWI_KERBEROS_LOGON_SESSION_10_1607_X86.loadNr¹   r'   r'   r'   r(   rS   �  rù   rS   c                       r   )Ú!PKIWI_KERBEROS_INTERNAL_TICKET_51c                    r]   r^   r_   r`   r%   r'   r(   r   û  ra   z*PKIWI_KERBEROS_INTERNAL_TICKET_51.__init__c                 Ã   rb   r^   )r  rc   rd   re   r.   r2   rg   rh   r'   r'   r(   rk   þ  rl   z&PKIWI_KERBEROS_INTERNAL_TICKET_51.loadrm   r'   r'   r%   r(   r  ú  rn   r  c                   @   r­   )r2   c                 C   óÊ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _ d S r^   )!ÚFlinkÚBlinkr¯   r°   ÚServiceNameÚ
TargetNameÚ
DomainNameÚTargetDomainNameÚDescriptionÚAltTargetDomainNameÚ
ClientNameÚTicketFlagsr½   ÚKeyTypeÚKeyr¿   rÃ   rÄ   rÅ   rÆ   rÈ   Ú	StartTimeÚEndTimeÚ
RenewUntilrÉ   rÊ   ÚdomainrË   ÚstrangeNamesrÌ   ÚTicketEncTypeÚ
TicketKvnoÚTicketr`   r'   r'   r(   r     sB   
z)KIWI_KERBEROS_INTERNAL_TICKET_51.__init__c                 Ã   sn  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t! | ¡I d H |_"t! | ¡I d H |_#t! | ¡I d H |_$t | ¡I d H |_%t | ¡I d H |_&t' | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-t | ¡I d H |_.|S ©Nrw   ÚbigF©Ú	byteorderÚsigned)/r2   r  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r  ry   ÚintÚ
from_bytesr  r   r½   r  ÚKIWI_KERBEROS_BUFFERr  r¿   rÃ   rÄ   rÅ   rÆ   rÈ   r   r  r  r  rÉ   rÊ   r   r  rË   r   rÌ   r!  r"  r#  ©ri   r~   Úxr'   r'   r(   rk   +  sJ   €z%KIWI_KERBEROS_INTERNAL_TICKET_51.loadNr¹   r'   r'   r'   r(   r2     rá   r2   c                       r   )Ú!PKIWI_KERBEROS_INTERNAL_TICKET_52c                    r]   r^   r_   r`   r%   r'   r(   r   S  ra   z*PKIWI_KERBEROS_INTERNAL_TICKET_52.__init__c                 Ã   rb   r^   )r.  rc   rd   re   r.   r8   rg   rh   r'   r'   r(   rk   V  rl   z&PKIWI_KERBEROS_INTERNAL_TICKET_52.loadrm   r'   r'   r%   r(   r.  R  rn   r.  c                   @   r­   )r8   c                 C   ó¾   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d S r^   ©r  r  r¯   r°   r  r  r  r  r  r  r  Úname0r  r½   r  r  r¿   rÃ   rÄ   r  r  r  rÅ   rÆ   r  rÈ   r   rÉ   r!  r"  r#  r`   r'   r'   r(   r   `  ó>   
z)KIWI_KERBEROS_INTERNAL_TICKET_52.__init__c                 Ã   sJ  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t% | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,|S r$  )-r8   r.  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r  r1  ry   r)  r*  r  r   r½   r  r+  r  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   r   rÉ   r!  r"  r#  r,  r'   r'   r(   rk   ‚  óF   €z%KIWI_KERBEROS_INTERNAL_TICKET_52.loadNr¹   r'   r'   r'   r(   r8   _  ó    "r8   c                       r   )Ú!PKIWI_KERBEROS_INTERNAL_TICKET_60c                    r]   r^   r_   r`   r%   r'   r(   r   ¨  ra   z*PKIWI_KERBEROS_INTERNAL_TICKET_60.__init__c                 Ã   rb   r^   )r5  rc   rd   re   r.   r:   rg   rh   r'   r'   r(   rk   «  rl   z&PKIWI_KERBEROS_INTERNAL_TICKET_60.loadrm   r'   r'   r%   r(   r5  §  rn   r5  c                   @   r­   )r:   c                 C   r/  r^   r0  r`   r'   r'   r(   r   µ  r2  z)KIWI_KERBEROS_INTERNAL_TICKET_60.__init__c                 Ã   sJ  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t | ¡I d H |_$t% | ¡I d H |_&t | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,|S r$  )-r:   r5  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r  r1  ry   r)  r*  r  r   r½   r  r+  r  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   r   rÉ   r!  r"  r#  r,  r'   r'   r(   rk   ×  r3  z%KIWI_KERBEROS_INTERNAL_TICKET_60.loadNr¹   r'   r'   r'   r(   r:   ´  r4  r:   c                       r   )Ú PKIWI_KERBEROS_INTERNAL_TICKET_6c                    r]   r^   r_   r`   r%   r'   r(   r   ý  ra   z)PKIWI_KERBEROS_INTERNAL_TICKET_6.__init__c                 Ã   rb   r^   )r6  rc   rd   re   r.   r?   rg   rh   r'   r'   r(   rk      rl   z%PKIWI_KERBEROS_INTERNAL_TICKET_6.loadrm   r'   r'   r%   r(   r6  ü  rn   r6  c                   @   r­   )r?   c                 C   rÁ   r^   ) r  r  r¯   r°   r  r  r  r  r  r  Ú	KDCServerr  r1  r  r½   r  r  r¿   rÃ   rÄ   r  r  r  rÅ   rÆ   r  rÈ   r   rÉ   r!  r"  r#  r`   r'   r'   r(   r   	  s@   
z(KIWI_KERBEROS_INTERNAL_TICKET_6.__init__c                 Ã   s†  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t! | ¡I d H |_"t! | ¡I d H |_#t! | ¡I d H |_$t | ¡I d H |_%t | ¡I d H |_&t' | ¡I d H |_(t | ¡I d H |_)|  ¡ I d H  t | ¡I d H |_*t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-|  ¡ I d H  t | ¡I d H |_.|S r$  )/r?   r6  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r7  r  r1  ry   r)  r*  r  r   r½   r  rà   r+  r  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   r   rÉ   r!  r"  r#  r,  r'   r'   r(   rk   +  sN   €z$KIWI_KERBEROS_INTERNAL_TICKET_6.loadNr¹   r'   r'   r'   r(   r?     r4  r?   c                       r   )Ú!PKIWI_KERBEROS_INTERNAL_TICKET_10c                    r]   r^   r_   r`   r%   r'   r(   r   U  ra   z*PKIWI_KERBEROS_INTERNAL_TICKET_10.__init__c                 Ã   rb   r^   )r8  rc   rd   re   r.   rF   rg   rh   r'   r'   r(   rk   X  rl   z&PKIWI_KERBEROS_INTERNAL_TICKET_10.loadrm   r'   r'   r%   r(   r8  T  rn   r8  c                   @   r­   )rF   c                 C   r  r^   )!r  r  r¯   r°   r  r  r  r  r  r  r7  Ú
unk10586_dr  r1  r  r½   r  r  r¿   rÃ   rÄ   r  r  r  rÅ   rÆ   r  rÈ   r   rÉ   r!  r"  r#  r`   r'   r'   r(   r   a  sB   
z)KIWI_KERBEROS_INTERNAL_TICKET_10.__init__c                 Ã   s¨  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!|  d¡I d H  t" | ¡I d H |_#t" | ¡I d H |_$t" | ¡I d H |_%t | ¡I d H |_&t | ¡I d H |_'t( | ¡I d H |_)t | ¡I d H |_*|  ¡ I d H  t | ¡I d H |_+t | ¡I d H |_,t | ¡I d H |_-t | ¡I d H |_.|  ¡ I d H  t | ¡I d H |_/d S )Nrw   r%  Fr&  rß   )0rF   r8  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r7  r9  r  r1  ry   r)  r*  r  r   r½   r  rà   r+  r  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   r   rÉ   r!  r"  r#  r,  r'   r'   r(   rk   …  sP   €z%KIWI_KERBEROS_INTERNAL_TICKET_10.loadNr¹   r'   r'   r'   r(   rF   `  r  rF   c                       r   )Ú!PKIWI_KERBEROS_INTERNAL_TICKET_11c                    r]   r^   r_   r`   r%   r'   r(   r   °  ra   z*PKIWI_KERBEROS_INTERNAL_TICKET_11.__init__c                 Ã   rb   r^   )r:  rc   rd   re   r.   rL   rg   rh   r'   r'   r(   rk   ³  rl   z&PKIWI_KERBEROS_INTERNAL_TICKET_11.loadrm   r'   r'   r%   r(   r:  ¯  rn   r:  c                   @   r­   )rL   c                 C   r	  r^   )$r  r  r¯   r°   r  r  r  r  r  r  r7  r9  r  r1  r  r½   Ú
unk14393_0Úunk2xr  r  Ú
unk14393_1r¿   rÃ   rÄ   r  r  r  rÅ   rÆ   r  rÈ   r   rÉ   r!  r"  r#  r`   r'   r'   r(   r   ½  r
  z)KIWI_KERBEROS_INTERNAL_TICKET_11.__init__c                 Ã   sÐ  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t$ | ¡I d H |_%t$ | ¡I d H |_&t$ | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t* | ¡I d H |_+t | ¡I d H |_,|  -¡ I d H  t | ¡I d H |_.t | ¡I d H |_/t | ¡I d H |_0t | ¡I d H |_1|  -¡ I d H  |  2d¡I d H }t | ¡I d H |_3|S )Nrw   r%  Fr&  é   )4rL   r:  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r7  r9  r  r1  ry   r)  r*  r  r   r½   r;  r<  r  r+  r  r=  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   rà   r   rÉ   r!  r"  Úpeekr#  )ri   r~   r-  Útempr'   r'   r(   rk   ä  sV   €z%KIWI_KERBEROS_INTERNAL_TICKET_11.loadNr¹   r'   r'   r'   r(   rL   ¼  s    'rL   c                       r   )Ú&PKIWI_KERBEROS_INTERNAL_TICKET_10_1607c                    r]   r^   r_   r`   r%   r'   r(   r     ra   z/PKIWI_KERBEROS_INTERNAL_TICKET_10_1607.__init__c                 Ã   rb   r^   )rA  rc   rd   re   r.   rI   rg   rh   r'   r'   r(   rk     rl   z+PKIWI_KERBEROS_INTERNAL_TICKET_10_1607.loadrm   r'   r'   r%   r(   rA    rn   rA  c                   @   r­   )rI   c                 C   sÖ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _d | _ d | _!d | _"d S r^   )#r  r  r¯   r°   r  r  r  r  r  r  r7  r9  r  r1  r  r½   r;  r  r  r=  r¿   rÃ   rÄ   r  r  r  rÅ   rÆ   r  rÈ   r   rÉ   r!  r"  r#  r`   r'   r'   r(   r      sF   
z.KIWI_KERBEROS_INTERNAL_TICKET_10_1607.__init__c                 Ã   s¼  �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_
t	 | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t	 | ¡I d H |_t | ¡I d H |_|  d¡I d H }tj|ddd�|_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_ t | ¡I d H |_!t | ¡I d H |_"t | ¡I d H |_#t$ | ¡I d H |_%t$ | ¡I d H |_&t$ | ¡I d H |_'t | ¡I d H |_(t | ¡I d H |_)t* | ¡I d H |_+t | ¡I d H |_,|  ¡ I d H  t | ¡I d H |_-t | ¡I d H |_.t | ¡I d H |_/t | ¡I d H |_0|  ¡ I d H  t | ¡I d H |_1|S r$  )2rI   rA  rk   r  r  r   rx   r¯   r°   r   r  r  r
   r  r  r  r  r7  r9  r  r1  ry   r)  r*  r  r   r½   r;  r  rà   r+  r  r=  r¿   rÃ   rÄ   r   r  r  r  rÅ   rÆ   r   r  rÈ   r   rÉ   r!  r"  r#  r,  r'   r'   r(   rk   F  sT   €z*KIWI_KERBEROS_INTERNAL_TICKET_10_1607.loadNr¹   r'   r'   r'   r(   rI     r  rI   c                       r   )ÚPKERB_HASHPASSWORD_GENERICc                    r]   r^   r_   r`   r%   r'   r(   r   t  ra   z#PKERB_HASHPASSWORD_GENERIC.__init__c                 Ã   rb   r^   )rB  rc   rd   re   r.   ÚKERB_HASHPASSWORD_GENERICrg   rh   r'   r'   r(   rk   w  rl   zPKERB_HASHPASSWORD_GENERIC.loadrm   r'   r'   r%   r(   rB  s  rn   rB  c                   @   r­   )rC  c                 C   ó   d | _ d | _d | _d S r^   )ÚTypeÚSizeÚ	Checksumpr`   r'   r'   r(   r   €  ó   
z"KERB_HASHPASSWORD_GENERIC.__init__c                 Ã   sP   �t ƒ }t | ¡I d H |_|  ¡ I d H  t | ¡I d H |_t | ¡I d H |_	|S r^   )
rC  r	   rx   rE  rà   r   rF  r   rk   rG  r¸   r'   r'   r(   rk   …  s   €zKERB_HASHPASSWORD_GENERIC.loadNr¹   r'   r'   r'   r(   rC    ó    rC  c                       r   )ÚPKERB_HASHPASSWORD_5c                    r]   r^   r_   r`   r%   r'   r(   r   �  ra   zPKERB_HASHPASSWORD_5.__init__c                 Ã   rb   r^   )rJ  rc   rd   re   r.   r4   rg   rh   r'   r'   r(   rk   “  rl   zPKERB_HASHPASSWORD_5.loadrm   r'   r'   r%   r(   rJ  �  rn   rJ  c                   @   r­   )r4   c                 C   rü   r^   )ÚsaltÚgenericr`   r'   r'   r(   r   œ  rÿ   zKERB_HASHPASSWORD_5.__init__c                 Ã   s0   �t ƒ }t | ¡I d H |_t | ¡I d H |_|S r^   )r4   r
   rk   rK  rC  rL  r¸   r'   r'   r(   rk      ó
   €zKERB_HASHPASSWORD_5.loadNr¹   r'   r'   r'   r(   r4   ›  r  r4   c                       r   )ÚPKERB_HASHPASSWORD_6c                    r]   r^   r_   r`   r%   r'   r(   r   ¨  ra   zPKERB_HASHPASSWORD_6.__init__c                 Ã   rb   r^   )rN  rc   rd   re   r.   r<   rg   rh   r'   r'   r(   rk   «  rl   zPKERB_HASHPASSWORD_6.loadrm   r'   r'   r%   r(   rN  §  rn   rN  c                   @   r­   )r<   c                 C   rD  r^   )rK  ÚstringToKeyrL  r`   r'   r'   r(   r   ´  rH  zKERB_HASHPASSWORD_6.__init__c                 Ã   sB   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|S r^   )r<   r
   rk   rK  r   rO  rC  rL  r¸   r'   r'   r(   rk   ¹  s   €zKERB_HASHPASSWORD_6.loadNr¹   r'   r'   r'   r(   r<   ³  rI  r<   c                       r   )ÚPKERB_HASHPASSWORD_6_1607c                    r]   r^   r_   r`   r%   r'   r(   r   Â  ra   z"PKERB_HASHPASSWORD_6_1607.__init__c                 Ã   rb   r^   )rP  rc   rd   re   r.   rJ   rg   rh   r'   r'   r(   rk   Å  rl   zPKERB_HASHPASSWORD_6_1607.loadrm   r'   r'   r%   r(   rP  Á  rn   rP  c                   @   r­   )rJ   c                 C   ré   r^   )rK  rO  r¯   rL  r`   r'   r'   r(   r   Ï  rí   z!KERB_HASHPASSWORD_6_1607.__init__c                 Ã   sT   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	|S r^   )
rJ   r
   rk   rK  r   rx   rO  r¯   rC  rL  r¸   r'   r'   r(   rk   Õ  rî   zKERB_HASHPASSWORD_6_1607.loadNr¹   r'   r'   r'   r(   rJ   Î  rï   rJ   c                       r   )ÚPKIWI_KERBEROS_KEYS_LIST_5c                    r]   r^   r_   r`   r%   r'   r(   r   ß  ra   z#PKIWI_KERBEROS_KEYS_LIST_5.__init__c                 Ã   rb   r^   )rQ  rc   rd   re   r.   r3   rg   rh   r'   r'   r(   rk   â  rl   zPKIWI_KERBEROS_KEYS_LIST_5.loadrm   r'   r'   r%   r(   rQ  Þ  rn   rQ  c                   @   ó(   e Zd Zdd„ Zdd„ Zedd„ ƒZdS )r3   c                 C   s(   d | _ d | _d | _d | _d | _g | _d S r^   )r¯   ÚcbItemr°   r½   ÚKeyEntries_startÚ
KeyEntriesr`   r'   r'   r(   r   ë  s   
z"KIWI_KERBEROS_KEYS_LIST_5.__init__c                 Ã   óD   �|  | j¡I d H  t| jƒD ]}| |¡I d H }| j |¡ qd S r^   ©ÚmoverT  ÚrangerS  rk   rU  Úappend©r#   ri   Úkeyentries_typeÚ_Úker'   r'   r(   ry   ô  ó   €þzKIWI_KERBEROS_KEYS_LIST_5.readc                 Ã   s^   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_|  ¡ |_	|S r^   )
r3   r	   rx   r¯   rS  r   r°   r½   rc   rT  r¸   r'   r'   r(   rk   ú  s   €
zKIWI_KERBEROS_KEYS_LIST_5.loadN©rW   rX   rY   r   ry   rZ   rk   r'   r'   r'   r(   r3   ê  s
    	r3   c                       r   )ÚPKIWI_KERBEROS_KEYS_LIST_6c                    r]   r^   r_   r`   r%   r'   r(   r     ra   z#PKIWI_KERBEROS_KEYS_LIST_6.__init__c                 Ã   rb   r^   )ra  rc   rd   re   r.   r;   rg   rh   r'   r'   r(   rk   	  rl   zPKIWI_KERBEROS_KEYS_LIST_6.loadrm   r'   r'   r%   r(   ra    rn   ra  c                   @   rR  )r;   c                 C   s4   d | _ d | _d | _d | _d | _d | _d | _g | _d S r^   )r¯   rS  r°   r½   r¿   rÃ   rT  rU  r`   r'   r'   r(   r     r¶   z"KIWI_KERBEROS_KEYS_LIST_6.__init__c                 Ã   rV  r^   rW  r[  r'   r'   r(   ry     r_  zKIWI_KERBEROS_KEYS_LIST_6.readc                 Ã   s‚   �t ƒ }t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_t | ¡I d H |_	|  
¡ |_|S r^   )r;   r	   rx   r¯   rS  r   r°   r½   r¿   rÃ   rc   rT  r¸   r'   r'   r(   rk   #  s   €
zKIWI_KERBEROS_KEYS_LIST_6.loadNr`  r'   r'   r'   r(   r;     s
    
r;   c                       r   )ÚPKIWI_KERBEROS_ENUM_DATA_TICKETc                    r]   r^   r_   r`   r%   r'   r(   r   0  ra   z(PKIWI_KERBEROS_ENUM_DATA_TICKET.__init__c                 Ã   rb   r^   )rb  rc   rd   re   r.   ÚKIWI_KERBEROS_ENUM_DATA_TICKETrg   rh   r'   r'   r(   rk   3  rl   z$PKIWI_KERBEROS_ENUM_DATA_TICKET.loadrm   r'   r'   r%   r(   rb  /  rn   rb  c                   @   r­   )rc  c                 C   rü   r^   )ÚisTicketExportÚisFullTicketr`   r'   r'   r(   r   <  rÿ   z'KIWI_KERBEROS_ENUM_DATA_TICKET.__init__c                 Ã   s0   �t ƒ }t | ¡I d H |_t | ¡I d H |_|S r^   )rc  r   rx   rd  re  r¸   r'   r'   r(   rk   @  rM  z#KIWI_KERBEROS_ENUM_DATA_TICKET.loadNr¹   r'   r'   r'   r(   rc  ;  r  rc  c                   @   rR  )r+  c                 C   rD  r^   )ÚLengthÚValueÚDatar`   r'   r'   r(   r   H  s   
zKIWI_KERBEROS_BUFFER.__init__c                 Ã   s0   �|  | jj¡I d H  | | j¡I d H | _| jS r^   )rX  rg  r.   ry   rf  rh  )r#   ri   r'   r'   r(   ry   O  s   €zKIWI_KERBEROS_BUFFER.readc                 Ã   r   r^   )r+  r   rx   rf  rà   r   rk   rg  r¸   r'   r'   r(   rk   T  r  zKIWI_KERBEROS_BUFFER.loadNr`  r'   r'   r'   r(   r+  G  s
    r+  )Urz   Úpypykatz.commons.commonr   r   r   Ú$pypykatz.alsadecryptor.win_datatypesr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   Ú&pypykatz.alsadecryptor.package_commonsr   r   Úpypykatzr   r   r\   rf   r£   r¤   r¬   r5   rº   r=   r¼   rA   r¾   rD   rÀ   r1   râ   r7   rç   rè   rð   rQ   rC   rú   rû   r  r  r  rH   rM   rS   r  r2   r.  r8   r5  r:   r6  r?   r8  rF   r:  rL   rA  rI   rB  rC  rJ  r4   rN  r<   rP  rJ   rQ  r3   ra  r;   rb  rc  r+  r'   r'   r'   r(   Ú<module>   s„   D W6@MQaWZQ]KHHLOVT