The airibag light coming on is a common problem with the BMWs. I had mine come on once, I scanned it using the airbag scan/reset tool. It pointed to the front passenger seat belt tensioner. I cleaned the connector and reset the light and it satyed out. If you plan on keeping the car, I suggest you get the airbag tool. There are a ton of different things that will turn the airbag light on. And even if it is something you can't fix yourself, at least you'll have an idea of what the problem is and you won't get ripped off by the dealer who can tell you anything.
As far as the ASC, that is a bit more complicated because of what it does. Aside from the airbag tool, and engine scan/ oil/inspection/ reset tool, you should definitley get the service manual for the car. It is a MUST for the do-it-yourselfer.
If you are looking for a quicker answer to your problem, you can visit the MITCHELL ON DEMAND website.