Use given object as "3d selection brush"

I am looking for a solution has being a while on how to select objects that intersect with a given object. Boolean operation is not a solution because it changes the objects topology and is too slow with thousends of objects like in the images attached. Quite sure blender cant do it nativelly so a script to do this would be great but looks like it does not exist so far.
Very hard to do such a script? Thanks.

I found this:
selection tools - Can I select every object in the scene that is touching the active object? - Blender Stack Exchange

But it returns an error in blender 2.9:

"Python: Traceback (most recent call last):
File “C:\Users\rafae\Downloads\intersectActive.blend\Text”, line 109, in poll
AttributeError: ‘bpy_prop_collection’ object has no attribute ‘active’

location: :-1"

This script worked…The problem was just me running the 2.79 script.
But it dont work as I expected:

Now I found this:
:anchor: T50721 BVH overlap() failing to detect intersection due to bmesh rotation not updating until script ends (

Worked way better. But the need to change respective objects names is a pain.
How to make use of the selected and active objects instead?