{"name": "get_global_addr", "code": "__int64 __fastcall get_global_addr ( _QWORD * @@a1@@ ) { __int64 @@v1@@ ; int @@i@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { if ( byte_422C58 [ Number * @@i@@ ] && ( ! byte_422C58 [ Number * @@i@@ + Number ] || byte_422C58 [ Number * @@i@@ + Number ] == Number ) && ( byte_422C58 [ Number * @@i@@ + Number ] != Number || byte_422C58 [ Number * @@i@@ + Number ] != Number ) ) { @@v1@@ = * ( _QWORD * ) & byte_422C58 [ Number * @@i@@ + Number ] ; * @@a1@@ = * ( _QWORD * ) & byte_422C58 [ Number * @@i@@ + Number ] ; @@a1@@ [ Number ] = @@v1@@ ; return Number L ; } } return Number L ; }", "source": [{"n": "v1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]}
{"name": "dao_output", "code": "__int64 __fastcall dao_output ( __int64 @@a1@@ , char @@a2@@ ) { __int64 result ; int v3 ; int v4 ; _QWORD * v5 ; __int64 @@v6@@ ; int v7 ; int v8 ; int v9 ; int v10 ; int v11 ; int v12 ; int v13 ; int v14 ; int v15 ; int v16 ; int v17 ; int v18 ; int v19 ; int v20 ; _QWORD @@src@@ [ Number ] ; unsigned __int8 @@v22@@ ; int @@v23@@ ; _BYTE * @@v24@@ ; __int64 @@v25@@ ; _QWORD * @@v26@@ ; result = get_global_addr ( @@src@@ ) ; if ( ( _DWORD ) result ) { @@v26@@ = * ( _QWORD * * ) ( @@a1@@ + Number ) ; @@v25@@ = @@v26@@ [ Number ] ; @@v24@@ = ( _BYTE * ) ( ( unsigned __int8 ) uip_ext_len + Number + Number L ) ; ++ dao_sequence ; @@v23@@ = Number ; * @@v24@@ = * ( _BYTE * ) ( @@v25@@ + Number ) ; @@v24@@ [ @@v23@@ ] = Number ; @@v24@@ [ @@v23@@ ++ ] |= Number ; v3 = @@v23@@ ++ ; @@v24@@ [ v3 ] = Number ; v4 = @@v23@@ ++ ; @@v24@@ [ v4 ] = dao_sequence ; v5 = & @@v24@@ [ @@v23@@ ] ; @@v6@@ = @@v26@@ [ Number ] ; * v5 = * @@v26@@ ; v5 [ Number ] = @@v6@@ ; @@v23@@ += Number ; @@v22@@ = Number ; v7 = @@v23@@ ++ ; @@v24@@ [ v7 ] = Number ; v8 = @@v22@@ + Number ; if ( v8 < Number ) v8 = @@v22@@ + Number ; v9 = v8 >> Number ; v10 = @@v23@@ ++ ; @@v24@@ [ v10 ] = v9 + Number ; v11 = @@v23@@ ++ ; @@v24@@ [ v11 ] = Number ; v12 = @@v23@@ ++ ; @@v24@@ [ v12 ] = @@v22@@ ; v13 = @@v22@@ + Number ; if ( v13 < Number ) v13 = @@v22@@ + Number ; memcpy ( & @@v24@@ [ @@v23@@ ] , @@src@@ , v13 >> Number ) ; v14 = @@v22@@ + Number ; if ( v14 < Number ) v14 = @@v22@@ + Number ; @@v23@@ += v14 >> Number ; v15 = @@v23@@ ++ ; @@v24@@ [ v15 ] = Number ; v16 = @@v23@@ ++ ; @@v24@@ [ v16 ] = Number ; v17 = @@v23@@ ++ ; @@v24@@ [ v17 ] = Number ; v18 = @@v23@@ ++ ; @@v24@@ [ v18 ] = Number ; v19 = @@v23@@ ++ ; @@v24@@ [ v19 ] = Number ; v20 = @@v23@@ ++ ; @@v24@@ [ v20 ] = @@a2@@ ; result = uip_icmp6_send ( ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number , @@v23@@ ) ; } return result ; }", "source": [{"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "char", "s": 1}, "location": "r64"}, {"n": "v25", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v24", "t": {"T": 3, "t": "_BYTE"}, "location": "s24"}, {"n": "v23", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "v22", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s29"}, {"n": "src", "t": {"T": 2, "n": 2, "s": 8, "t": "_QWORD"}, "location": "s48"}, {"n": "v26", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]}