{"name": "disas_cp14_write", "code": "__int64 __fastcall disas_cp14_write ( __int64 @@a1@@ , _DWORD * @@a2@@ , unsigned int @@a3@@ ) { __int64 @@result@@ ; unsigned int @@v4@@ ; unsigned int @@v5@@ ; unsigned int @@v6@@ ; unsigned int @@v7@@ ; int @@v8@@ ; unsigned int @@v9@@ ; @@v4@@ = HIWORD ( @@a3@@ ) & Number ; @@v5@@ = @@a3@@ & Number ; @@v6@@ = ( @@a3@@ >> Number ) & Number ; @@v7@@ = ( unsigned __int8 ) @@a3@@ >> Number ; @@v8@@ = ( unsigned __int16 ) @@a3@@ >> Number ; if ( ! arm_feature ( @@a1@@ , Number ) ) goto LABEL_14 ; if ( @@v6@@ == Number && ! @@v4@@ && ! @@v5@@ && ! @@v7@@ ) return Number L ; if ( @@v6@@ == Number && @@v4@@ == Number && ! @@v5@@ && ! @@v7@@ ) { if ( ( * ( _DWORD * ) ( @@a1@@ + Number ) & Number ) != Number ) { @@result@@ = Number L ; } else { @@v9@@ = load_reg ( @@a2@@ , @@v8@@ ) ; store_cpu_offset ( @@v9@@ , Number ) ; @@result@@ = Number L ; } } else { LABEL_14 : fprintf ( stderr , String , @@v6@@ , @@v4@@ , @@v5@@ , @@v7@@ ) ; @@result@@ = Number L ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_DWORD"}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v9", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v6", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s24"}, {"n": "v5", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s32"}]}