def _raw_read(self, where: int, size=<NUM_LIT:1>) -> bytes:
map = self.memory.map_containing(where)<EOL>start = map._get_offset(where)<EOL>mapType = type(map)<EOL>if mapType is FileMap:<EOL><INDENT>end = map._get_offset(where + size)<EOL>if end > map._mapped_size:<EOL><INDENT>logger.warning(f"<STR_LIT>")<EOL><DEDENT>raw_data = map._data[map._get_offset(where): min(end, map._mapped_size)]<EOL>if len(raw_data) < end:<EOL><INDENT>raw_data += b'<STR_LIT:\x00>' * (end - len(raw_data))<EOL><DEDENT>data = b'<STR_LIT>'<EOL>for offset in sorted(map._overlay.keys()):<EOL><INDENT>data += raw_data[len(data):offset]<EOL>data += map._overlay[offset]<EOL><DEDENT>data += raw_data[len(data):]<EOL><DEDENT>elif mapType is AnonMap:<EOL><INDENT>data = bytes(map._data[start:start + size])<EOL><DEDENT>else:<EOL><INDENT>data = b'<STR_LIT>'.join(self.memory[where:where + size])<EOL><DEDENT>assert len(data) == size, '<STR_LIT>'<EOL>return data<EOL>
Selects bytes from memory. Attempts to do so faster than via read_bytes.

:param where: address to read from
:param size: number of bytes to read
:return: the bytes in memory