Office Action Predictor
Last updated: April 17, 2026
Application No. 18/900,317

SEMI-SUPERVISED MALWARE CLASSIFICATION USING REPRESENTATION-AGNOSTIC TRANSFORMER MODELS

Non-Final OA §103
Filed
Sep 27, 2024
Examiner
LONG, EDWARD X
Art Unit
2439
Tech Center
2400 — Computer Networks
Assignee
crowdstrike Inc.
OA Round
1 (Non-Final)
73%
Grant Probability
Favorable
1-2
OA Rounds
2y 11m
To Grant
99%
With Interview

Examiner Intelligence

Grants 73% — above average
73%
Career Allow Rate
134 granted / 184 resolved
+14.8% vs TC avg
Strong +48% interview lift
Without
With
+47.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 11m
Avg Prosecution
20 currently pending
Career history
204
Total Applications
across all art units

Statute-Specific Performance

§101
14.5%
-25.5% vs TC avg
§103
68.4%
+28.4% vs TC avg
§102
4.8%
-35.2% vs TC avg
§112
5.5%
-34.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 184 resolved cases

Office Action

§103
DETAILED ACTION This Office Action is in response to the application 18/900,317 filed on 09/27/2024. Claims 1-20 have been examined and are pending. Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . This Action is made Non-FINAL. Priority This application claims priority to U.S. Provisional application No. 63/659,968, filed June 14, 2024. Information Disclosure Statement The information disclosure statements (IDS) submitted on 09/27/2024 is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements have been considered by the examiner. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically discloses as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1-4, 6-7, 8-11, 13-14, 15-17, 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Krisiloff et al. (“Krisiloff,” US 20250131092, filed Oct. 19, 2023) in view of Ganesan et al. (“Ganesan,” US 20230198855, published June. 22, 2023). Regarding claim 1, Krisiloff discloses A method comprising: obtaining a corpus of files collected by an endpoint protection system (Krisiloff [0036], [0055]. Examples of computer files that can be analyzed include, but are not limited to, Windows PE (Portable Executable) files, ELF (Executable and Linkable Format) files, PDFs (Portable Document Format), text files, image files such as JPEGs and PNGs, and various script and source code files like JavaScript and Python files. In some implementations, the file parser 216 can employ machine learning techniques to parse the computer file 250. In this scenario, a machine learning model can be trained on a set of labeled data, where each data point is a computer file and the labels correspond to the correct parsing of these files. The trained model can then be used to parse new, unseen computer files 250. This approach can be particularly advantageous when dealing with unfamiliar or custom file formats, as the model can learn to recognize and handle these formats without the need for explicit rules.); selecting a subset of the corpus of files comprising labeled files, wherein the subset of the corpus is representative of the corpus of files (Krisiloff [0055], [0078]. In some implementations, the file parser 216 can employ machine learning techniques to parse the computer file 250. In this scenario, a machine learning model can be trained on a set of labeled data, where each data point is a computer file and the labels correspond to the correct parsing of these files. The trained model can then be used to parse new, unseen computer files 250. This approach can be particularly advantageous when dealing with unfamiliar or custom file formats, as the model can learn to recognize and handle these formats without the need for explicit rules. This feature embedding encapsulates the collective information represented by the intermediate feature embeddings 356 a and 356 b. It can thus provide a comprehensive and holistic representation of the file portion 252 n, considering all its sub-portions and their relationships.); training a first artificial intelligence (AI) model, using the subset of the corpus of files in byte form, to infer labels for unlabeled data (Krisiloff FIG. 4, [0058], [0080]-[0082]. As one example, the CNN can apply one or more one-dimensional filters that have a filter size that corresponds to a byte of binary data. A CNN can automatically learn hierarchical feature representations from the raw data, where lower-level features are learned in the early layers of the network, and higher-level, more abstract features are learned in the later layers. FIG. 4 depicts a block diagram of an example data flow for training malware detection models according to example implementations of the present disclosure. For example, the approach shown in FIG. 4 can be performed to train the models before they are deployed as shown in FIGS. 2 and/or 3. In FIG. 4, the malware detection system 414 is depicted obtaining a training example 402. This training example 402 can include a computer file 450 that has been pre-labelled with a ground truth label 404. As one example, the ground truth label 404 can be a binary label that indicates that the computer file 450 is either malicious or benign. The training example 402 could be sourced from various locations such as, but not limited to, a local computer, a network server, a cloud-based storage system, or a predefined database of training examples. This training example can come in a variety of file formats including, but not limited to .exe, .dll, .sys, .drv, .scr, .ocx, .cpl, .tsp, .ax, .rs, .ovl, .efi, and .fon.); applying the first AI model to unlabeled files of the corpus of files in byte form to generate labels for the unlabeled files (Krisiloff FIG. 5, [0055], [0058], [0099]. In some implementations, the file parser 216 can employ machine learning techniques to parse the computer file 250. In this scenario, a machine learning model can be trained on a set of labeled data, where each data point is a computer file and the labels correspond to the correct parsing of these files. The trained model can then be used to parse new, unseen computer files 250. As one example, the CNN can apply one or more one-dimensional filters that have a filter size that corresponds to a byte of binary data. A CNN can automatically learn hierarchical feature representations from the raw data, where lower-level features are learned in the early layers of the network, and higher-level, more abstract features are learned in the later layers. Step 508 in the process has the computing system processing these feature embeddings using a machine-learned prediction model to generate a model prediction for the entire computer file. The prediction model can be a binary classifier capable of discerning between malware and benign files, or a multi-class classifier capable of identifying specific types of malware. The model prediction provides an indication of whether the computer file has been classified as malware or not, based on the analysis of its individual portions.); performing, by a processing device, supervised training of a second AI model using the corpus of files [and the labels generated for the unlabeled data] (Krisiloff [0098]. The next step in the process, step 506, involves the computing system processing each of these file portions using one or more machine-learned feature extractor models. These models can be trained using supervised, unsupervised, or semi-supervised machine learning techniques on large datasets of benign and malicious files. The models extract key features from the file portions, which can include attributes such as file size, entropy, function calls, or byte sequences, among others. This processing results in a corresponding set of feature embeddings for each file portion, essentially transforming the raw file data into a format that can be efficiently processed by subsequent predictive models.); and deploying the second AI model to the endpoint protection system (Krisiloff [0099]. Step 508 in the process has the computing system processing these feature embeddings using a machine-learned prediction model to generate a model prediction for the entire computer file. The prediction model can be a binary classifier capable of discerning between malware and benign files, or a multi-class classifier capable of identifying specific types of malware. This model can be trained using various machine learning techniques, such as decision trees, neural networks, or support vector machines, among others. The model prediction provides an indication of whether the computer file has been classified as malware or not, based on the analysis of its individual portions.). Krisiloff does not explicitly disclose: performing, by a processing device, supervised training of a second AI model using the corpus of files and the labels generated for the unlabeled data. However, in an analogous art, Ganesan discloses a method, comprising the step of: performing, by a processing device, supervised training of a second AI model using the corpus of files and the labels generated for the unlabeled data (Ganesan [0050], [0074]. In some implementations, the training of the ML model includes semi-supervised training using both the unlabeled data and the labeled data. The semi-supervised training may use algorithms such as using generative models, low-density separation, or classification algorithms using a graph representation of data. The semi-supervised training may be further performed using metadata from the terminals 130 associated with the client devices 134 a-134 c. Data collected from real consumer VSATs 130, 130′ is considered unlabeled data because the system 200 would not know the correct labels or ground truth of what type of application or transfer is running (e.g., for traffic classification) or what the user is actually experiencing (e.g., for QoE estimation). However, this unlabeled data can be combined with labeled data from controlled experiments, thereby increasing the utility of both the unlabeled and labeled data sets. This can be achieved using a host of supervised and semi-supervised machine learning techniques.). Therefore, it would have been obvious to one of ordinary skill in the art on or before the effective filing date of the claimed invention to combine the teachings of Ganesan and Krisloff to include the step of: performing, by a processing device, supervised training of a second AI model using the corpus of files and the labels generated for the unlabeled data. One would have been motivated to generate machine learning/AI models using both labelled and un-labelled data. (See Ganesan [0074].) Regarding claim 2, Krisiloff and Ganesan disclose the method of claim 1. Krisiloff further discloses wherein the corpus of files is associated with at least one of a file type or event type (Krisiloff [0078], [0082]. The output of the feature aggregation model 358 is the feature embedding 254 n for the file portion 252 n. This feature embedding encapsulates the collective information represented by the intermediate feature embeddings 356 a and 356 b. It can thus provide a comprehensive and holistic representation of the file portion 252 n, considering all its sub-portions and their relationships. The training example 402 could be sourced from various locations such as, but not limited to, a local computer, a network server, a cloud-based storage system, or a predefined database of training examples. This training example can come in a variety of file formats including, but not limited to .exe, .dll, .sys, .drv, .scr, .ocx, .cpl, .tsp, .ax, .rs, .ovl, .efi, and .fon.). Regarding claim 3, Krisiloff and Ganesan disclose the method of claim 1. Krisiloff further discloses wherein selecting the subset of the corpus of files comprises: identifying a plurality of files in the corpus of files that are labeled; and selecting the subset of the corpus of files, from the identified plurality files that are labeled, to represent characteristics of the corpus of files (Krisiloff [0081]-[0082]. In FIG. 4 , the malware detection system 414 is depicted obtaining a training example 402. This training example 402 can include a computer file 450 that has been pre-labelled with a ground truth label 404. As one example, the ground truth label 404 can be a binary label that indicates that the computer file 450 is either malicious or benign. The training example 402 could be sourced from various locations such as, but not limited to, a local computer, a network server, a cloud-based storage system, or a predefined database of training examples. This training example can come in a variety of file formats including, but not limited to .exe, .dll, .sys, .drv, .scr, .ocx, .cpl, .tsp, .ax, .rs, .ovl, .efi, and .fon.). Regarding claim 4, Krisiloff and Ganesan disclose the method of claim 3. Ganesan further discloses wherein selecting the subset of the corpus of files further comprises: determining that the plurality of files in the corpus that are labeled is insufficient to train the first AI model; and labeling additional files in the corpus of files to produce a sufficient subset of the corpus of files that are labeled (Ganesan [0050]-[0051]. In some implementations, the training of the ML model includes semi-supervised training using both the unlabeled data and the labeled data. The semi-supervised training may use algorithms such as using generative models, low-density separation, or classification algorithms using a graph representation of data. The semi-supervised training may be further performed using metadata from the terminals 130 associated with the client devices 134 a-134 c. In some implementations, the server 160 may update the ML model when it determines that an update is needed. For example, the server 160 may receive, in the log data 134, 134′ accompanying each example of network traffic conditions, outputs that ML model 132 generated at the terminals 130 and 130′. The server 160 can compare the ML model outputs actually generated for an example with the labels applied to the example in processing the log data 134. Based on the comparisons, the server 160 can determine when a level of accuracy falls below a threshold (e.g., the rate of errors for examples received in a time period exceeds a threshold) and as a result determine to update the ML model as a result. Once the server 160 determines that an update to the ML model 132 is needed or an aspect of the ML model 132 is to be updated, the server 160 may update the ML model parameters based on most recent received examples.). The motivation is the same as that of claim 3 above. Regarding claim 6, Krisiloff and Ganesan disclose the method of claim 1. Krisiloff further discloses wherein applying the first AI model to unlabeled files of the corpus of files to generate labels for the unlabeled files comprises: for each file in the unlabeled files of the corpus of files: generating, by the first AI model, a decision variable for the file based on the file in byte form (Krisiloff [0063], [0098]. In this scenario, the prediction model 220 can be configured to specifically identify whether the computer file is benign or malicious. The model prediction 456 can be a binary value, for instance, ‘0’ or ‘l’, where ‘O’ may represent a benign file and ‘l’ may represent a malicious file. Alternatively, the prediction model 220 can output a probability score between 0 and 1 that indicates the likelihood of the computer file being malicious. If the score surpasses a specified threshold, the file can be classified as malware. These models can be trained using supervised, unsupervised, or semi-supervised machine learning techniques on large datasets of benign and malicious files.); determining whether the decision variable satisfies a label generation threshold (Krisiloff [0063], [0099]. In this scenario, the prediction model 220 can be configured to specifically identify whether the computer file is benign or malicious. The model prediction 456 can be a binary value, for instance, ‘0’ or ‘l’, where ‘O’ may represent a benign file and ‘l’ may represent a malicious file. Alternatively, the prediction model 220 can output a probability score between 0 and 1 that indicates the likelihood of the computer file being malicious. If the score surpasses a specified threshold, the file can be classified as malware. Step 508 in the process has the computing system processing these feature embeddings using a machine-learned prediction model to generate a model prediction for the entire computer file. The prediction model can be a binary classifier capable of discerning between malware and benign files, or a multi-class classifier capable of identifying specific types of malware. The model prediction provides an indication of whether the computer file has been classified as malware or not, based on the analysis of its individual portions.); and in response to the decision variable satisfying the label generation threshold, generating a first label for the file based on the decision variable (Krisiloff [0099]-[0100]. Step 508 in the process has the computing system processing these feature embeddings using a machine-learned prediction model to generate a model prediction for the entire computer file. The prediction model can be a binary classifier capable of discerning between malware and benign files, or a multi-class classifier capable of identifying specific types of malware. The model prediction provides an indication of whether the computer file has been classified as malware or not, based on the analysis of its individual portions. Finally, if the model prediction determines that the computer file contains malware, as shown in step 510, the computing system will respond in step 512. This response can include a variety of actions. For instance, it can generate an alert to inform a user or a system administrator about the detection of malware.). Regarding claim 7, Krisiloff and Ganesan disclose the method of claim 6. Krisiloff further discloses for each file in the unlabeled files of the corpus of files: generating an embedding based on the file, wherein the embedding comprises a plurality of data points for the file; applying a third AI model to the embedding to generate a second label for the file (Krisiloff [0042], [0046]. Following the parsing operation, the file portions can be processed by one or more feature extractor models 18. The feature extractor models 18 can generate feature embeddings, which are numerical representations of the features identified. The feature embeddings can encapsulate the essential characteristics or properties of the file portions in a format that can be effectively processed by machine learning algorithms. Referring still to FIG. 1 , once the feature embeddings are generated, they can be processed by one or more prediction models 20. The prediction models 20 are machine-learned models that use the feature embeddings to generate a prediction for the computer file.); and in response to determining that the decision variable generated by the first AI model does not satisfy the label generation threshold, assigning the second label to the file (Krisiloff [0063]. In this scenario, the prediction model 220 can be configured to specifically identify whether the computer file is benign or malicious. The model prediction 456 can be a binary value, for instance, ‘0’ or ‘l’, where ‘O’ may represent a benign file and ‘l’ may represent a malicious file. Alternatively, the prediction model 220 can output a probability score between 0 and 1 that indicates the likelihood of the computer file being malicious. If the score surpasses a specified threshold, the file can be classified as malware.). Regarding claim 8, claim 8 is directed to a system corresponding to the method of claim 1. Claim 8 is similar to claim 1 and is therefore rejected under similar rationale. Regarding claim 9, claim 9 is directed to a system corresponding to the method of claim 2. Claim 9 is similar to claim 2 and is therefore rejected under similar rationale. Regarding claim 10, claim 10 is directed to a system corresponding to the method of claim 3. Claim 10 is similar to claim 3 and is therefore rejected under similar rationale. Regarding claim 11, claim 11 is directed to a system corresponding to the method of claim 4. Claim 11 is similar to claim 4 and is therefore rejected under similar rationale. Regarding claim 13, claim 13 is directed to a system corresponding to the method of claim 6. Claim 13 is similar to claim 6 and is therefore rejected under similar rationale. Regarding claim 14, claim 14 is directed to a system corresponding to the method of claim 7. Claim 14 is similar to claim 7 and is therefore rejected under similar rationale. Regarding claim 15, claim 15 is directed to a non-transitory computer readable medium corresponding to the method of claim 1. Claim 15 is similar to claim 1 and is therefore rejected under similar rationale. Regarding claim 15, claim 15 is directed to a non-transitory computer readable medium corresponding to the method of claim 1. Claim 15 is similar to claim 1 and is therefore rejected under similar rationale. Regarding claim 16, claim 16 is directed to a non-transitory computer readable medium corresponding to the method of claim 3. Claim 16 is similar to claim 3 and is therefore rejected under similar rationale. Regarding claim 17, claim 17 is directed to a non-transitory computer readable medium corresponding to the method of claim 4. Claim 17 is similar to claim 4 and is therefore rejected under similar rationale. Regarding claim 19, claim 19 is directed to a non-transitory computer readable medium corresponding to the method of claim 6. Claim 19 is similar to claim 6 and is therefore rejected under similar rationale. Regarding claim 20, claim 20 is directed to a non-transitory computer readable medium corresponding to the method of claim 7. Claim 20 is similar to claim 7 and is therefore rejected under similar rationale. Claims 5, 12, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Krisiloff et al. (“Krisiloff,” US 20250131092, filed Oct. 19, 2023) in view of Ganesan et al. (“Ganesan,” US 20230198855, published June. 22, 2023) and Sternfeld (“Sternfeld,” US 20230023584, published Jan 26, 2023). Regarding claim 5, Krisiloff and Ganesan disclose the method of claim 4. Krisiloff further discloses wherein training the first AI model further comprises: [randomly] sampling byte segments of each file of the subset of the corpus of files in byte form; and inputting the byte segments of each file of the subset of the corpus of files as training data for the first AI model (Krisiloff FIG. 4, [0058], [0080]-[0082]. As one example, the CNN can apply one or more one-dimensional filters that have a filter size that corresponds to a byte of binary data. A CNN can automatically learn hierarchical feature representations from the raw data, where lower-level features are learned in the early layers of the network, and higher-level, more abstract features are learned in the later layers. FIG. 4 depicts a block diagram of an example data flow for training malware detection models according to example implementations of the present disclosure. For example, the approach shown in FIG. 4 can be performed to train the models before they are deployed as shown in FIGS. 2 and/or 3. In FIG. 4, the malware detection system 414 is depicted obtaining a training example 402. This training example 402 can include a computer file 450 that has been pre-labelled with a ground truth label 404. As one example, the ground truth label 404 can be a binary label that indicates that the computer file 450 is either malicious or benign. The training example 402 could be sourced from various locations such as, but not limited to, a local computer, a network server, a cloud-based storage system, or a predefined database of training examples. This training example can come in a variety of file formats including, but not limited to .exe, .dll, .sys, .drv, .scr, .ocx, .cpl, .tsp, .ax, .rs, .ovl, .efi, and .fon.). Krisiloff and Ganesan do not explicitly disclose: randomly sampling byte segments of each file of the subset of the corpus of files in byte form. However, in an analogous art, Sternfeld discloses a method comprising the step of: randomly sampling byte segments of each file of the subset of the corpus of files in byte form (Sternfeld [0033], [0043]. In some embodiments, a sampling of bytes can be taken from other locations in the file, in which case the location may be predetermined or randomly determined. This can be performed to speed-up calculations and to improve encryption detection when comparing smaller, similar-sized chunks. In some embodiments, a machine learning algorithm can be applied to a labeled set of ransomware samples to define a set of ransomware-like behavior. Examples of machine learning algorithms can include deep learning, feature extraction, a hidden Markov model (HMM), linear regression, etc.). Therefore, it would have been obvious to one of ordinary skill in the art on or before the effective filing date of the claimed invention to combine the teachings of Sternfeld, Ganesan and Krisloff to include the step of: randomly sampling byte segments of each file of the subset of the corpus of files in byte form. One would have been motivated to speed up detection of ransomware and to continuously train machine-learning models for detecting ransomware attacks. (See Sternfeld [0043].) Regarding claim 12, claim 12 is directed to a system corresponding to the method of claim 5. Claim 12 is similar to claim 5 and is therefore rejected under similar rationale. Regarding claim 18, claim 18 is directed to a non-transitory computer readable medium corresponding to the method of claim 5. Claim 18 is similar to claim 5 and is therefore rejected under similar rationale. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to EDWARD LONG whose telephone number is (571)272-8961. The examiner can normally be reached on Monday to Friday, 9 AM - 6 PM EST (Alternate Fridays). If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Luu Pham can be reached on (571) 270-5002. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /EDWARD LONG/ Examiner, Art Unit 2439 /LUU T PHAM/ Supervisory Patent Examiner, Art Unit 2439
Read full office action

Prosecution Timeline

Sep 27, 2024
Application Filed
Dec 17, 2025
Non-Final Rejection — §103
Feb 19, 2026
Applicant Interview (Telephonic)
Feb 27, 2026
Examiner Interview Summary
Mar 30, 2026
Response Filed

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12603775
DATA INTERACTION
2y 5m to grant Granted Apr 14, 2026
Patent 12598090
INFORMATION PROCESSING SYSTEM
2y 5m to grant Granted Apr 07, 2026
Patent 12587387
PROTECTING WEBCAM VIDEO FEEDS FROM VISUAL MODIFICATIONS
2y 5m to grant Granted Mar 24, 2026
Patent 12567981
SYSTEMS AND METHODS FOR DATA AUTHENTICATION USING COMPOSITE KEYS AND SIGNATURES
2y 5m to grant Granted Mar 03, 2026
Patent 12563091
SYSTEM AND METHOD FOR DETECTING PATTERNS IN STRUCTURED FIELDS OF NETWORK TRAFFIC PACKETS
2y 5m to grant Granted Feb 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
73%
Grant Probability
99%
With Interview (+47.9%)
2y 11m
Median Time to Grant
Low
PTA Risk
Based on 184 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in for Full Analysis

Enter your email to receive a magic link. No password needed.

Free tier: 3 strategy analyses per month