{"name": "DecodeVLD2LN", "code": "__int64 __fastcall DecodeVLD2LN ( __int64 @@a1@@ , unsigned int @@a2@@ ) { unsigned int v3 ; unsigned int v4 ; unsigned int v5 ; unsigned int v6 ; unsigned int v7 ; unsigned int v8 ; unsigned int v9 ; unsigned int @@v10@@ ; unsigned int @@v11@@ ; unsigned int @@v12@@ ; unsigned int @@v13@@ ; unsigned int @@v14@@ ; int @@v15@@ ; unsigned int @@v16@@ ; unsigned int @@v17@@ ; @@v10@@ = Number ; @@v17@@ = Number ; @@v16@@ = Number ; @@v15@@ = Number ; @@v14@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; @@v13@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; @@v12@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; @@v12@@ |= Number * fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; @@v11@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; if ( @@v11@@ == Number ) { if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) return Number L ; @@v16@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) @@v17@@ = Number ; if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) @@v15@@ = Number ; } else { if ( @@v11@@ > Number ) return Number L ; if ( @@v11@@ ) { @@v16@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) @@v17@@ = Number ; if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) @@v15@@ = Number ; } else { @@v16@@ = fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ; if ( ( unsigned int ) fieldFromInstruction_4 ( @@a2@@ , Number , Number ) ) @@v17@@ = Number ; } } v3 = DecodeDPRRegisterClass ( @@a1@@ , @@v12@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v3 ) != Number ) return Number L ; v4 = DecodeDPRRegisterClass ( @@a1@@ , @@v12@@ + @@v15@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v4 ) != Number ) return Number L ; if ( @@v13@@ != Number ) { v5 = DecodeGPRRegisterClass ( @@a1@@ , @@v14@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v5 ) != Number ) return Number L ; } v6 = DecodeGPRRegisterClass ( @@a1@@ , @@v14@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v6 ) != Number ) return Number L ; MCOperand_CreateImm0 ( @@a1@@ , @@v17@@ ) ; if ( @@v13@@ != Number ) { if ( @@v13@@ == Number ) { MCOperand_CreateReg0 ( @@a1@@ , Number L ) ; } else { v7 = DecodeGPRRegisterClass ( @@a1@@ , @@v13@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v7 ) != Number ) return Number L ; } } v8 = DecodeDPRRegisterClass ( @@a1@@ , @@v12@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v8 ) != Number ) return Number L ; v9 = DecodeDPRRegisterClass ( @@a1@@ , @@v12@@ + @@v15@@ ) ; if ( ( unsigned __int8 ) Check ( & @@v10@@ , v9 ) != Number ) return Number L ; MCOperand_CreateImm0 ( @@a1@@ , @@v16@@ ) ; return @@v10@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "v15", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v14", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s16"}, {"n": "v13", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v12", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s24"}, {"n": "v11", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s32"}, {"n": "v17", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v16", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}
{"name": "Check", "code": "__int64 __fastcall Check ( _DWORD * @@a1@@ , unsigned int @@a2@@ ) { if ( @@a2@@ == Number ) return Number L ; if ( @@a2@@ <= Number ) { if ( ! @@a2@@ ) { * @@a1@@ = Number ; return Number L ; } if ( @@a2@@ == Number ) { * @@a1@@ = Number ; return Number L ; } } return Number L ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_DWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}]} {"name": "fieldFromInstruction_4", "code": "__int64 __fastcall fieldFromInstruction_4 ( unsigned int @@a1@@ , char @@a2@@ , int @@a3@@ ) { int @@v4@@ ; if ( @@a3@@ == Number ) @@v4@@ = Number ; else @@v4@@ = ( ( Number << @@a3@@ ) - Number ) << @@a2@@ ; return ( @@v4@@ & @@a1@@ ) >> @@a2@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "char", "s": 1}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]} {"name": "DecodeGPRRegisterClass", "code": "__int64 __fastcall DecodeGPRRegisterClass ( __int64 @@a1@@ , unsigned int @@a2@@ ) { if ( @@a2@@ > Number ) return Number L ; MCOperand_CreateReg0 ( @@a1@@ , ( unsigned __int16 ) GPRDecoderTable [ @@a2@@ ] ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}]} {"name": "DecodeDPRRegisterClass", "code": "__int64 __fastcall DecodeDPRRegisterClass ( __int64 @@a1@@ , unsigned int @@a2@@ ) { if ( @@a2@@ > Number ) return Number L ; MCOperand_CreateReg0 ( @@a1@@ , DPRDecoderTable [ @@a2@@ ] ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}]}