+
    i                       R t ^ RIHt ^ RIHt ]'       g   R]9   d   ^RIH	t	 M^ RI	t	 ^ RI
tR tR tR tR	 t ! R
 R]4      t^ RIt]	P(                  t^ RIHtHtHt ^ RItR R lt]	P6                  t ]	P8                  t ]	P:                  t ]	P<                  t ]	P>                  t RR R llt R R lt!R R lt"R R lt#RR R llt$RR R llt%R R lt&R#   ] d    ^ RIt Li ; i)a  Functions that deal with entry points.

Exported functions are considered as entry points as well.
IDA maintains list of entry points to the program. Each entry point:
   * has an address
   * has a name
   * may have an ordinal number

.. tip::
   The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
   common tasks and provides better type hints, while remaining fully compatible
   with IDAPython for advanced use cases.

   For entry point management, see :mod:`ida_domain.entries`.)annotations)version_info.)
_ida_entryNc                     R V P                   P                  4       ,           pRV P                  P
                  : RV P                  P                  : RV: R2#   \        P                   d    Rp LPi ; i)z	proxy of  <r   z; z >)this__repr____builtin__	Exception	__class__
__module____name__)selfstrthiss   & AC:\Users\user\Downloads\ida93sp2\portable_win\python\ida_entry.py
_swig_reprr      sg    		 2 2 44 "^^669     s   !A A43A4c                   a  V 3R  lpV# )c                  < VR 8X  d   S! WV4       R# VR8X  d   V P                   P                  V4       R# \        W4      '       d5   \        \	        \        V 4      V4      \        4      '       d   S! WV4       R# \        RV ,          4      h)r	   thisownz(You cannot add instance attributes to %sN)r	   ownhasattr
isinstancegetattrtypepropertyAttributeError)r   namevaluesets   &&&r   set_instance_attrE_swig_setattr_nondynamic_instance_variable.<locals>.set_instance_attr&   su    6>E"YIIMM% T  ZT
D0I& &E" !K"       )r    r!   s   f r   *_swig_setattr_nondynamic_instance_variabler%   $   s    
 r#   c                   a  V 3R  lpV# )c                   < \        W4      '       d+   \        \        W4      \        4      '       g   S! WV4       R# \	        R V ,          4      h)z%You cannot add class attributes to %sN)r   r   r   r   r   )clsr   r   r    s   &&&r   set_class_attr?_swig_setattr_nondynamic_class_variable.<locals>.set_class_attr6   s:    3j1CX&N&N5! !H3!NOOr#   r$   )r    r)   s   f r   '_swig_setattr_nondynamic_class_variabler+   4   s    P
 r#   c                   a  V 3R lpV# )zlClass decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclassc                p   < S! V P                   V P                  V P                  P                  4       4      # )N)r   	__bases____dict__copy)r(   	metaclasss   &r   wrapper$_swig_add_metaclass.<locals>.wrapperA   s'    s}}cll6G6G6IJJr#   r$   )r1   r2   s   f r   _swig_add_metaclassr4   >   s    KNr#   c                  >    ] tR t^FtRt]! ]P                  4      tRtR# )_SwigNonDynamicMetazKMeta class to enforce nondynamic attributes (no new attributes) for a classr$   N)	r   r   __qualname____firstlineno____doc__r+   r   __setattr____static_attributes__r$   r#   r   r6   r6   F   s    U9$:J:JKKr#   r6   )TupleListUnionc                   V ^8  d   QhRR/# )   returnintr$   )formats   "r   __annotate__rD   Q   s     & &c &r#   c                 ,    \         P                  ! 4       # )zGet number of entry points.
)r   get_entry_qtyr$   r#   r   rF   rF   Q   s     ##%%r#   c               0    V ^8  d   QhRRRRRRRRR	RR
R/# )r@   ordrB   eaida_idaapi.ea_tr   strmakecodeboolflagsrA   r$   )rC   s   "r   rD   rD   h   s@     
@ 
@3 
@O 
@3 
@$ 
@
@
@r#   c                2    \         P                  ! WW#V4      # )a  Add an entry point to the list of entry points. 
        
:param ord: ordinal number if ordinal number is equal to 'ea' then ordinal is not used
:param ea: linear address
:param name: name of entry point. If the specified location already has a name, the old name will be appended to the regular comment.
:param makecode: should the kernel convert bytes at the entry point to instruction(s)
:param flags: See AEF_*
:returns: success (currently always true))r   	add_entry)rH   rI   r   rL   rN   s   &&&&&r   rP   rP   h   s     ??r#   c                    V ^8  d   QhRRRR/# )r@   idxrB   rA   r$   )rC   s   "r   rD   rD   u   s     - -3 -# -r#   c                .    \         P                  ! V 4      # )zGet ordinal number of an entry point. 
        
:param idx: internal number of entry point. Should be in the range 0..get_entry_qty()-1
:returns: ordinal number or 0.)r   get_entry_ordinal)rR   s   &r   rT   rT   u   s    
 '',,r#   c                    V ^8  d   QhRRRR/# )r@   rH   rB   rA   rJ   r$   )rC   s   "r   rD   rD   }   s     % %3 %/ %r#   c                .    \         P                  ! V 4      # )zwGet entry point address by its ordinal 
        
:param ord: ordinal number of entry point
:returns: address or BADADDR)r   	get_entryrH   s   &r   rW   rW   }   s    
 $$r#   c                    V ^8  d   QhRRRR/# r@   rH   rB   rA   rK   r$   )rC   s   "r   rD   rD      s     * * *s *r#   c                .    \         P                  ! V 4      # )zGet name of the entry point by its ordinal. 
        
:param ord: ordinal number of entry point
:returns: size of entry name or -1)r   get_entry_namerX   s   &r   r\   r\      s    
 $$S))r#   c               (    V ^8  d   QhRRRRRRRR/# r@   rH   rB   r   rK   rN   rA   rM   r$   )rC   s   "r   rD   rD      s(     5 5c 5 5S 5d 5r#   c                0    \         P                  ! WV4      # )a   Rename entry point. 
        
:param ord: ordinal number of the entry point
:param name: name of entry point. If the specified location already has a name, the old name will be appended to a non-repeatable comment.
:param flags: See AEF_*
:returns: success)r   rename_entryrH   r   rN   s   &&&r   r`   r`      s     ""3e44r#   c               (    V ^8  d   QhRRRRRRRR/# r^   r$   )rC   s   "r   rD   rD      s(     < <S < <C <T <r#   c                0    \         P                  ! WV4      # )zSet forwarder name for ordinal. 
        
:param ord: ordinal number of the entry point
:param name: forwarder name for entry point.
:param flags: See AEF_*
:returns: success)r   set_entry_forwarderra   s   &&&r   rd   rd      s     ))#U;;r#   c                    V ^8  d   QhRRRR/# rZ   r$   )rC   s   "r   rD   rD      s     / /S /C /r#   c                .    \         P                  ! V 4      # )zGet forwarder name for the entry point by its ordinal. 
        
:param ord: ordinal number of entry point
:returns: size of entry forwarder name or -1)r   get_entry_forwarderrX   s   &r   rg   rg      s    
 ))#..r#   )    )'r9   
__future__r   sysr   _swig_python_version_info__package__r   r   r   builtinsr   ImportErrorr   r%   r+   r4   r   r6   weakrefSWIG_PYTHON_LEGACY_BOOLtypingr<   r=   r>   
ida_idaapirF   AEF_UTF8
AEF_IDBENCAEF_NODUMMYAEF_WEAKAEF_NOFORCErP   rT   rW   r\   r`   rd   rg   r$   r#   r   <module>rx      s   A # 9#/"
 L$ L
 $<<  % % & ""
$$$$
@-%*5</U  s   C C*)C*