
               RAR  3.70 -  
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


      RAR  1.50  

==========================================================================
                           RAR
==========================================================================

      .    
 ,       -,  
   .

     :

HEAD_CRC       2      CRC     
HEAD_TYPE      1        
HEAD_FLAGS     2       
HEAD_SIZE      2       
ADD_SIZE       4        -    

 ADD_SIZE ,   (HEAD_FLAGS & 0x8000) != 0

      HEAD_SIZE,  (HEAD_FLAGS & 0x8000) == 0
 HEAD_SIZE+ADD_SIZE,    ADD_SIZE,  
(HEAD_FLAGS & 0x8000) != 0.

      HEAD_FLAGS   :

  0x4000 -  ,    RAR    
                ;
             ,        
            ;

  0x8000 -  ,    ADD_SIZE,   
             HEAD_SIZE+ADD_SIZE.

  :

HEAD_TYPE=0x72          -
HEAD_TYPE=0x73           
HEAD_TYPE=0x74           
HEAD_TYPE=0x75             
HEAD_TYPE=0x76             
HEAD_TYPE=0x77            
HEAD_TYPE=0x78              
HEAD_TYPE=0x79             
HEAD_TYPE=0x7a          

      .

    :

1.    -
2.   
3.    HEAD_SIZE-(MAIN_HEAD) 
4.    ,    , 
    7    HEAD_CRC, HEAD_TYPE, HEAD_FLAGS, HEAD_SIZE.
5.  HEAD_TYPE.
      HEAD_TYPE==0x74
          ( 7   )
          HEAD_SIZE-(FILE_HEAD) 
      (HEAD_FLAGS & 0x100)
          HIGH_PACK_SIZE*0x100000000+PACK_SIZE 
     
          FILE_SIZE 
     
          HEAD_TYPE:
          HEAD_SIZE-7 
          (HEAD_FLAGS & 0x8000)
            ADD_SIZE 
6.    4.


==========================================================================
                               
==========================================================================


- (MARK_HEAD)
~~~~~~~~~~~~~~~~~~~~~~~

HEAD_CRC         0x6152
2 

HEAD_TYPE        : 0x72
1 

HEAD_FLAGS       0x1a21
2 

HEAD_SIZE         = 0x0007
2 

-     
: 0x52 0x61 0x72 0x21 0x1a 0x07 0x00



  (MAIN_HEAD)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HEAD_CRC        CRC   HEAD_TYPE  RESERVED2
2 

HEAD_TYPE        : 0x73
1 

HEAD_FLAGS       :
2 
                0x0001  -   (  )
                0x0002  -   
                          RAR 3.x    
                              .

                0x0004  -   
                0x0008  -   (solid) 
                0x0010  -     ('volname.partN.rar')
                0x0020  -     
                            (AV)
                          RAR 3.x    .

                0x0040  -    
                0x0080  -   
                0x0100  -   (  RAR 3.0  )


                   HEAD_FLAGS  
                 

HEAD_SIZE          ,  
2          

RESERVED1       
2 

RESERVED2       
4 



  (  )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HEAD_CRC        CRC   HEAD_TYPE  FILEATTR   
2 

HEAD_TYPE        : 0x74
1 

HEAD_FLAGS       :
2 
                0x01 -     
                0x02 -     
                0x04 -   

                0x08 -   
                       RAR 3.x    
                           .

                0x10 -     
                       ( ) ( RAR 2.0  )

                 7 6 5 ( RAR 2.0  )

                     0 0 0    -     64 
                     0 0 1    -    128 
                     0 1 0    -    256 
                     0 1 1    -    512 
                     1 0 0    -   1024 
                     1 0 1    -   2048 KB
                     1 1 0    -   4096 KB
                     1 1 1    -   

               0x100 -   HIGH_PACK_SIZE  HIGH_UNP_SIZE.
                            
                          ( 2 ),  
                           .

               0x200 - FILE_NAME      
                        Unicode,  .    
                       NAME_SIZE      
                          Unicode  1.

                          ,  FILE_NAME  
                        ,  ,    
                         UTF-8.

               0x400 -      
                       8  ,   
                          ( 
                       "").

               0x800 -  .    , 
                             ';n'.

              0x1000 -    .

              0x8000 -    ,    
                        HEAD_SIZE + PACK_SIZE
                       (  HIGH_PACK_SIZE,    0x100).

HEAD_SIZE          ,     
2 

PACK_SIZE           ()
4 

UNP_SIZE           ()
4 

HOST_OS             
1                0 - MS-DOS
                     1 - OS/2
                     2 - Win32
                     3 - Unix
                     4 - Mac OS
                     5 - BeOS

FILE_CRC        CRC 
4 

FTIME                 MS-DOS
4 

UNP_VER          RAR,    
1 
                   
                10 *    +   .

METHOD           
1 
                0x30 -   
                0x31 -  
                0x32 -  
                0x33 -  
                0x34 -  
                0x35 -  

NAME_SIZE         
2 

ATTR             
4 

HIGH_PACK_SIZE   4  64-    .
4           ,  ,  
                  0x100  HEAD_FLAGS

HIGH_UNP_SIZE    4  64-    .
4           ,  ,  
                  0x100  HEAD_FLAGS

FILE_NAME         -   NAME_SIZE 

SALT            ,  (HEAD_FLAGS & 0x400) != 0
8 

EXT_TIME        ,  (HEAD_FLAGS & 0x1000) != 0
 

     .


==========================================================================
                             
==========================================================================

1.   SFX-    SFX  
     -.   SFX-  
   - (0x52 0x61 0x72 0x21 0x1a 0x07 0x00) .

2. CRC      0xEDB88320.  
     CRC  4 ,    .
