It isn't as involved as is made out.
The MAC address just needs a call to UuidCreateSequential. The last 6 bytes of the resulting GUID represent the MAC address.
Note that you may find solutions suggesting the use of CoCreateGuid. However, this is just a wrapper for UuidCreate which, as of W2000, no longer returns the MAC portion. So, on the older OSs you can use CoCreateGuid or UuidCreate, and on W2000/XP/W2003 use UuidCreateSequential