暴力修改软件运行机制或者分析软件相关算法使免费使用商业软件。称为软件破解。

逆向工程是反汇编程序而分析出软件的源代码。

逆向工程包括

分析恶意软件

分析闭源软件的源代码

分析闭源软件的互操作性

分析编译器产生的代码来验证编译器的性能和正确性(软件注册)