1. A method of verifying software, the method comprising: receiving at least a portion of a software program, the portion of the software program including a software function within a class; generating a proxy class based on the class, the proxy class including a proxy function that includes a call to the software function; and analyzing the proxy function including analyzing the software function based on a proxy condition used by the proxy function, the proxy condition based on the software program and configured to apply conditions to parameters and/or variables in the software function.