A method for altering a functionality of an antivirus application installed on a computer, the method comprising updating, by a hardware processor of the computer, the antivirus application, wherein the antivirus application includes a plurality of functional modules (111, 112) configured to ensure security for the computer; detecting events occurring on the computer after the updating, wherein types of the detected events belong to a predetermined set of detectable events, wherein each type of each detected event belonging to the predetermined set of detectable events is associated with a respective rule; wherein the predetermined set of detectable events comprises at least one of the following: an increase in number of application memory dumps per a predetermined time interval; an increase in number of operating system dumps per a predetermined time interval; an increase of average workload of a processor of the computer above a predetermined limit; an increase in number of reboots of the computer per a predetermined time interval; incorrect working of one or more functional modules of the application; freezing of the antivirus application; and freezing of traffic verification, determining which of the functional modules (111, 112) of the antivirus application caused the detected events; and altering the functional modules (111, 112) based on the rules associated with the types of the detected events, wherein the altering of the functional modules (111, 112) and which functional modules are altered depends on the detected events and on which functional modules (111, 112) caused the detected events, and the altering is performed when a number of detected events per a predetermined time interval exceeds a predetermined threshold, wherein the altering comprises reverting at least one functional module (111, 112) to its state before the update and/or wherein the altering comprises at least one of the following: turning a functional module on; turning a functional module off; removing a functional module; and changing settings of a functional module. an increase in number of application memory dumps per a predetermined time interval; an increase in number of operating system dumps per a predetermined time interval; an increase of average workload of a processor of the computer above a predetermined limit; an increase in number of reboots of the computer per a predetermined time interval; incorrect working of one or more functional modules of the application; freezing of the antivirus application; and freezing of traffic verification, determining which of the functional modules (111, 112) of the antivirus application caused the detected events; and altering the functional modules (111, 112) based on the rules associated with the types of the detected events, wherein the altering of the functional modules (111, 112) and which functional modules are altered depends on the detected events and on which functional modules (111, 112) caused the detected events, and the altering is performed when a number of detected events per a predetermined time interval exceeds a predetermined threshold, wherein the altering comprises reverting at least one functional module (111, 112) to its state before the update and/or wherein the altering comprises at least one of the following: turning a functional module on; turning a functional module off; removing a functional module; and changing settings of a functional module. turning a functional module on; turning a functional module off; removing a functional module; and changing settings of a functional module.