I'll consider the legal situation in Germany:
I) Civil Law
In German civil law, there is a distinction between ownership (Eigentum) und posession (Besitz). While the Besitz can change, Eigentum never changes by theft itself (at best if the stolen item is inseparably tied to another). Regardless of this, according to § 935 Abs. 1 S. 1 BGB (civil code of Germany) acquisition of ownership of stolen items in good faith is explicitly impossible.
This means, Person A remains legal owner all the time and is entitled to restitution of the car by whoever is in posession of it according to § 985 BGB.
II) Criminal Law
In Germany, theft is punishable according to § 242 Abs. 1 StGB. There, theft is defined as seizure of a third-party chattel. Seizure is defined as breaching the keeping of somebody else and establishing new (not necessarily own) keeping of the item. NB: Keeping in criminal law is different from posession in civil law.
Since the purpose of the norm is to protect the keeping itself to discourage any kind of unauthorized seizures, even the unlawful keeping is protected. In other words, that a unlawful seizure occured can not justify another seizure. Furthermore, for the owner it becomes harder to get his keeping back if the item is stolen again once he has to trace multiple thefts.
For these reasons, it's possible to render oneself liable to prosecution by stealing an already stolen item out of the keeping of its theft.
a) Person B
By taking away the car from A, Person B commited a theft.
b) Person C
By taking away the car from B, also Person C commited a theft and is liable to prosecution.