As you know, using machine learning we can detect malware.
We can use dynamic analysis based on WinAPI function calls and their arguments.
But what about static analysis using machine learning? In this case, we can parse Portable Executable and extract imported API call functions by program, and use this calls as features for model. But in this case, we can`t get arguments of the calling functions from Portable Executable. Such technique, i think, worse than dynamic analysis.
Is that means that the static analysis results is always worse than dynamic analysis results? Or there any other good technique exists for improve model prediction results in static analysis case?