Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed decoding due to max. instruction limit being set too low #123

Open
mr-tz opened this issue Apr 30, 2016 · 1 comment
Open

Failed decoding due to max. instruction limit being set too low #123

mr-tz opened this issue Apr 30, 2016 · 1 comment

Comments

@mr-tz
Copy link
Collaborator

mr-tz commented Apr 30, 2016

Related to #98. For example 4894...ad9a, VA 0x100114A1 decodes no strings with an instruction limit of 2000, but about 200 strings with a limit of 30000.
This sample is decoding a large configuration block containing all those strings.
Options are:

  • increase default instruction limit
    • could short circuit decoding candidate if there are no strings found for n (e.g. 5) invocations
  • add --hardcode-scan option to increase instruction size limit
  • provide limit as command line argument --instruction-max or something similar (not very user-friendly)
@williballenthin
Copy link
Collaborator

increase default instruction limit

im not sure this is the way to go, since some specific sample will always require a higher limit.

could short circuit decoding candidate if there are no strings found for n (e.g. 5) invocations

this is interesting. might lead to subtle bugs on specific samples due to chance, but could improve performance across everything else.

alternatively, if no strings are found with n=5000, could retry with n += 5000 for a few rounds.

provide limit as command line argument --instruction-max or something similar (not very user-friendly)

agree that its not user friendly, but maybe something good to have for testing/advanced users. would not expect average analysts to use this feature

add --hardcode-scan option to increase instruction size limit

i like this idea. hardcore-scan is a term that should make sense to lots of people, even if they don't know how the knobs are being tweaked. it also gives us the chance to perhaps increase the function list size, and make other changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants