<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def disassemble_capstone(self, target_id=0, address=None, count=None):
 """ Disassemble with capstone. """

        target = self._target(target_id)
        if not address:
            pc_name, address = self.pc()

        mem = self.memory(address, count * 16, target_id=target_id)

        md = capstone.Cs(*self.cs_archs[target['arch']])
        output = []
        for idx, i in enumerate(md.disasm(mem, address)):
            if idx >= count:
                break
            output.append("0x%x:\t%s\t%s" % (i.address, i.mnemonic, i.op_str))

        return '\n'.join(output)