def is_invalid_branch(self):
    "\n        :return boolean: Returns True if the gadget is 'jmp' or 'call' ending and the call target is a constant offset\n                         or does not target a recognized register family. False otherwise\n        "
    last_instr = self.instructions[(len(self.instructions) - 1)]
    if (last_instr.opcode.startswith('call') or last_instr.opcode.startswith('jmp')):
        if (Instruction.get_operand_register_family(last_instr.op1) is None):
            return True
    return False
:return boolean: Returns True if the gadget is 'jmp' or 'call' ending and the call target is a constant offset
                 or does not target a recognized register family. False otherwise
def is_invalid_branch(self):
    "\n        :return boolean: Returns True if the gadget is 'jmp' or 'call' ending and the call target is a constant offset\n                         or does not target a recognized register family. False otherwise\n        "
    last_instr = self.instructions[(len(self.instructions) - 1)]
    if (last_instr.opcode.startswith('call') or last_instr.opcode.startswith('jmp')):
        if (Instruction.get_operand_register_family(last_instr.op1) is None):
            return True
    return False