scope:project gives visibility over the entire binary under analysis.
This scope is used to write rules that are not tied to a specific function, but rather to the entire binary.
It is also useful when debugging symbols are not present, enabling searches for specific code and data patterns in stripped binaries.
The scope:project expects in its with argument a check function that takes a ProjectHandle as its parameter.
The ProjectHandle provides access to various project-level capabilities, such as enumerating recovered functions, searching for byte or string patterns, and decompiling functions by name or address.