diff --git a/me_cleaner.py b/me_cleaner.py index 95e2c46..36a419e 100755 --- a/me_cleaner.py +++ b/me_cleaner.py @@ -94,6 +94,9 @@ class RegionFile: else: raise OutOfRegionException() + def fill_all(self, fill): + self.fill_range(0, self.region_end - self.region_start, fill) + def move_range(self, offset_from, size, offset_to, fill): if self.region_start + offset_from + size <= self.region_end and \ self.region_start + offset_to + size <= self.region_end: @@ -665,8 +668,22 @@ if __name__ == "__main__": if me_start > 0: fdf = RegionFile(f, fd_start, fd_end + 1) + # ME 6 Ignition: wipe everything + me6_ignition = False + if not args.check and not args.soft_disable_only and \ + variant == "ME" and version[0] == 6: + mef.seek(ftpr_offset + 0x20) + num_modules = unpack("