Note that not all TClass will have a ClassInfo.   Emulated class (classes that exist because we are reading a file that contains an instance of thoses classes but have no C++ for them whatsoever).   So you still need to fall back on GetBaseClassOffsetRecurse when 'derived' and/or target is null.