o
    �õ±j#�  ã                   @   sN  d dl Z d dlT d dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ dd	„ ZejZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'd Z(d!Z)d"Z*d#Z+d$Z,d%Z-d&Z.d'Z/d(Z0d)Z1d*Z2d+Z3d,Z4d-Z5d.Z6d/Z7d0Z8d1Z9d2Z:d
Z;dZ<dZ=dZ>dZ?d)Z@d3ZAd4ZBd5ZCeDe>B ZEeFe;B e<B e=B e>B e?B e@B eAB eBB eCB ZGd
ZHdZIdZJdZKdZLd6ZMd7ZNd8ZOd9ZPd)ZQd3ZRd4ZSd:ZTdZUd;ZVd
ZWdZXdZYeZZ[d<Z\d
Z]dZ^dZ_dZ`dZad)Zbd3Zcd4Zdd5Zed=Zfd
ZgdZhdZidZjdZkd)Zld>d?„ Zmd@dA„ ZnG dBdC„ dCeoƒZpe qep¡ZrdDdE„ ZsdŒdGdH„ZtdIdJ„ ZudKdL„ ZvdMdN„ ZwdOdP„ Zxd
ZyeHeIB eJB fdQdR„ZzeHeIB eJB dfdSdT„Z{ddeffdUdV„Z|e\fdWdX„Z}dYdZ„ Z~G d[d\„ d\eoƒZeqeƒZ€G d]d^„ d^eoƒZ�eqe�ƒZ‚eUeVB eYfd_d`„Zƒd9Z„daZ…dbZ†dcZ‡ddZˆdeZ‰dfZŠdgZ‹dhZŒe†e…e„e‡e‹eˆdiœZ�d=ZŽd)Z�dZ�dZ‘djZ’dZ“d
Z”djZ•dZ–dkZ—d5Z˜dlZ™d Zšd Z›d
ZœdZ�dZždZŸde›e•fdmdn„Z dodp„ Z¡dqdr„ Z¢dsdt„ Z£d�dvdw„Z¤eGfdxdy„Z¥dzd{„ Z¦ejZ§eqe§ƒZ¨G d|d}„ d}eoƒZ©eqe©ƒZªd Z«d
Z¬dZ­dZ®ejZ¯eqe¯ƒZ°G d~d„ deoƒZ±eqe±ƒZ²d€d�„ Z³G d‚dƒ„ dƒeoƒZ´eqe´ƒZµG d„d…„ d…eoƒZ¶eqe¶ƒZ·d†d‡„ Z¸dˆd‰„ Z¹dŠd‹„ ZºdS )Žé    N)Ú*)ÚGetLastErrorÚ	LocalFreeÚREAD_CONTROL)ÚMemoryBuffer)ÚSECURITY_DESCRIPTOR)ÚSID)ÚSE_OBJECT_TYPEc                 C   s   | dkr	t  | ¡‚| S ©Nr   )ÚctypesÚWinError)ÚresultÚfuncÚ	arguments© r   úŒ/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/winacl/functions/advapi32.pyÚwin_succ_check	   s   
r   é   é   é   é   é   é   é   é   é	   é
   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é    é!   é"   é#   é$   é%   é&   é'   é(   é)   é@   é€   é   é   i    i   @l        i   é0   iÿ i?  c                 C   s¼   t jj}tttttttg|_t|_t|_	d}d }|j
d ur.|tO }|j
 ¡ }t |t|ƒ¡}d }d }|jd urH|tO }|j ¡ }	t |	t|	ƒ¡}d }
|dkrRtdƒ‚|| ||||||
ƒ}d S )Nr   z6Looks like nothing is to be set! Check your sd object!)ÚwindllÚadvapi32ÚSetSecurityInfoÚHANDLEÚDWORDÚPVOIDÚargtypesÚrestypeÚRaiseIfNotErrorSuccessÚerrcheckÚOwnerÚOWNER_SECURITY_INFORMATIONÚto_bytesr   Úcreate_string_bufferÚlenÚDaclÚDACL_SECURITY_INFORMATIONÚ	Exception)Ú
handle_objÚobj_typeÚsdÚ_SetSecurityInfoÚsec_infoÚpOwnerÚ
owner_dataÚpGroupÚpDaclÚ	dacl_dataÚpSaclÚretr   r   r   rC   ‹   s8   



ùrC   c                 C   s”   t jj}ttttttttg|_t|_t|_	d }d }d }d }t
 t
 d¡¡}|| ||||||t
 |¡ƒ}	|j}
tt
 |j¡ƒ}t ||¡}t|ƒ |S r
   )rA   rB   ÚGetSecurityInforD   rE   rF   rG   rH   r   rJ   r   ÚpointerÚc_uintÚbyrefÚcontentsr   Ú	addressofr   Úfrom_bufferr   )rS   rT   Úinfo_reqÚ_GetSecurityInfoÚ
ppsidOwnerÚ
ppsidGroupÚppDaclÚppSaclÚppSecurityDescriptorr^   ÚpSecurityDescriptorÚbuffrU   r   r   r   r_   Ê   s   r_   c                   @   s.   e Zd ZdefdefdefdefdefgZdS )Ú	TRUSTEE_WÚpMultipleTrusteeÚMultipleTrusteeOperationÚTrusteeFormÚTrusteeTypeÚ	ptstrNameN)Ú__name__Ú
__module__Ú__qualname__rF   rE   rD   Ú_fields_r   r   r   r   ro   ß   s    ûro   c                 C   sD   t jj}ttg|_d |_|  ¡ }t 	|t
|ƒ¡}tƒ }|||ƒ |S ©N)rA   rB   ÚBuildTrusteeWithSidWÚ
PTRUSTEE_WrF   rG   rH   rM   r   rN   rO   ro   )ÚsidÚ_BuildTrusteeWithSidWÚsid_dataÚcsidÚtrusteer   r   r   rz   ð   s   

rz   Fc                 C   sž   t jj}ttg|_t|_t|_|du r3|  	¡ }t
 |t|ƒ¡}t
 d¡}t
 |¡}|t|ƒt|ƒƒ nt
 d¡}t
 |¡}|| t|ƒƒ t
 |¡}t|ƒ |S )NFr   )rA   rB   ÚConvertSidToStringSidWrF   rG   rE   rH   ÚRaiseIfZerorJ   rM   r   rN   rO   Úcreate_unicode_bufferr`   rb   Ú
wstring_atr   )r|   Ú
is_raw_ptrÚ_ConvertSidToStringSidWr~   r   ÚpstrÚcstr_sidÚstr_sidr   r   r   r�     s    





r�   c                 C   sr   t jj}ttg|_t|_t|_t	 
|  d¡¡}t	 t	 d¡¡}||t|ƒƒ tt	 |j¡ƒ}t |¡}t|ƒ |S )Nú	utf-16-ler   )rA   rB   ÚConvertStringSidToSidWrF   rG   rE   rH   r‚   rJ   r   rN   Úencoder`   ra   rb   r   rd   rc   r   re   r   )Úsid_strÚ_ConvertStringSidToSidWrˆ   rl   rn   rU   r   r   r   r‹   "  s   

r‹   c           
      C   s˜   t jj}tttg|_t|_| 	¡ }t
 |t|ƒ¡}tƒ }d|_d|_d|_d|_t
 t
 |¡¡|_tdƒ}|  	¡ }t
 |t|ƒ¡}|||t|ƒƒ}	|jS )z%
	Takes a SID instead of a trustee!
	r   )rA   rB   ÚGetEffectiveRightsFromAclWrF   r{   ÚPDWORDrG   rI   rH   rM   r   rN   rO   ro   rp   rq   rr   rs   Úc_void_prd   rt   rE   rb   Úvalue)
Úaclr|   Ú_GetEffectiveRightsFromAclWr~   Úpsidr€   Úeffective_rigths_maskÚacl_dataÚpaclÚresr   r   r   r�   :  s    r�   c              	   C   sâ   t jj}tttttttg|_t|_	t
dƒ}t
dƒ}t
dƒ}t |t|ƒ¡}|| |d t|ƒd t|ƒt|ƒƒ tƒ }|tkrAt |¡‚t d|jd ¡}t d|jd ¡}	|| ||t|ƒ|	t|ƒt|ƒƒ}
|
sit ¡ ‚|j|	j|jfS )Nr   Ú r   )rA   rB   ÚLookupAccountSidWÚLPSTRÚPSIDÚLPWSTRÚLPDWORDrG   ÚboolrH   rE   r   rN   rO   rb   r   ÚERROR_INSUFFICIENT_BUFFERr   rƒ   r’   )ÚlpSystemNamer~   Ú_LookupAccountSidWÚcchNameÚcchReferencedDomainNameÚpeUseÚlpSidÚerrorÚlpNameÚlpReferencedDomainNameÚsuccessr   r   r   r›   R  s"    
 r›   c              	   C   sü   t jj}tttttttg|_t|_t	dƒ}t	dƒ}t	dƒ}t
 |¡}|| |d t|ƒd t|ƒt|ƒƒ tƒ }|tkr>t
 |¡‚t
 d|j¡}t
 t
 |¡t¡}	t
 d|jd ¡}
|| ||	t|ƒ|
t|ƒt|ƒƒ}|smt
 ¡ ‚t|	jƒ}t |¡}||
j|jfS )Nr   ó    rš   r   )rA   rB   ÚLookupAccountNameWrž   r�   rŸ   rG   ÚBOOLrH   rE   r   rƒ   rb   r   r¡   r   rN   r’   Úcastr`   r   r   re   )r¢   ÚaccountnameÚ_LookupAccountNameWÚcbSidr¥   r¦   ÚlpAccountNamer¨   r|   r•   rª   r«   rn   r   r   r   r­   g  s(   
 
 

r­   c                 C   s’   t jj}tttttg|_t|_t|_	|  
¡ }t |t|ƒ¡}t t d¡¡}t d¡}||t|t|ƒt|ƒƒ t ||jd ¡}t|ƒ | d¡S )Nr   r   rŠ   )rA   rB   Ú4ConvertSecurityDescriptorToStringSecurityDescriptorWrF   rE   ÚPULONGrG   rH   r‚   rJ   rM   r   rN   rO   r`   ra   ÚSDDL_REVISION_1rb   Ú	string_atr’   r   Údecode)rU   Úreq_infoÚ5_ConvertSecurityDescriptorToStringSecurityDescriptorWÚsd_dataÚpsdr‡   Úpstrsizer™   r   r   r   r´   †  s   

r´   c                 C   s®   t jj}tttttg|_t|_d }tdƒ}tdƒ}d}|| ||||ƒ}|dkr*|j	}t
 |¡}t|ƒ}tdƒ}|| ||||ƒ}|dkrHt
 t¡‚t
 ||j	¡}	t |	|¡}
|
S r
   )rA   rB   ÚQueryServiceObjectSecurityÚ	SC_HANDLErE   rF   rŸ   rG   rH   r’   r   rN   r   r   r·   r   Ú
from_bytes)ÚhServiceÚdwSecurityInformationÚsd_object_typeÚ_QueryServiceObjectSecurityÚlpSecurityDescriptorÚ	cbBufSizeÚpcbBytesNeededÚcorrect_lengthr™   rn   rU   r   r   r   r¾   Ÿ  s&   

r¾   c                 C   s0   t jj}tttg|_t|_t|_	|| ||ƒ}|S ry   )
rA   rB   ÚOpenSCManagerWrž   rE   rG   r¿   rH   r‚   rJ   )ÚlpMachineNameÚlpDatabaseNameÚdwDesiredAccessÚ_OpenSCManagerWÚ	hSCObjectr   r   r   rÉ   ½  s   rÉ   c                 C   s,   t jj}tttg|_t|_t|_	|| ||ƒS ry   )
rA   rB   ÚOpenServiceWr¿   rž   rE   rG   rH   r‚   rJ   )Ú
hSCManagerÚlpServiceNamerÌ   Ú_OpenServiceWr   r   r   rÏ   Í  s
   rÏ   c                 C   ó(   t jj}tg|_t|_t|_|| ƒ d S ry   )	rA   rB   ÚCloseServiceHandlerD   rG   r    rH   r‚   rJ   )ÚhHandleÚ_CloseServiceHandler   r   r   rÔ   Ô  ó
   rÔ   c                   @   s:   e Zd ZdefdefdefdefdefdefdefgZdS )	ÚSERVICE_STATUSÚdwServiceTypeÚdwCurrentStateÚdwControlsAcceptedÚdwWin32ExitCodeÚdwServiceSpecificExitCodeÚdwCheckPointÚ
dwWaitHintN)ru   rv   rw   rE   rx   r   r   r   r   rØ   Ü  s    ùrØ   c                   @   ó"   e Zd ZdefdefdefgZdS )ÚENUM_SERVICE_STATUSWrÑ   ÚlpDisplayNameÚServiceStatusN)ru   rv   rw   rž   rØ   rx   r   r   r   r   rá   è  ó
    ýrá   c              
   C   s4  t jj}ttttttttg|_t|_	tdƒ}tdƒ}tdƒ}|| ||d dt
|ƒt
|ƒt
|ƒƒ g }d}tƒ tkr’|jttƒk r@nRt d|j¡}	|| ||t
|	ƒt|	ƒt
|ƒt
|ƒt
|ƒƒ}t|	ƒttƒ|j k rkt ¡ ‚t t t |	¡tj¡t¡}
td|jƒD ]
}| |
| j¡ q|r�ntƒ tks8|s˜t ¡ ‚|S )Nr   Fr¬   )rA   rB   ÚEnumServicesStatusWr¿   rE   ÚLPVOIDrŸ   rG   r    rH   rb   r   ÚERROR_MORE_DATAr’   Úsizeofrá   r   rN   r   r¯   r`   r‘   ÚLPENUM_SERVICE_STATUSWÚrangeÚappendrÑ   )rÐ   rÙ   ÚdwServiceStateÚ_EnumServicesStatusWÚcbBytesNeededÚServicesReturnedÚResumeHandleÚServicesr«   ÚServicesBufferÚlpServicesArrayÚindexr   r   r   rå   ð  s0   "
*
örå   l       l       l       l       l   P    l   `    l       l       )ÚHKLMÚHKCUÚHKCRÚHKUÚHKCCÚHKPDi  i   i  c           	      C   sj   t jj}tttttg|_t|_t	|_
d }|d ur%| d¡}t |t|ƒ¡}tƒ }|| |||t |¡ƒ}|S )NÚascii)rA   rB   ÚRegOpenKeyExArD   ræ   rE   ÚPHANDLErG   rH   rI   rJ   rŒ   r   rN   rO   rb   )	Úregkey_handleÚsubkey_nameÚoptionsÚaccessÚ_RegOpenKeyExWÚpsubkeyr¼   Ú	reshandler^   r   r   r   ÚRegOpenKeyExW=  s   
r  c                 C   rÓ   ry   )	rA   rB   ÚRegCloseKeyrD   rG   r    rH   rI   rJ   )rÕ   Ú_RegCloseKeyr   r   r   r  M  r×   r  c           	   	   C   s´   t jj}ttttttttg|_t|_	d}g }t
}|t
krXt|ƒ}t d¡}tdƒ}|| |t|ƒt|ƒttttƒ}|t
krI|j}| |¡ |d7 }n|tkrP	 |S t ¡ ‚|t
ks|S ©Nr   iþ  éÿ   r   )rA   rB   ÚRegEnumKeyExWrD   rE   rF   rŸ   rž   rG   rH   ÚERROR_SUCCESSr   rƒ   rb   ÚNULLr’   rë   ÚERROR_NO_MORE_ITEMSr   )	ÚhKeyÚ_RegEnumKeyExWÚiÚsubkeysr™   ÚdwIndexr©   Ú	lpcchNameÚsknamer   r   r   r
  a  ó*   


þór
  c           	   	   C   s´   t jj}ttttttttg|_t|_d}g }t	}|t	krXt|ƒ}t
 d¡}tdƒ}|| |t|ƒt|ƒttttƒ}|t	krI|j}| |¡ |d7 }n|tkrP	 |S t
 ¡ ‚|t	ks|S r  )rA   rB   ÚRegEnumValueWrD   rE   rF   rŸ   rG   rH   r  r   rƒ   rb   r  r’   rë   r  r   )	r  Ú_RegEnumValueWr  r  r™   r  r©   r  r  r   r   r   r  ˆ  r  r  éö  c                 C   s�   t jj}ttttg|_t|_t|_t	 
|  d¡t|  d¡ƒ¡}t	 
| d¡t| d¡ƒ¡}t	 t	 d¡¡}|t	 |¡t	 |¡||ƒ t|ƒ tS )Nrû   r   )rA   Únetapi32ÚNetShareGetInforF   rE   rG   rH   rI   rJ   r   rN   rŒ   rO   r`   ra   Úprintr‰   )Ú
servernameÚ	sharenameÚlevelÚ_NetShareGetInfoÚpservernameÚ
psharenameÚpbuffr   r   r   r  «  s   r  c                 C   s>   t jj}tttg|_t|_t	|_
ttƒ}|| |t|ƒƒ |jS ry   )rA   rB   ÚOpenProcessTokenrD   rE   rý   rG   r    rH   r‚   rJ   ÚINVALID_HANDLE_VALUErb   r’   )ÚProcessHandleÚDesiredAccessÚ_OpenProcessTokenÚNewTokenHandler   r   r   r#  Á  s   r#  c                 C   sd   t jj}tttttg|_t	|_
t|_tdƒ}t|ƒ}|| |t|ƒ|t|ƒƒ |j|kr0t t¡‚|S r
   )rA   rB   ÚGetTokenInformationrD   ÚTOKEN_INFORMATION_CLASSræ   rE   r�   rG   r    rH   r‚   rJ   ÚSIZEOFrb   r’   r   r   r¡   )ÚhTokenHandleÚTokenInformationClassÚTokenInformationÚ_GetTokenInformationÚReturnLengthÚTokenInformationLengthr   r   r   Ú_internal_GetTokenInformationË  s   

r2  c                   @   s   e Zd ZdefdefgZdS )ÚLUIDÚLowPartÚHighPartN)ru   rv   rw   rE   ÚLONGrx   r   r   r   r   r3  æ  s    þr3  c                   @   sL   e Zd Zdefdefdefdefdefdefdefdefd	efd
efg
ZdS )ÚTOKEN_STATISTICSÚTokenIdÚAuthenticationIdÚExpirationTimeÚ	TokenTypeÚImpersonationLevelÚDynamicChargedÚDynamicAvailableÚ
GroupCountÚPrivilegeCountÚ
ModifiedIdN)	ru   rv   rw   r3  ÚLONGLONGÚ
TOKEN_TYPEÚSECURITY_IMPERSONATION_LEVELrE   rx   r   r   r   r   r7  
  s    ör7  c                 C   s>   |dks|t krtd| ƒ‚|tkrtƒ }t| ||ƒ |S d S )Nr   z,Invalid value for TokenInformationClass (%i))ÚMaxTokenInfoClassÚ
ValueErrorÚTokenStatisticsr7  r2  )r,  r-  r.  r   r   r   r)     s   ýr)  c                   @   rà   )ÚLSA_LAST_INTER_LOGON_INFOÚLastSuccessfulLogonÚLastFailedLogonÚ*FailedAttemptCountSinceLastSuccessfulLogonN)ru   rv   rw   rB  ÚULONGrx   r   r   r   r   rH  *  rä   rH  c                   @   s”   e Zd Zdefdefdefdefdefdefdefdefd	efd
efdefdefdefdefdefdefdefdefdefdefdefdefgZ	dS )ÚSECURITY_LOGON_SESSION_DATAÚSizeÚLogonIdÚUserNameÚLogonDomainÚAuthenticationPackageÚSessionÚSidÚ	LogonTimeÚLogonServerÚDnsDomainNameÚUpnÚ	UserFlagsÚLastLogonInfoÚLogonScriptÚProfilePathÚHomeDirectoryÚHomeDirectoryDriveÚ
LogoffTimeÚKickOffTimeÚPasswordLastSetÚPasswordCanChangeÚPasswordMustChangeN)
ru   rv   rw   rL  r3  ÚUNICODE_STRINGr�   rB  rH  rx   r   r   r   r   rM  2  s0    êrM  c                 C   sn   t jj}tttƒg|_t|_tƒ }|| t	|ƒƒ}|j
j ¡ t|j
jdƒ|j
j ¡ |j
j ¡ |j
j ¡ dœ}|S )NT)ÚusernameÚusersidÚdomainÚlogonserverÚdnsdomainname)rA   ÚSecur32ÚLsaGetLogonSessionDataÚPLUIDÚPOINTERÚPSECURITY_LOGON_SESSION_DATArG   rE   rH   rb   rc   rP  Ú
get_stringr�   rT  rQ  rV  rW  )ÚluidÚ_LsaGetLogonSessionDataÚsecdataÚxr™   r   r   r   rk  M  s   



ûrk  c                  C   s   t jj} g | _t| _| ƒ S ry   )rA   Úkernel32ÚGetCurrentProcessIdrG   rE   rH   )Ú_GetCurrentProcessIdr   r   r   ru  `  s   ru  c                 C   sJ   t jj}tttg|_t|_| d u rd} || t|ƒ|ƒ}|t	kr#t
 ¡ ‚|S )Nr?   )rA   rt  ÚOpenProcessrE   r®   rG   rD   rH   r    r  r   r   )rÌ   ÚbInheritHandleÚdwProcessIdÚ_OpenProcessÚhProcessr   r   r   rw  k  s   rw  )F)r  )»ÚenumÚwinacl.functions.definesÚwinacl.functions.kernel32r   r   r   Úwinacl.functions.membuffr   Úwinacl.dtyp.security_descriptorr   Úwinacl.dtyp.sidr   Úwinacl.functions.constantsr	   r   r   Úc_intr*  Ú	TokenUserÚTokenGroupsÚTokenPrivilegesÚ
TokenOwnerÚTokenPrimaryGroupÚTokenDefaultDaclÚTokenSourcer;  ÚTokenImpersonationLevelrG  ÚTokenRestrictedSidsÚTokenSessionIdÚTokenGroupsAndPrivilegesÚTokenSessionReferenceÚTokenSandBoxInertÚTokenAuditPolicyÚTokenOriginÚTokenElevationTypeÚTokenLinkedTokenÚTokenElevationÚTokenHasRestrictionsÚTokenAccessInformationÚTokenVirtualizationAllowedÚTokenVirtualizationEnabledÚTokenIntegrityLevelÚTokenUIAccessÚTokenMandatoryPolicyÚTokenLogonSidÚTokenIsAppContainerÚTokenCapabilitiesÚTokenAppContainerSidÚTokenAppContainerNumberÚTokenUserClaimAttributesÚTokenDeviceClaimAttributesÚ"TokenRestrictedUserClaimAttributesÚ$TokenRestrictedDeviceClaimAttributesÚTokenDeviceGroupsÚTokenRestrictedDeviceGroupsÚTokenSecurityAttributesÚTokenIsRestrictedrE  ÚTOKEN_ASSIGN_PRIMARYÚTOKEN_DUPLICATEÚTOKEN_IMPERSONATEÚTOKEN_QUERYÚTOKEN_QUERY_SOURCEÚTOKEN_ADJUST_PRIVILEGESÚTOKEN_ADJUST_GROUPSÚTOKEN_ADJUST_DEFAULTÚTOKEN_ADJUST_SESSIONIDÚSTANDARD_RIGHTS_READÚ
TOKEN_READÚSTANDARD_RIGHTS_REQUIREDÚTOKEN_ALL_ACCESSrL   ÚGROUP_SECURITY_INFORMATIONrQ   ÚSACL_SECURITY_INFORMATIONÚLABEL_SECURITY_INFORMATIONÚ%UNPROTECTED_SACL_SECURITY_INFORMATIONÚ%UNPROTECTED_DACL_SECURITY_INFORMATIONÚ#PROTECTED_SACL_SECURITY_INFORMATIONÚ#PROTECTED_DACL_SECURITY_INFORMATIONÚATTRIBUTE_SECURITY_INFORMATIONÚSCOPE_SECURITY_INFORMATIONÚ(PROCESS_TRUST_LABEL_SECURITY_INFORMATIONÚBACKUP_SECURITY_INFORMATIONÚSERVICE_DRIVERÚSERVICE_WIN32ÚSERVICE_ACTIVEÚSERVICE_INACTIVEÚSERVICE_STATE_ALLrD   r¿   ÚSERVICE_ALL_ACCESSÚSERVICE_QUERY_CONFIGÚSERVICE_CHANGE_CONFIGÚSERVICE_QUERY_STATUSÚSERVICE_ENUMERATE_DEPENDENTSÚSERVICE_STARTÚSERVICE_STOPÚSERVICE_PAUSE_CONTINUEÚSERVICE_INTERROGATEÚSERVICE_USER_DEFINED_CONTROLÚSC_MANAGER_ALL_ACCESSÚSC_MANAGER_CONNECTÚSC_MANAGER_CREATE_SERVICEÚSC_MANAGER_ENUMERATE_SERVICEÚSC_MANAGER_LOCKÚSC_MANAGER_QUERY_LOCK_STATUSÚSC_MANAGER_MODIFY_BOOT_CONFIGrC   r_   Ú	Structurero   rm  r{   rz   r�   r‹   r�   r›   r­   r¶   r´   r¾   rÉ   rÏ   rÔ   rØ   ÚLPSERVICE_STATUSrá   ré   rå   ÚHKEY_CLASSES_ROOTÚHKEY_CURRENT_USERÚHKEY_LOCAL_MACHINEÚ
HKEY_USERSÚHKEY_PERFORMANCE_DATAÚHKEY_PERFORMANCE_TEXTÚHKEY_PERFORMANCE_NLSTEXTÚHKEY_CURRENT_CONFIGÚHKEY_DYN_DATAÚhive_name_mapÚKEY_ALL_ACCESSÚKEY_CREATE_LINKÚKEY_CREATE_SUB_KEYÚKEY_ENUMERATE_SUB_KEYSÚKEY_EXECUTEÚ
KEY_NOTIFYÚKEY_QUERY_VALUEÚKEY_READÚKEY_SET_VALUEÚKEY_WOW64_32KEYÚKEY_WOW64_64KEYÚ	KEY_WRITEÚREG_OPTION_RESERVEDÚREG_OPTION_NON_VOLATILEÚREG_OPTION_VOLATILEÚREG_OPTION_CREATE_LINKÚREG_OPTION_BACKUP_RESTOREÚREG_OPTION_OPEN_LINKr  r  r
  r  r  r#  r2  rC  ÚPTOKEN_TYPEr3  rl  ÚSecurityAnonymousÚSecurityIdentificationÚSecurityImpersonationÚSecurityDelegationrD  ÚPSECURITY_IMPERSONATION_LEVELr7  ÚPTOKEN_STATISTICSr)  rH  ÚPLSA_LAST_INTER_LOGON_INFOrM  rn  rk  ru  rw  r   r   r   r   Ú<module>   s†   ÿÿÿÿþþþý?
	

ú
'
#
		
