1. A computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to: receive and store intellectual property asset protection data, wherein the intellectual property asset protection data includes protection data corresponding to a plurality of intellectual property assets comprising at least one of an issued patent, a registered trademark, and a copyright, wherein the intellectual property asset protection data further includes a plurality of intellectual property asset protection data records corresponding to the plurality of intellectual property assets, wherein each intellectual property asset protection data record includes a plurality of types of information regarding the licensing or sale of the at least one of the plurality of intellectual property assets, wherein the intellectual property asset protection data record includes at least one of a patent number corresponding to the issued patent and a trademark registration number corresponding to the registered trademark; generate a draft contract associated with the licensing or sale of at least one of the plurality of intellectual property assets, the draft contract based at least in part on a template contract; track a series of revisions to the draft contract made during negotiations involving the licensing or sale of at least one of the plurality of intellectual property assets; and associate a final contract with at least one intellectual property asset protection data record corresponding to at least one particular intellectual property asset, the final contract associated with the licensing or sale of the at least one of the plurality of intellectual property assets after the negotiations are completed.