{"name": "_ZN12_GLOBAL__N_127lower_clip_distance_visitor11visit_leaveEP7ir_call", "code": "__int64 __fastcall ` anonymous namespace ' lower_clip_distance_visitor visit_leave ( ir_hierarchical_visitor * @@a1@@ , __int64 @@a2@@ ) { __int64 v4 ; __int64 * @@v5@@ ; __int64 @@v6@@ ; _QWORD * v7 ; __int64 v8 ; __int64 v9 ; _QWORD * v10 ; __int64 * v11 ; __int64 v12 ; ir_assignment * v13 ; ir_assignment * v14 ; ir_assignment * v15 ; _QWORD * v16 ; __int64 v17 ; ir_assignment * v18 ; __int64 v19 ; _QWORD * @@v21@@ ; __int64 * @@v22@@ ; __int64 @@v23@@ ; unsigned int v24 ; ir_assignment * v25 ; ir_assignment * v26 ; ir_assignment * v27 ; ir_assignment * v28 ; __int64 @@v29@@ ; v4 = ralloc_parent ( @@a2@@ ) ; @@v5@@ = * ( __int64 * * ) ( @@a2@@ + Number ) ; @@v6@@ = v4 ; @@v21@@ = * ( _QWORD * * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ; while ( Number ) { @@v22@@ = ( __int64 * ) * @@v5@@ ; if ( ! * @@v5@@ ) return ir_rvalue_base_visitor rvalue_visit ( @@a1@@ , @@a2@@ ) ; v7 = Number L ; if ( @@v21@@ ) v7 = @@v21@@ - Number ; @@v21@@ = ( _QWORD * ) * @@v21@@ ; if ( ` anonymous namespace ' lower_clip_distance_visitor is_clip_distance_vec8 ( ( __int64 ) @@a1@@ , ( __int64 ) ( @@v5@@ - Number ) ) ) { v24 = * ( ( _DWORD * ) @@v5@@ + Number ) ; v8 = ralloc_size ( @@v6@@ , Number L ) ; ir_variable ir_variable ( v8 , @@v5@@ [ Number ] , String , Number L , v24 ) ; v9 = * ( ( _QWORD * ) @@a1@@ + Number ) ; if ( ! v8 ) { unk_0 = v9 + Number ; goto LABEL_18 ; } * ( _QWORD * ) ( v8 + Number ) = v9 + Number ; * ( _QWORD * ) ( v8 + Number ) = * ( _QWORD * ) ( v9 + Number ) ; * * ( _QWORD * * ) ( v9 + Number ) = v8 + Number ; * ( _QWORD * ) ( v9 + Number ) = v8 + Number ; v25 = ( ir_assignment * ) ralloc_size ( @@v6@@ , Number L ) ; ir_dereference_variable ir_dereference_variable ( v25 , v8 ) ; v10 = ( _QWORD * ) @@v5@@ [ Number ] ; if ( ! v25 ) { loc_8 = @@v5@@ [ Number ] ; goto LABEL_18 ; } v11 = ( __int64 * ) * @@v5@@ ; * ( ( _QWORD * ) v25 + Number ) = v10 ; * ( ( _QWORD * ) v25 + Number ) = v11 ; * v10 = ( char * ) v25 + Number ; * ( _QWORD * ) ( * @@v5@@ + Number ) = ( char * ) v25 + Number ; if ( ( * ( ( _BYTE * ) v7 + Number ) & Number ) == Number ) { @@v29@@ = ralloc_size ( @@v6@@ , Number L ) ; ir_dereference_variable ir_dereference_variable ( @@v29@@ , v8 ) ; v26 = ( ir_assignment * ) ( * ( __int64 ( __fastcall * * ) ( __int64 * , __int64 , _QWORD ) ) ( * ( @@v5@@ - Number ) + Number ) ) ( @@v5@@ - Number , @@v6@@ , Number L ) ; v12 = ralloc_size ( @@v6@@ , Number L ) ; v13 = v26 ; v27 = ( ir_assignment * ) v12 ; ir_assignment ir_assignment ( v12 , @@v29@@ , v13 , Number L ) ; v14 = ( ir_assignment * ) * ( ( _QWORD * ) @@a1@@ + Number ) ; v15 = v27 ; v16 = ( _QWORD * ) ( ( char * ) v14 + Number ) ; if ( ! v27 ) goto LABEL_19 ; * ( ( _QWORD * ) v27 + Number ) = v16 ; v28 = v14 ; * ( ( _QWORD * ) v15 + Number ) = * ( ( _QWORD * ) v14 + Number ) ; * * ( ( _QWORD * * ) v14 + Number ) = ( char * ) v15 + Number ; * ( ( _QWORD * ) v14 + Number ) = ( char * ) v15 + Number ; * ( ( _QWORD * ) @@a1@@ + Number ) = v15 ; ir_assignment accept ( v15 , @@a1@@ ) ; * ( ( _QWORD * ) @@a1@@ + Number ) = v28 ; } if ( ( * ( ( _BYTE * ) v7 + Number ) & Number ) == Number ) { @@v23@@ = ( * ( __int64 ( __fastcall * * ) ( __int64 * , __int64 , _QWORD ) ) ( * ( @@v5@@ - Number ) + Number ) ) ( @@v5@@ - Number , @@v6@@ , Number L ) ; v17 = ralloc_size ( @@v6@@ , Number L ) ; ir_dereference_variable ir_dereference_variable ( v17 , v8 ) ; v18 = ( ir_assignment * ) ralloc_size ( @@v6@@ , Number L ) ; ir_assignment ir_assignment ( v18 , @@v23@@ , v17 , Number L ) ; v19 = * ( ( _QWORD * ) @@a1@@ + Number ) ; v16 = * ( _QWORD * * ) ( v19 + Number ) ; if ( ! v18 ) { LABEL_19 : unk_0 = v16 ; LABEL_18 : BUG ( ) ; } * ( ( _QWORD * ) v18 + Number ) = v16 ; * ( ( _QWORD * ) v18 + Number ) = v19 + Number ; v16 [ Number ] = ( char * ) v18 + Number ; * ( _QWORD * ) ( v19 + Number ) = ( char * ) v18 + Number ; * ( ( _QWORD * ) @@a1@@ + Number ) = v18 ; ir_assignment accept ( v18 , @@a1@@ ) ; * ( ( _QWORD * ) @@a1@@ + Number ) = v19 ; } } @@v5@@ = @@v22@@ ; } }", "source": [{"n": "v5", "t": {"T": 3, "t": "__int64"}, "location": "r120"}, {"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r32"}, {"n": "a1", "t": {"T": 3, "t": "ir_hierarchical_visitor"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v29", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s64"}, {"n": "v23", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s80"}, {"n": "v22", "t": {"T": 3, "t": "__int64"}, "location": "s88"}, {"n": "v21", "t": {"T": 3, "t": "_QWORD"}, "location": "s96"}]}