I have one of the ENC28J60 break out boards - the 12 pin / 5V version (it has a 3.3v voltage regulator on-board). I was able to get it working with an ethernet library on an A-Star 32U4 Mini SV.
1) I am wondering, however, how the library knows what pins to select for SPI. I believe this is the file that defines pins:
I'm assuming that some of the if statements are checking to see if the board being written to matches a specific model, and then sets pins accordingly.
Right now, hooking the ethernet board up to RXL (SS), SCK, MOSI, MISO - which appear to correspond to pins 17, 15, 16, 14 works as expected with their example TCP server. But... it would be nice to know where in that file it actually happens.
2) Finally, the ENC28J60 is a 3.3v chip, and the Mini is 5v. I read online that while it needs to be powered by 3.3v, the SPI connection would be tolerant of 5v. I know you carry a logic level shifter - not sure if this is necessary or not.