docs: def main_nonexecutable_region_limbos_contain(self, addr, tolerance_before=64, tolerance_after=64):
          """
          Sometimes there exists a pointer that points to a few bytes before the beginning of a section, or a few bytes
          after the beginning of the section. We take care of that here.
  
          :param int addr: The address to check.
          :return: A 2-tuple of (bool, the closest base address)
          :rtype: tuple
          """
  
          closest_region = None
          least_limbo = None
  
          for start, end in self.main_nonexecutable_regions:
              if start - tolerance_before <= addr < start:
                  if least_limbo is None or start - addr < least_limbo:
                      closest_region = (True, start)
                      least_limbo = start - addr
              if end <= addr < end + tolerance_after:
                  if least_limbo is None or addr - end < least_limbo:
                      closest_region = (True, end)
                      least_limbo = addr - end
  
          if closest_region is not None:
              return closest_region
          return False, None