// 00385e80 CUtlCStringConversion::vfunction1 void __thiscall CUtlCStringConversion::vfunction1(CUtlCStringConversion *this,byte *param_1,uint *param_2) { *param_2 = (uint)((&this[0xe].data.field_0x70)[*param_1] != '\0'); return; } // 00386320 CUtlCStringConversion::CUtlCStringConversion void __thiscall CUtlCStringConversion::CUtlCStringConversion (CUtlCStringConversion *this,undefined1 param_1,undefined8 param_2,int param_3, byte *param_4) { long lVar1; undefined8 *puVar2; byte *pbVar3; byte *pbVar4; byte bVar5; bVar5 = 0; CUtlCharConversion::CUtlCharConversion((CUtlCharConversion *)this,param_1,param_2,param_3,param_4) ; this->vftablePtr = &vftable; puVar2 = (undefined8 *)&this[0xe].data.field_0x70; for (lVar1 = 0x20; lVar1 != 0; lVar1 = lVar1 + -1) { *puVar2 = 0; puVar2 = puVar2 + (ulong)bVar5 * -2 + 1; } if (0 < param_3) { pbVar3 = param_4; do { pbVar4 = pbVar3 + 0x10; (&this[0xe].data.field_0x70)[**(byte **)(pbVar3 + 8)] = *pbVar3; pbVar3 = pbVar4; } while (param_4 + (long)param_3 * 0x10 != pbVar4); } return; }