Easy Anti-Cheat for single-player games (mostly Ubisoft's) comes with nothing but initializing a game client (
CreateGameClient) + some additional functions, after which its driver is started-up. Considering these games don't have any online sync (in order for this sync to happen, the usual, hassle-free implementation done via SDK is to ship a library called
eac_server.dll) it's pointless to talk about banning or any related crap.
Tom Clancy's Ghost Recon: Wildlands and
Far Cry 5 with or without EAC active function in the same way.
Watch Dogs 2 comes with the DLL I mentioned earlier and what happens there: with EAC on, past Ubisoft's login, EAC will auth you as well; with EAC off: a) if you don't specify the -eac_launcer parameter, game crashes; b) if you specify that parameter, game skips EAC init, but will tell you in-game that all online features are off.
To bypass EAC for SP games you can do 2 things: 1) hook the DLL initialization and change the pointer to default CreateGameClient function to yours; 2) create your own DLL which exports the mentioned function and hijack the vtable pointing to other EAC functions so that they return TRUE; then replace the original DLL with yours. EAC will never complain, nor any integrity checks occur - it's never initialized;
-eac_launcher parameter may be required at times (to skip Steam file integrity checks).
The current bypass works for Wildlands and Far Cry 5 (works with Watch Dogs 2 too, but there's the server sync; so you can't play).
One bypass to rule them all
BR,
Sun
P.S.1: The analysis above couldn't have happened without
CPY's incentive.
P.S.2: Yeah, I'm around.