1) Checks the availability of binaries on the system. 2) Builds a list of possible payloads. 3) Performs one at random.