{"name": "inflateEnd", "code": "__int64 __fastcall inflateEnd ( _QWORD * @@a1@@ ) { __int64 @@v2@@ ; if ( ! @@a1@@ || ! @@a1@@ [ Number ] || ! @@a1@@ [ Number ] ) return Number L ; @@v2@@ = @@a1@@ [ Number ] ; if ( * ( _QWORD * ) ( @@v2@@ + Number ) ) ( ( void ( __fastcall * ) ( _QWORD , _QWORD ) ) @@a1@@ [ Number ] ) ( @@a1@@ [ Number ] , * ( _QWORD * ) ( @@v2@@ + Number ) ) ; ( ( void ( __fastcall * ) ( _QWORD , _QWORD ) ) @@a1@@ [ Number ] ) ( @@a1@@ [ Number ] , @@a1@@ [ Number ] ) ; @@a1@@ [ Number ] = Number L ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "v2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]}
{"name": "inflate", "code": "__int64 __fastcall inflate ( __int64 @@a1@@ , int @@a2@@ ) { __int64 result ; unsigned __int8 * v3 ; __int64 v4 ; int v5 ; unsigned __int8 * v6 ; __int64 v7 ; unsigned __int8 * v8 ; __int64 v9 ; unsigned __int8 * v10 ; __int64 v11 ; unsigned __int8 * v12 ; __int64 v13 ; size_t v14 ; __int64 v15 ; unsigned int v16 ; __int64 v17 ; unsigned int v18 ; __int64 v19 ; unsigned int v20 ; __int64 v21 ; unsigned int v22 ; __int64 v23 ; unsigned __int8 * v24 ; unsigned __int8 * v25 ; unsigned __int8 * v26 ; unsigned int v27 ; unsigned __int8 * v28 ; unsigned __int8 * v29 ; unsigned __int8 * v30 ; char v31 ; unsigned int v32 ; unsigned int v33 ; unsigned __int8 * v34 ; unsigned int v35 ; unsigned __int8 * v36 ; unsigned __int8 * v37 ; unsigned __int8 * v38 ; unsigned int v39 ; int v40 ; unsigned __int8 * v41 ; unsigned __int8 * v42 ; unsigned __int8 * v43 ; unsigned __int8 * v44 ; unsigned __int8 * v45 ; unsigned __int8 * v46 ; __int64 v47 ; __int64 v48 ; _BYTE * v49 ; _BYTE * v50 ; int @@v51@@ ; _BYTE * v52 ; unsigned __int8 * v53 ; __int64 v54 ; unsigned __int64 v55 ; unsigned __int8 * v56 ; __int64 v57 ; int v58 ; int v59 ; int v60 ; int v61 ; int v62 ; int @@v64@@ ; int @@v65@@ ; int @@v66@@ ; unsigned int @@v67@@ ; __int64 @@v68@@ ; unsigned int @@v69@@ ; unsigned int @@v70@@ ; _BYTE * @@v71@@ ; size_t @@n@@ ; unsigned int @@v73@@ ; unsigned __int64 @@v74@@ ; unsigned int @@v75@@ ; unsigned int @@v76@@ ; void * @@dest@@ ; void * @@src@@ ; if ( ! @@a1@@ || ! * ( _QWORD * ) ( @@a1@@ + Number ) || ! * ( _QWORD * ) ( @@a1@@ + Number ) || ! * ( _QWORD * ) @@a1@@ && * ( _DWORD * ) ( @@a1@@ + Number ) ) return Number L ; @@v68@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; if ( * ( _DWORD * ) @@v68@@ == Number ) * ( _DWORD * ) @@v68@@ = Number ; @@dest@@ = * ( void * * ) ( @@a1@@ + Number ) ; @@v75@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@src@@ = * ( void * * ) @@a1@@ ; @@v76@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v74@@ = * ( _QWORD * ) ( @@v68@@ + Number ) ; @@v73@@ = * ( _DWORD * ) ( @@v68@@ + Number ) ; @@v67@@ = @@v76@@ ; HIDWORD ( @@n@@ ) = @@v75@@ ; @@v69@@ = Number ; while ( Number ) { switch ( * ( _DWORD * ) @@v68@@ ) { case Number : if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) ) { * ( _DWORD * ) @@v68@@ = Number ; continue ; } while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v3 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v3 << @@v73@@ ; @@v73@@ += Number ; } if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number && @@v74@@ == Number ) { * ( _QWORD * ) ( @@v68@@ + Number ) = crc32 ( Number L , Number L , Number L ) ; LOWORD ( @@v64@@ ) = @@v74@@ ; v4 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , & @@v64@@ , Number L ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v4 ; @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = Number ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) == Number || ( ( unsigned __int16 ) ( ( _WORD ) @@v74@@ << Number ) + ( @@v74@@ >> Number ) ) % Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( ( @@v74@@ & Number ) != Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } @@v74@@ >>= Number ; @@v73@@ -= Number ; @@v70@@ = ( @@v74@@ & Number ) + Number ; if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) { if ( @@v70@@ > * ( _DWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } } else { * ( _DWORD * ) ( @@v68@@ + Number ) = @@v70@@ ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number << @@v70@@ ; * ( _QWORD * ) ( @@v68@@ + Number ) = adler32 ( Number L , Number L , Number L ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; if ( ( @@v74@@ & Number ) != Number ) v5 = Number ; else v5 = Number ; * ( _DWORD * ) @@v68@@ = v5 ; @@v74@@ = Number L ; @@v73@@ = Number ; continue ; case Number : while ( Number ) { if ( @@v73@@ <= Number ) { if ( @@v76@@ ) { -- @@v76@@ ; v6 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v6 << @@v73@@ ; @@v73@@ += Number ; continue ; } goto LABEL_329 ; } break ; } * ( _DWORD * ) ( @@v68@@ + Number ) = @@v74@@ ; if ( ( unsigned __int8 ) * ( _DWORD * ) ( @@v68@@ + Number ) != Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) * * ( _DWORD * * ) ( @@v68@@ + Number ) = BYTE1 ( @@v74@@ ) & Number ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { LOWORD ( @@v64@@ ) = @@v74@@ ; v7 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , & @@v64@@ , Number L ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v7 ; } @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_48 : while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v8 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v8 << @@v73@@ ; @@v73@@ += Number ; } if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = @@v74@@ ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { @@v64@@ = @@v74@@ ; v9 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , & @@v64@@ , Number L ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v9 ; } @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_56 : while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v10 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v10 << @@v73@@ ; @@v73@@ += Number ; } if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) { * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = ( unsigned __int8 ) @@v74@@ ; * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = @@v74@@ >> Number ; } if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { LOWORD ( @@v64@@ ) = @@v74@@ ; v11 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , & @@v64@@ , Number L ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v11 ; } @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_62 : if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v12 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v12 << @@v73@@ ; @@v73@@ += Number ; } * ( _DWORD * ) ( @@v68@@ + Number ) = @@v74@@ ; if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = @@v74@@ ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { LOWORD ( @@v64@@ ) = @@v74@@ ; v13 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , & @@v64@@ , Number L ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v13 ; } @@v74@@ = Number L ; @@v73@@ = Number ; } else if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = Number L ; } * ( _DWORD * ) @@v68@@ = Number ; LABEL_75 : if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { LODWORD ( @@n@@ ) = * ( _DWORD * ) ( @@v68@@ + Number ) ; if ( ( unsigned int ) @@n@@ > @@v76@@ ) LODWORD ( @@n@@ ) = @@v76@@ ; if ( ( _DWORD ) @@n@@ ) { if ( * ( _QWORD * ) ( @@v68@@ + Number ) && * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ) { @@v70@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) - * ( _DWORD * ) ( @@v68@@ + Number ) ; if ( ( unsigned int ) @@n@@ + @@v70@@ <= * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ) v14 = ( unsigned int ) @@n@@ ; else v14 = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) - @@v70@@ ; memcpy ( ( void * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) + @@v70@@ ) , @@src@@ , v14 ) ; } if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { v15 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , @@src@@ , ( unsigned int ) @@n@@ ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v15 ; } @@v76@@ -= @@n@@ ; @@src@@ = ( char * ) @@src@@ + ( unsigned int ) @@n@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) -= @@n@@ ; } if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) goto LABEL_329 ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_90 : if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; LODWORD ( @@n@@ ) = Number ; do { v16 = @@n@@ ; LODWORD ( @@n@@ ) = @@n@@ + Number ; @@v70@@ = * ( ( unsigned __int8 * ) @@src@@ + v16 ) ; if ( * ( _QWORD * ) ( @@v68@@ + Number ) && * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) && * ( _DWORD * ) ( @@v68@@ + Number ) < * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ) { v17 = * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ; v18 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v18 + Number ; * ( _BYTE * ) ( v17 + v18 ) = @@v70@@ ; } } while ( @@v70@@ && ( unsigned int ) @@n@@ < @@v76@@ ) ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { v19 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , @@src@@ , ( unsigned int ) @@n@@ ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v19 ; } @@v76@@ -= @@n@@ ; @@src@@ = ( char * ) @@src@@ + ( unsigned int ) @@n@@ ; if ( @@v70@@ ) goto LABEL_329 ; } else if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = Number L ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_106 : if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; LODWORD ( @@n@@ ) = Number ; do { v20 = @@n@@ ; LODWORD ( @@n@@ ) = @@n@@ + Number ; @@v70@@ = * ( ( unsigned __int8 * ) @@src@@ + v20 ) ; if ( * ( _QWORD * ) ( @@v68@@ + Number ) && * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) && * ( _DWORD * ) ( @@v68@@ + Number ) < * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ) { v21 = * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) ; v22 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v22 + Number ; * ( _BYTE * ) ( v21 + v22 ) = @@v70@@ ; } } while ( @@v70@@ && ( unsigned int ) @@n@@ < @@v76@@ ) ; if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) != Number ) { v23 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , @@src@@ , ( unsigned int ) @@n@@ ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v23 ; } @@v76@@ -= @@n@@ ; @@src@@ = ( char * ) @@src@@ + ( unsigned int ) @@n@@ ; if ( @@v70@@ ) goto LABEL_329 ; } else if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = Number L ; } * ( _DWORD * ) @@v68@@ = Number ; LABEL_122 : if ( ( * ( _DWORD * ) ( @@v68@@ + Number ) & Number ) == Number ) goto LABEL_130 ; while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v24 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v24 << @@v73@@ ; @@v73@@ += Number ; } if ( @@v74@@ == ( unsigned __int16 ) * ( _QWORD * ) ( @@v68@@ + Number ) ) { @@v74@@ = Number L ; @@v73@@ = Number ; LABEL_130 : if ( * ( _QWORD * ) ( @@v68@@ + Number ) ) { * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = ( * ( int * ) ( @@v68@@ + Number ) >> Number ) & Number ; * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L ) = Number ; } * ( _QWORD * ) ( @@v68@@ + Number ) = crc32 ( Number L , Number L , Number L ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) @@v68@@ = Number ; } else { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; } continue ; case Number : goto LABEL_48 ; case Number : goto LABEL_56 ; case Number : goto LABEL_62 ; case Number : goto LABEL_75 ; case Number : goto LABEL_90 ; case Number : goto LABEL_106 ; case Number : goto LABEL_122 ; case Number : while ( Number ) { if ( @@v73@@ <= Number ) { if ( @@v76@@ ) { -- @@v76@@ ; v25 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v25 << @@v73@@ ; @@v73@@ += Number ; continue ; } goto LABEL_329 ; } break ; } * ( _QWORD * ) ( @@v68@@ + Number ) = ( unsigned int ) ( ( _DWORD ) @@v74@@ << Number ) + ( ( ( _DWORD ) @@v74@@ << Number ) & Number ) + ( BYTE3 ( @@v74@@ ) | ( @@v74@@ >> Number ) & Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_137 : if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = @@dest@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v75@@ ; * ( _QWORD * ) @@a1@@ = @@src@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v76@@ ; * ( _QWORD * ) ( @@v68@@ + Number ) = @@v74@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) = @@v73@@ ; return Number L ; } * ( _QWORD * ) ( @@v68@@ + Number ) = adler32 ( Number L , Number L , Number L ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_140 : if ( @@a2@@ == Number || @@a2@@ == Number ) goto LABEL_329 ; LABEL_142 : if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) { @@v74@@ >>= @@v73@@ & Number ; @@v73@@ &= Number ; * ( _DWORD * ) @@v68@@ = Number ; } else { while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v26 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v26 << @@v73@@ ; @@v73@@ += Number ; } * ( _DWORD * ) ( @@v68@@ + Number ) = @@v74@@ & Number ; @@v74@@ >>= Number ; -- @@v73@@ ; v27 = @@v74@@ & Number ; if ( v27 == Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; } else if ( v27 <= Number ) { if ( v27 == Number ) { * ( _DWORD * ) @@v68@@ = Number ; } else if ( ( @@v74@@ & Number ) != Number ) { fixedtables ( @@v68@@ ) ; * ( _DWORD * ) @@v68@@ = Number ; if ( @@a2@@ == Number ) { @@v74@@ >>= Number ; @@v73@@ -= Number ; goto LABEL_329 ; } } else { * ( _DWORD * ) @@v68@@ = Number ; } } @@v74@@ >>= Number ; @@v73@@ -= Number ; } continue ; case Number : goto LABEL_137 ; case Number : goto LABEL_140 ; case Number : goto LABEL_142 ; case Number : @@v74@@ >>= @@v73@@ & Number ; @@v73@@ &= Number ; LABEL_160 : if ( @@v73@@ > Number ) { if ( ( unsigned __int16 ) @@v74@@ == ( ( @@v74@@ >> Number ) ^ Number ) ) { * ( _DWORD * ) ( @@v68@@ + Number ) = ( unsigned __int16 ) @@v74@@ ; @@v74@@ = Number L ; @@v73@@ = Number ; * ( _DWORD * ) @@v68@@ = Number ; if ( @@a2@@ == Number ) goto LABEL_329 ; LABEL_164 : * ( _DWORD * ) @@v68@@ = Number ; LABEL_165 : LODWORD ( @@n@@ ) = * ( _DWORD * ) ( @@v68@@ + Number ) ; if ( ( _DWORD ) @@n@@ ) { if ( ( unsigned int ) @@n@@ > @@v76@@ ) LODWORD ( @@n@@ ) = @@v76@@ ; if ( ( unsigned int ) @@n@@ > @@v75@@ ) LODWORD ( @@n@@ ) = @@v75@@ ; if ( ! ( _DWORD ) @@n@@ ) goto LABEL_329 ; memcpy ( @@dest@@ , @@src@@ , ( unsigned int ) @@n@@ ) ; @@v76@@ -= @@n@@ ; @@src@@ = ( char * ) @@src@@ + ( unsigned int ) @@n@@ ; @@v75@@ -= @@n@@ ; @@dest@@ = ( char * ) @@dest@@ + ( unsigned int ) @@n@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) -= @@n@@ ; } else { * ( _DWORD * ) @@v68@@ = Number ; } } else { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; } continue ; } if ( @@v76@@ ) { -- @@v76@@ ; v28 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v28 << @@v73@@ ; @@v73@@ += Number ; goto LABEL_160 ; } LABEL_329 : * ( _QWORD * ) ( @@a1@@ + Number ) = @@dest@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v75@@ ; * ( _QWORD * ) @@a1@@ = @@src@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v76@@ ; * ( _QWORD * ) ( @@v68@@ + Number ) = @@v74@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) = @@v73@@ ; if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) && ( HIDWORD ( @@n@@ ) == * ( _DWORD * ) ( @@a1@@ + Number ) || * ( _DWORD * ) @@v68@@ > Number || * ( _DWORD * ) @@v68@@ > Number && @@a2@@ == Number ) || ! ( unsigned int ) updatewindow ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , HIDWORD ( @@n@@ ) - * ( _DWORD * ) ( @@a1@@ + Number ) ) ) { @@v67@@ -= * ( _DWORD * ) ( @@a1@@ + Number ) ; HIDWORD ( @@n@@ ) -= * ( _DWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) += @@v67@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) += HIDWORD ( @@n@@ ) ; * ( _QWORD * ) ( @@v68@@ + Number ) += HIDWORD ( @@n@@ ) ; if ( * ( _DWORD * ) ( @@v68@@ + Number ) && HIDWORD ( @@n@@ ) ) { if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) v57 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) - HIDWORD ( @@n@@ ) , HIDWORD ( @@n@@ ) ) ; else v57 = adler32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) - HIDWORD ( @@n@@ ) , HIDWORD ( @@n@@ ) ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v57 ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; } if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) v58 = Number ; else v58 = Number ; v59 = v58 + * ( _DWORD * ) ( @@v68@@ + Number ) ; if ( * ( _DWORD * ) @@v68@@ == Number ) v60 = Number ; else v60 = Number ; v61 = v60 + v59 ; if ( * ( _DWORD * ) @@v68@@ == Number || * ( _DWORD * ) @@v68@@ == Number ) v62 = Number ; else v62 = Number ; * ( _DWORD * ) ( @@a1@@ + Number ) = v61 + v62 ; if ( ( ! @@v67@@ && ! HIDWORD ( @@n@@ ) || @@a2@@ == Number ) && ! @@v69@@ ) @@v69@@ = Number ; result = @@v69@@ ; } else { * ( _DWORD * ) @@v68@@ = Number ; result = Number L ; } return result ; case Number : goto LABEL_164 ; case Number : goto LABEL_165 ; case Number : while ( Number ) { if ( @@v73@@ <= Number ) { if ( @@v76@@ ) { -- @@v76@@ ; v29 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v29 << @@v73@@ ; @@v73@@ += Number ; continue ; } goto LABEL_329 ; } break ; } * ( _DWORD * ) ( @@v68@@ + Number ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; * ( _DWORD * ) ( @@v68@@ + Number ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; * ( _DWORD * ) ( @@v68@@ + Number ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; if ( * ( _DWORD * ) ( @@v68@@ + Number ) > Number || * ( _DWORD * ) ( @@v68@@ + Number ) > Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_184 : while ( * ( _DWORD * ) ( @@v68@@ + Number ) < * ( _DWORD * ) ( @@v68@@ + Number ) ) { while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v30 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v30 << @@v73@@ ; @@v73@@ += Number ; } v31 = @@v74@@ ; v32 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v32 + Number ; * ( _WORD * ) ( @@v68@@ + Number * ( order_3801 [ v32 ] + Number L ) ) = v31 & Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; } while ( * ( _DWORD * ) ( @@v68@@ + Number ) <= Number ) { v33 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v33 + Number ; * ( _WORD * ) ( @@v68@@ + Number * ( order_3801 [ v33 ] + Number L ) ) = Number ; } * ( _QWORD * ) ( @@v68@@ + Number ) = @@v68@@ + Number ; * ( _QWORD * ) ( @@v68@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; @@v69@@ = inflate_table ( Number L , @@v68@@ + Number , Number L , @@v68@@ + Number , @@v68@@ + Number , @@v68@@ + Number ) ; if ( @@v69@@ ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_218 : while ( * ( _DWORD * ) ( @@v68@@ + Number ) < ( unsigned int ) ( * ( _DWORD * ) ( @@v68@@ + Number ) + * ( _DWORD * ) ( @@v68@@ + Number ) ) ) { while ( Number ) { @@v66@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L * ( ( unsigned int ) @@v74@@ & ~ ( Number << * ( _DWORD * ) ( @@v68@@ + Number ) ) ) ) ; if ( @@v73@@ >= BYTE1 ( @@v66@@ ) ) break ; if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v34 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v34 << @@v73@@ ; @@v73@@ += Number ; } if ( HIWORD ( @@v66@@ ) > Number ) { if ( HIWORD ( @@v66@@ ) == Number ) { while ( @@v73@@ < ( unsigned int ) BYTE1 ( @@v66@@ ) + Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v36 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v36 << @@v73@@ ; @@v73@@ += Number ; } @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; break ; } @@v70@@ = * ( unsigned __int16 * ) ( @@v68@@ + Number * ( ( unsigned int ) ( * ( _DWORD * ) ( @@v68@@ + Number ) - Number ) + Number L ) ) ; LODWORD ( @@n@@ ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; } else if ( HIWORD ( @@v66@@ ) == Number ) { while ( @@v73@@ < ( unsigned int ) BYTE1 ( @@v66@@ ) + Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v37 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v37 << @@v73@@ ; @@v73@@ += Number ; } @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; @@v70@@ = Number ; LODWORD ( @@n@@ ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; } else { while ( @@v73@@ < ( unsigned int ) BYTE1 ( @@v66@@ ) + Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v38 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v38 << @@v73@@ ; @@v73@@ += Number ; } @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; @@v70@@ = Number ; LODWORD ( @@n@@ ) = ( @@v74@@ & Number ) + Number ; @@v74@@ >>= Number ; @@v73@@ -= Number ; } if ( * ( _DWORD * ) ( @@v68@@ + Number ) + ( int ) @@n@@ > ( unsigned int ) ( * ( _DWORD * ) ( @@v68@@ + Number ) + * ( _DWORD * ) ( @@v68@@ + Number ) ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; break ; } while ( Number ) { v40 = @@n@@ ; LODWORD ( @@n@@ ) = @@n@@ - Number ; if ( ! v40 ) break ; v39 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v39 + Number ; * ( _WORD * ) ( @@v68@@ + Number * ( v39 + Number L ) ) = @@v70@@ ; } } else { @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; v35 = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = v35 + Number ; * ( _WORD * ) ( @@v68@@ + Number * ( v35 + Number L ) ) = HIWORD ( @@v66@@ ) ; } } if ( * ( _DWORD * ) @@v68@@ == Number ) continue ; if ( ! * ( _WORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _QWORD * ) ( @@v68@@ + Number ) = @@v68@@ + Number ; * ( _QWORD * ) ( @@v68@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; @@v69@@ = inflate_table ( Number L , @@v68@@ + Number , * ( unsigned int * ) ( @@v68@@ + Number ) , @@v68@@ + Number , @@v68@@ + Number , @@v68@@ + Number ) ; if ( @@v69@@ ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _QWORD * ) ( @@v68@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; @@v69@@ = inflate_table ( Number L , Number L * * ( unsigned int * ) ( @@v68@@ + Number ) + @@v68@@ + Number , * ( unsigned int * ) ( @@v68@@ + Number ) , @@v68@@ + Number , @@v68@@ + Number , @@v68@@ + Number ) ; if ( @@v69@@ ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) @@v68@@ = Number ; if ( @@a2@@ == Number ) goto LABEL_329 ; LABEL_227 : * ( _DWORD * ) @@v68@@ = Number ; LABEL_228 : if ( @@v76@@ <= Number || @@v75@@ <= Number ) { * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; while ( Number ) { @@v66@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L * ( ( unsigned int ) @@v74@@ & ~ ( Number << * ( _DWORD * ) ( @@v68@@ + Number ) ) ) ) ; if ( @@v73@@ >= BYTE1 ( @@v66@@ ) ) break ; if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v41 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v41 << @@v73@@ ; @@v73@@ += Number ; } if ( ( _BYTE ) @@v66@@ && ( @@v66@@ & Number ) == Number ) { @@v65@@ = @@v66@@ ; while ( Number ) { @@v66@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L * ( HIWORD ( @@v65@@ ) + ( ( ~ ( Number << ( BYTE1 ( @@v65@@ ) + @@v65@@ ) ) & ( unsigned int ) @@v74@@ ) >> SBYTE1 ( @@v65@@ ) ) ) ) ; if ( @@v73@@ >= BYTE1 ( @@v65@@ ) + ( unsigned int ) BYTE1 ( @@v66@@ ) ) break ; if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v42 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v42 << @@v73@@ ; @@v73@@ += Number ; } @@v74@@ >>= SBYTE1 ( @@v65@@ ) ; @@v73@@ -= BYTE1 ( @@v65@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += BYTE1 ( @@v65@@ ) ; } @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += BYTE1 ( @@v66@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = HIWORD ( @@v66@@ ) ; if ( ! ( _BYTE ) @@v66@@ ) { * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( ( @@v66@@ & Number ) != Number ) { * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( ( @@v66@@ & Number ) != Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) ( @@v68@@ + Number ) = @@v66@@ & Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_250 : if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) { while ( @@v73@@ < * ( _DWORD * ) ( @@v68@@ + Number ) ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v43 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v43 << @@v73@@ ; @@v73@@ += Number ; } * ( _DWORD * ) ( @@v68@@ + Number ) += @@v74@@ & ~ ( Number << * ( _DWORD * ) ( @@v68@@ + Number ) ) ; @@v74@@ >>= * ( _DWORD * ) ( @@v68@@ + Number ) ; @@v73@@ -= * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += * ( _DWORD * ) ( @@v68@@ + Number ) ; } * ( _DWORD * ) ( @@v68@@ + Number ) = * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_257 : while ( Number ) { @@v66@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L * ( ( unsigned int ) @@v74@@ & ~ ( Number << * ( _DWORD * ) ( @@v68@@ + Number ) ) ) ) ; if ( @@v73@@ >= BYTE1 ( @@v66@@ ) ) break ; if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v44 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v44 << @@v73@@ ; @@v73@@ += Number ; } if ( ( @@v66@@ & Number ) == Number ) { @@v65@@ = @@v66@@ ; while ( Number ) { @@v66@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@v68@@ + Number ) + Number L * ( HIWORD ( @@v65@@ ) + ( ( ~ ( Number << ( BYTE1 ( @@v65@@ ) + @@v65@@ ) ) & ( unsigned int ) @@v74@@ ) >> SBYTE1 ( @@v65@@ ) ) ) ) ; if ( @@v73@@ >= BYTE1 ( @@v65@@ ) + ( unsigned int ) BYTE1 ( @@v66@@ ) ) break ; if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v45 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v45 << @@v73@@ ; @@v73@@ += Number ; } @@v74@@ >>= SBYTE1 ( @@v65@@ ) ; @@v73@@ -= BYTE1 ( @@v65@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += BYTE1 ( @@v65@@ ) ; } @@v74@@ >>= SBYTE1 ( @@v66@@ ) ; @@v73@@ -= BYTE1 ( @@v66@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += BYTE1 ( @@v66@@ ) ; if ( ( @@v66@@ & Number ) != Number ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } * ( _DWORD * ) ( @@v68@@ + Number ) = HIWORD ( @@v66@@ ) ; * ( _DWORD * ) ( @@v68@@ + Number ) = @@v66@@ & Number ; * ( _DWORD * ) @@v68@@ = Number ; LABEL_269 : if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) { while ( @@v73@@ < * ( _DWORD * ) ( @@v68@@ + Number ) ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v46 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v46 << @@v73@@ ; @@v73@@ += Number ; } * ( _DWORD * ) ( @@v68@@ + Number ) += @@v74@@ & ~ ( Number << * ( _DWORD * ) ( @@v68@@ + Number ) ) ; @@v74@@ >>= * ( _DWORD * ) ( @@v68@@ + Number ) ; @@v73@@ -= * ( _DWORD * ) ( @@v68@@ + Number ) ; * ( _DWORD * ) ( @@v68@@ + Number ) += * ( _DWORD * ) ( @@v68@@ + Number ) ; } * ( _DWORD * ) @@v68@@ = Number ; LABEL_276 : if ( ! @@v75@@ ) goto LABEL_329 ; LODWORD ( @@n@@ ) = HIDWORD ( @@n@@ ) - @@v75@@ ; if ( HIDWORD ( @@n@@ ) - @@v75@@ >= * ( _DWORD * ) ( @@v68@@ + Number ) ) { @@v71@@ = ( char * ) @@dest@@ - * ( unsigned int * ) ( @@v68@@ + Number ) ; LODWORD ( @@n@@ ) = * ( _DWORD * ) ( @@v68@@ + Number ) ; } else { LODWORD ( @@n@@ ) = * ( _DWORD * ) ( @@v68@@ + Number ) - @@n@@ ; if ( ( unsigned int ) @@n@@ > * ( _DWORD * ) ( @@v68@@ + Number ) && * ( _DWORD * ) ( @@v68@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; continue ; } if ( ( unsigned int ) @@n@@ <= * ( _DWORD * ) ( @@v68@@ + Number ) ) { v47 = * ( _QWORD * ) ( @@v68@@ + Number ) ; v48 = ( unsigned int ) ( * ( _DWORD * ) ( @@v68@@ + Number ) - @@n@@ ) ; } else { LODWORD ( @@n@@ ) = @@n@@ - * ( _DWORD * ) ( @@v68@@ + Number ) ; v47 = * ( _QWORD * ) ( @@v68@@ + Number ) ; v48 = ( unsigned int ) ( * ( _DWORD * ) ( @@v68@@ + Number ) - @@n@@ ) ; } @@v71@@ = ( _BYTE * ) ( v47 + v48 ) ; if ( ( unsigned int ) @@n@@ > * ( _DWORD * ) ( @@v68@@ + Number ) ) LODWORD ( @@n@@ ) = * ( _DWORD * ) ( @@v68@@ + Number ) ; } if ( ( unsigned int ) @@n@@ > @@v75@@ ) LODWORD ( @@n@@ ) = @@v75@@ ; @@v75@@ -= @@n@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) -= @@n@@ ; do { v49 = @@v71@@ ++ ; v50 = @@dest@@ ; @@dest@@ = ( char * ) @@dest@@ + Number ; * v50 = * v49 ; LODWORD ( @@n@@ ) = @@n@@ - Number ; } while ( ( _DWORD ) @@n@@ ) ; if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) ) * ( _DWORD * ) @@v68@@ = Number ; } else { * ( _QWORD * ) ( @@a1@@ + Number ) = @@dest@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v75@@ ; * ( _QWORD * ) @@a1@@ = @@src@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v76@@ ; * ( _QWORD * ) ( @@v68@@ + Number ) = @@v74@@ ; * ( _DWORD * ) ( @@v68@@ + Number ) = @@v73@@ ; inflate_fast ( @@a1@@ , HIDWORD ( @@n@@ ) ) ; @@dest@@ = * ( void * * ) ( @@a1@@ + Number ) ; @@v75@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@src@@ = * ( void * * ) @@a1@@ ; @@v76@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v74@@ = * ( _QWORD * ) ( @@v68@@ + Number ) ; @@v73@@ = * ( _DWORD * ) ( @@v68@@ + Number ) ; if ( * ( _DWORD * ) @@v68@@ == Number ) * ( _DWORD * ) ( @@v68@@ + Number ) = Number ; } continue ; case Number : goto LABEL_184 ; case Number : goto LABEL_218 ; case Number : goto LABEL_227 ; case Number : goto LABEL_228 ; case Number : goto LABEL_250 ; case Number : goto LABEL_257 ; case Number : goto LABEL_269 ; case Number : goto LABEL_276 ; case Number : if ( ! @@v75@@ ) goto LABEL_329 ; @@v51@@ = * ( _DWORD * ) ( @@v68@@ + Number ) ; v52 = @@dest@@ ; @@dest@@ = ( char * ) @@dest@@ + Number ; * v52 = @@v51@@ ; -- @@v75@@ ; * ( _DWORD * ) @@v68@@ = Number ; continue ; case Number : if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) ) goto LABEL_311 ; while ( Number ) { if ( @@v73@@ <= Number ) { if ( @@v76@@ ) { -- @@v76@@ ; v53 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v53 << @@v73@@ ; @@v73@@ += Number ; continue ; } goto LABEL_329 ; } break ; } HIDWORD ( @@n@@ ) -= @@v75@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) += HIDWORD ( @@n@@ ) ; * ( _QWORD * ) ( @@v68@@ + Number ) += HIDWORD ( @@n@@ ) ; if ( HIDWORD ( @@n@@ ) ) { if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) v54 = crc32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , ( char * ) @@dest@@ - HIDWORD ( @@n@@ ) , HIDWORD ( @@n@@ ) ) ; else v54 = adler32 ( * ( _QWORD * ) ( @@v68@@ + Number ) , ( char * ) @@dest@@ - HIDWORD ( @@n@@ ) , HIDWORD ( @@n@@ ) ) ; * ( _QWORD * ) ( @@v68@@ + Number ) = v54 ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@v68@@ + Number ) ; } HIDWORD ( @@n@@ ) = @@v75@@ ; if ( * ( _DWORD * ) ( @@v68@@ + Number ) ) v55 = @@v74@@ ; else v55 = ( ( ( _DWORD ) @@v74@@ << Number ) & Number ) + ( BYTE3 ( @@v74@@ ) | ( @@v74@@ >> Number ) & Number ) + ( unsigned int ) ( ( _DWORD ) @@v74@@ << Number ) ; if ( v55 == * ( _QWORD * ) ( @@v68@@ + Number ) ) { @@v74@@ = Number L ; @@v73@@ = Number ; LABEL_311 : * ( _DWORD * ) @@v68@@ = Number ; LABEL_312 : if ( ! * ( _DWORD * ) ( @@v68@@ + Number ) || ! * ( _DWORD * ) ( @@v68@@ + Number ) ) goto LABEL_321 ; while ( @@v73@@ <= Number ) { if ( ! @@v76@@ ) goto LABEL_329 ; -- @@v76@@ ; v56 = ( unsigned __int8 * ) @@src@@ ; @@src@@ = ( char * ) @@src@@ + Number ; @@v74@@ += ( unsigned __int64 ) * v56 << @@v73@@ ; @@v73@@ += Number ; } if ( @@v74@@ == ( unsigned int ) * ( _QWORD * ) ( @@v68@@ + Number ) ) { @@v74@@ = Number L ; @@v73@@ = Number ; LABEL_321 : * ( _DWORD * ) @@v68@@ = Number ; LABEL_322 : @@v69@@ = Number ; goto LABEL_329 ; } * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; } else { * ( _QWORD * ) ( @@a1@@ + Number ) = String ; * ( _DWORD * ) @@v68@@ = Number ; } continue ; case Number : goto LABEL_312 ; case Number : goto LABEL_322 ; case Number : @@v69@@ = Number ; goto LABEL_329 ; case Number : return Number L ; default : return Number L ; } } }", "source": [{"n": "v51", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "dest", "t": {"T": 3, "t": "void"}, "location": "s16"}, {"n": "v76", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v75", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s24"}, {"n": "v74", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s32"}, {"n": "v73", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s36"}, {"n": "n", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "s44"}, {"n": "v71", "t": {"T": 3, "t": "_BYTE"}, "location": "s56"}, {"n": "v70", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s60"}, {"n": "v69", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s64"}, {"n": "v68", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s72"}, {"n": "v67", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s76"}, {"n": "src", "t": {"T": 3, "t": "void"}, "location": "s8"}, {"n": "v66", "t": {"T": 1, "n": "int", "s": 4}, "location": "s80"}, {"n": "v65", "t": {"T": 1, "n": "int", "s": 4}, "location": "s84"}, {"n": "v64", "t": {"T": 1, "n": "int", "s": 4}, "location": "s88"}]}