Skip to content

Improve Stack String Detection With Improved Alias Analysis #7345

@bpotchik

Description

@bpotchik

Version and Platform (required):

  • Version 8218 and earlier
  • All platforms

Bug Description:
Stack string construction is suboptimal when interleaved with existing function calls.

14  var_30 = 0x61
  15  var_20 = 0x61
  16  var_29 = 0x61
  17  j_sub_func1(&data_section1)
  18  __builtin_strncpy(dest: &var_2f, src: "stringpart1", count: 6)
  19  __builtin_strncpy(dest: &var_28, src: "stringpart2", count: 8)
  20  var_118 = 0x26
  21  if (false) then 22 else 24
  22  j_sub_func2()
  23  noreturn
{ Does not return }
  24  goto 25
  25  __builtin_strncpy(dest: &var_34, src: "stringpart3", count: 4)
  26  __builtin_strncpy(dest: &var_1f, src: "stringpart4", count: 0x12)

For an example. See 0x10025657 in north wave strikes masterfully

Metadata

Metadata

Assignees

Labels

Core: MLILIssue involves Medium Level ILEffort: LowIssues require < 1 week of workImpact: MediumIssue is impactful with a bad, or no, workaround

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions