If the objects are manifold and has no issues, Blender can perform boolean operations. I would prefer blender over OpenSCAD as OpenSCAD crashes (at least for me) if there are issues with the mesh; over 3DMax because it is free, fast, and smaller to download and works in my choice of operating system.
Import STL files by File, Import, STL. If that option is not enabled: File, User Preferences, Add-ons, search for STL and enable that option.
Simply select the main object with right click, on the right panel find modifiers with wrench icon, click add modifier and select the operation (difference) and the other object. If the result is not satisfying, try Carve in the solver options. If there are problems in the result it is generally because of issues with the STL files. Use a tool fix those issues and try again.
Once you are happy with the result, you can export by selecting your object, going into File, export, STL and select Selected only option so that the negative object will not be merged with the carved result while exporting.