(self)
return self._main_executable_regions
:return:
def main_executable_regions(self):
        """

        :return:
        """

        if self._main_executable_regions is None:
            self._main_executable_regions = []

            obj = self.project.loader.main_object

            if obj.sections:
                for sec in obj.sections:
                    if sec.is_executable:
                        min_addr = sec.min_addr
                        max_addr = sec.max_addr + 1
                        if max_addr <= min_addr or min_addr == 0:
                            continue
                        self._main_executable_regions.append((min_addr, max_addr))

            else:
                for seg in obj.segments:
                    if seg.is_executable:
                        min_addr = seg.min_addr
                        max_addr = seg.max_addr + 1
                        self._main_executable_regions.append((min_addr, max_addr))

        return self._main_executable_regions
def main_executable_regions ( self ) : if self . _main_executable_regions is None : self . _main_executable_regions = [ ] obj = self . project . loader . main_object if obj . sections : for sec in obj . sections : if sec . is_executable : min_addr = sec . min_addr max_addr = sec . max_addr + 1 if max_addr <= min_addr or min_addr == 0 : continue self . _main_executable_regions . append ( ( min_addr , max_addr ) ) else : for seg in obj . segments : if seg . is_executable : min_addr = seg . min_addr max_addr = seg . max_addr + 1 self . _main_executable_regions . append ( ( min_addr , max_addr ) ) return self . _main_executable_regions