Anyone heard about CHBByteStream? It's from Harman headunit (car radio). I don't know how it's passing arguments. SWID is 4 bytes, VIN is 17 bytes, it should be connected in some way, to pass thru other function. Also I found CHBString, (it looks like you got pointer to element, where a is that pointer. a+7 or a+8 is length, a+17 is first element of string, also have some other elements like a+2 - unknown), maybe someone heard about this?
CHBByteStream::CHBByteStream((CHBByteStream *)&bytes1);
v26 = *SWID >> 24;
operator<<((IHBOStream *)&bytes1_far);
v25 = *SWID >> 16;
operator<<((IHBOStream *)&bytes1_far);
v24 = *(_WORD *)SWID >> 8;
operator<<((IHBOStream *)&bytes1_far);
v23 = *SWID;
operator<<((IHBOStream *)&bytes1_far);
VIN2 = VIN;
VIN_START = (void *)(*VIN + 17);
while ( VIN_START != (void *)(*VIN2 + *(_DWORD *)(*VIN2 + 8) + 17) )// maybe its vin (SWID+8) -> maybe length
{
v5 = VIN2;
v22 = CHBString::const_iterator::operator*((int)&VIN_START);
operator<<((IHBOStream *)&bytes1_far);
CHBString::const_iterator::operator++(&v18, (CHBString::const_iterator *)&VIN_START);
VIN2 = v5;
v18 = &unk_88A3C7D;
}
VIN_START = &unk_88A3C7D;