Imho, best free options are Adanco (as indicated above) and SmartPLS 2.0. The latter is adequatw if you want to run a model with first and/or second order constructs, mediator and/or moderator variables. However, advanced functions such as MGA, or the HTMT to assess discriminant validity are not implemented