| CPC G06F 21/577 (2013.01) [G06F 9/44589 (2013.01); G06F 21/563 (2013.01); G06F 2221/033 (2013.01)] | 22 Claims |

|
1. A non-transitory processor-readable medium storing code representing instructions to be executed by one or more processors, the instructions comprising code to cause the one or more processors to:
receive a file that includes executable binary code;
receive a machine-readable specification that defines a constraint;
generate a predicate set based on the executable binary code;
identify an argument of a function to be called by the executable binary code, the argument identified based on a map associated with the function;
generate a constrained predicate set based on the predicate set and the machine-readable specification;
determine, using solver software, that the argument satisfies the constraint based on the constrained predicate set; and
generate a signal (1) that indicates that the executable binary code is associated with a predetermined software action in response to determining the argument satisfies the constraint and (2) to prevent the executable binary code from being executed at a target processor that is different from the one or more processors.
|