I don't know about California, but AFAIK reverse engineering is legal, but breaking DRM protection isn't, so what companies did was to put DRM in their software, hence the reverse engineering became illegal.