1. A method for storing operating system files, application binary files, and configuration data files at a pre-operating system boot stage of a client comprising: transmitting a client script from a server to the client in response to a reboot of the client, the client script defining a pre-boot process that is executed at the pre-operating system boot stage of the client and performs on the client the operations of: in response to an initial configuration of the client device, initiating a timer that runs for a set time period selected to allow an operating system of the client to execute one or more hardware and software configuration routines for the client; rebooting the client device after expiration of the set time period; detecting changes from the initial configuration resulting from the execution of the hardware and software configuration routines on the client; and comparing a reference collection of files stored on a server against the operating system files, the application binary files, and the configuration data files of the client during each subsequent reboot cycle of the client, wherein the reference collection of files comprises an entire operating system, one or more application binary files, and one or more configuration data files; generating a second reference collection of files based on the detected changes and the comparison, the second reference collection of files comprising one or more of the operating system files, the application binary files, and the configuration files stored on the client that do not match the reference collection of files, and wherein the second reference collection of files corresponds to the actual dynamic uses of the client; storing the second reference collection of files on the server, whereby the second reference collection of files is configured to be used in a subsequent pre-operating boot stage of the client; and provide the client access to the reference collection of files and the second reference collection of files during a subsequent pre-operating boot stage for a repair of the client to usable state that corresponds to the actual dynamic uses of the client corresponding to the second reference collection of files.