IP : 18.190.253.228 Hostname : host45.registrar-servers.com Kernel : Linux host45.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64 Disable Function : None :) OS : Linux PATH: / home/ ../ lib64/ pkgconfig/ ../ ./ X11/ ../ xtables/ ../ mysql/ ../ python2.7/ ./ dis.pyc/ /

�
zfc@s�dZddlZddlZddlTddlmZddddd d
geZ[ejejejej e
fZ dd �Z
dd �Zdd
�Zddddd�ZeZd�Zd�Zd�Zedkr�e�ndS(s0Disassembler of Python byte code into mnemonics.i����N(t*(t__all__tdist disassembletdistbtdiscotfindlinestartst
findlabelscCsH|dkrt�dSt|tj�r5|j}nt|d�rP|j}nt|d�rk|j}nt|d�r�|j j
�}|j �x�|D]U\}}t|t �r�d|GHyt
|�Wntk
r�}dG|GHnXHq�q�WnNt|d�rt|�n2t|t�r.t|�ntdt|�j�dS( snDisassemble classes, methods, functions, or code.

With no argument, disassemble the last traceback.

Ntim_funct func_codet__dict__sDisassembly of %s:sSorry:tco_codes(don't know how to disassemble %s objects(tNoneRt
isinstancettypest InstanceTypet __class__thasattrRR R
titemstsortt
_have_codeRt TypeErrorRtstrtdisassemble_stringttypet__name__(txRtnametx1tmsg((s/usr/lib64/python2.7/dis.pyRs6    
 
 

cCsl|dkrRy
tj}Wntk
r5td�nXx|jrN|j}q9Wnt|jj|j �dS(s2Disassemble a traceback (default: last traceback).s no last traceback to disassembleN(
R tsystlast_tracebacktAttributeErrort RuntimeErrorttb_nextRttb_frametf_codettb_lasti(ttb((s/usr/lib64/python2.7/dis.pyR3s 


 c Csa|j}t|�}tt|��}t|�}d}d}d}x||kr\||} t| �}
||kr�|dkr�Hnd||GndG||kr�dGndG||kr�dGndGt|�jd�Gt |
j
d�G|d }|
t krXt||�t||d �d
|} d}|d }|
t krT| d }nt| �jd
�G|
t
kr�dt|j| �dGqX|
tkr�d|j| dGqX|
tkr�dt|| �dGqX|
tkr�d|j| dGqX|
tkrdt| dGqX|
tkrX|dkrB|j|j}nd|| dGqXnHqHWdS(sDisassemble a code object.is%3ds s-->s>>s iiiiilit(t)s(to N(R RtdictRtlenR tordtreprtrjusttopnametljustt
HAVE_ARGUMENTt EXTENDED_ARGthasconstt co_conststhasnametco_namesthasjrelthaslocalt co_varnamest
hascomparetcmp_opthasfreet co_cellvarst co_freevars( tcotlastitcodetlabelst
linestartstntit extended_argtfreetctoptoparg((s/usr/lib64/python2.7/dis.pyR=s\   
     
 *
 
       c Cs�t|�}t|�}d}x�||kr�||}t|�} ||krVdGndG||krmdGndGt|�jd�Gt| jd�G|d}| tkr�t||�t||d�d }
|d
}t|
�jd �G| tkr$|rd t||
�d
Gq�d|
Gq�| t krZ|dk rOd ||
d
Gq�d|
Gq�| t krdt||
�d
Gq�| t kr�|r�d ||
d
Gq�d|
Gq�| t
kr�d t|
d
Gq�nHq!WdS(Nis-->s s>>s iiiiiiR'R(s(%d)s(to (RR*R+R,R-R.R/R0R2R4R R6R7R9R:( R@R?tvarnamestnamest constantsRARCRDRGRHRI((s/usr/lib64/python2.7/dis.pyRnsH  
   
 &
         cCs�g}t|�}d}x�||kr�||}t|�}|d}|tkrt||�t||d�d}|d}d}|tkr�||}n|tkr�|}n|dkr�||kr�|j|�q�q�qqW|S(s`Detect all offsets in a byte code which are jump targets.

Return the list of offsets.

iiiii����(R*R+R0R6thasjabstappend(R@RARCRDRGRHRItlabel((s/usr/lib64/python2.7/dis.pyR�s& 
 
 &
 
    c cs�g|jddd�D]}t|�^q}g|jddd�D]}t|�^qF}d}|j}d}xZt||�D]I\}}|r�||kr�||fV|}n||7}n||7}q�W||kr�||fVndS(s�Find the offsets in a byte code which are start of lines in the source.

Generate pairs (offset, lineno) as described in Python/compile.c.

iNii(t co_lnotabR+R tco_firstlinenotzip( R@RGtbyte_incrementstline_incrementst
lastlinenotlinenotaddrt byte_incrt line_incr((s/usr/lib64/python2.7/dis.pyR�s//    
 cCs�tjdrftjdr:tjjd�tjd�ntjd}| sZ|dkrld}qlnd}|dkr�tj}n t|�}|j�}|dk r�|j �nd}t
||d�}t |�dS(s*Simple test program to disassemble a file.iisusage: python dis.py [-|file]
t-s<stdin>texecN( RtargvtstderrtwritetexitR tstdintopentreadtclosetcompileR(tfntftsourceR@((s/usr/lib64/python2.7/dis.pyt_test�s"


      
t__main__(t__doc__RRtopcodeRt _opcodes_allt
MethodTypet FunctionTypetCodeTypet ClassTypeRRR RRRRRRRRhR(((s/usr/lib64/python2.7/dis.pyt<module>s(  
  #
1  '