I would need to know exactly how their game operates right now and then optimize it accordingly, but I highly doubt they want to give me their source code.
The pathing is definitely extremely basic. I doubt they use any built in functions for pathing since it clearly is 'find angle to player, x+=angle*speed, y+=angle*speed' completely ignoring that any possible obstacles are in the way.
If I were going about it, and this is from a GML perspective, I'd have a grid on the ''ground'' plane (Unity 3d is certainly different from GMS 2d I'm sure) that just marks if anything that can collide is over that tile.
Every second or so (staggered by individual enemy timer) any aggro'd enemy on screen can do a quick path check against the grid to find a way to the player if they're in a range and update themselves, then follow that path or just move linearly to the next 'point'.
Though, Unity has meshes doesn't it? I admittedly don't know how its pathing meshes work.