Files
steam/decomp/steamrt64_chromehtml.so/src/google__protobuf__SourceCodeInfo_Location.c

536 lines
15 KiB
C

// 00321c7c google::protobuf::SourceCodeInfo_Location::vfunction13
byte * __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction13
(SourceCodeInfo_Location *this,byte *param_1,long *param_2)
{
int *piVar1;
byte *pbVar2;
int iVar3;
undefined1 *puVar4;
undefined8 uVar5;
byte *pbVar6;
long *plVar7;
long lVar8;
ulong uVar9;
ulong uVar10;
int iVar11;
byte bVar12;
uint uVar13;
int *piVar14;
int *piVar15;
byte bVar16;
undefined1 local_59;
undefined1 local_58 [40];
bVar16 = 0;
uVar13 = *(uint *)&(this->data).field_0x20;
if (0 < (int)uVar13) {
puVar4 = (undefined1 *)FUN_002e292a(param_2);
if ((undefined1 *)*param_2 <= puVar4) {
FUN_002d0582(local_58,3,"./google/protobuf/io/coded_stream.h",0x35e);
uVar5 = FUN_002d001e(local_58,"CHECK failed: ptr < end_: ");
FUN_002d0858(&local_59,uVar5);
FUN_002d059c(local_58);
}
*puVar4 = 10;
pbVar6 = puVar4 + 1;
while( true ) {
param_1 = pbVar6 + 1;
bVar12 = (byte)uVar13;
if (uVar13 < 0x80) break;
uVar13 = uVar13 >> 7;
*pbVar6 = bVar12 | 0x80;
pbVar6 = param_1;
}
*pbVar6 = bVar12;
piVar1 = (int *)(this->data).offset_0x18;
iVar3 = *(int *)&(this->data).offset_0x10;
piVar15 = piVar1;
do {
piVar14 = piVar15 + 1;
pbVar6 = (byte *)FUN_002e292a(param_2,param_1);
uVar10 = (ulong)*piVar15;
bVar12 = (byte)*piVar15;
if (uVar10 < 0x80) {
*pbVar6 = bVar12;
param_1 = pbVar6 + 1;
}
else {
*pbVar6 = bVar12 | 0x80;
pbVar2 = pbVar6 + 1;
uVar9 = uVar10 >> 7;
if (uVar10 < 0x4000) {
pbVar6[1] = (byte)(uVar10 >> 7);
param_1 = pbVar6 + 2;
}
else {
do {
pbVar6 = pbVar2;
uVar10 = uVar9 >> 7;
*pbVar6 = (byte)uVar9 | 0x80;
pbVar2 = pbVar6 + 1;
uVar9 = uVar10;
} while (0x7f < uVar10);
pbVar6[1] = (byte)uVar10;
param_1 = pbVar6 + 2;
}
}
piVar15 = piVar14;
} while (piVar14 < piVar1 + iVar3);
}
uVar13 = *(uint *)&(this->data).field_0x38;
if (0 < (int)uVar13) {
puVar4 = (undefined1 *)FUN_002e292a(param_2,param_1);
if ((undefined1 *)*param_2 <= puVar4) {
FUN_002d0582(local_58,3,"./google/protobuf/io/coded_stream.h",0x35e);
uVar5 = FUN_002d001e(local_58,"CHECK failed: ptr < end_: ");
FUN_002d0858(&local_59,uVar5);
FUN_002d059c(local_58);
}
*puVar4 = 0x12;
pbVar6 = puVar4 + 1;
while( true ) {
param_1 = pbVar6 + 1;
bVar12 = (byte)uVar13;
if (uVar13 < 0x80) break;
uVar13 = uVar13 >> 7;
*pbVar6 = bVar12 | 0x80;
pbVar6 = param_1;
}
*pbVar6 = bVar12;
piVar1 = (int *)(this->data).offset_0x30;
iVar3 = *(int *)&(this->data).offset_0x28;
piVar15 = piVar1;
do {
piVar14 = piVar15 + 1;
pbVar6 = (byte *)FUN_002e292a(param_2,param_1);
uVar10 = (ulong)*piVar15;
bVar12 = (byte)*piVar15;
if (uVar10 < 0x80) {
*pbVar6 = bVar12;
param_1 = pbVar6 + 1;
}
else {
*pbVar6 = bVar12 | 0x80;
pbVar2 = pbVar6 + 1;
uVar9 = uVar10 >> 7;
if (uVar10 < 0x4000) {
pbVar6[1] = (byte)(uVar10 >> 7);
param_1 = pbVar6 + 2;
}
else {
do {
pbVar6 = pbVar2;
uVar10 = uVar9 >> 7;
*pbVar6 = (byte)uVar9 | 0x80;
pbVar2 = pbVar6 + 1;
uVar9 = uVar10;
} while (0x7f < uVar10);
pbVar6[1] = (byte)uVar10;
param_1 = pbVar6 + 2;
}
}
piVar15 = piVar14;
} while (piVar14 < piVar1 + iVar3);
}
uVar13 = (this->data).offset_0x8;
if ((uVar13 & 1) != 0) {
lVar8 = *(long *)((ulong)(this->data).offset_0x58 & 0xfffffffffffffffe);
FUN_002f6a1c(lVar8,*(undefined4 *)(lVar8 + -0x18),1,
"google.protobuf.SourceCodeInfo.Location.leading_comments");
param_1 = (byte *)FUN_002680e0(param_2,3,(ulong)(this->data).offset_0x58 & 0xfffffffffffffffe,
param_1);
}
if ((uVar13 & 2) != 0) {
lVar8 = *(long *)((ulong)(this->data).offset_0x60 & 0xfffffffffffffffe);
FUN_002f6a1c(lVar8,*(undefined4 *)(lVar8 + -0x18),1,
"google.protobuf.SourceCodeInfo.Location.trailing_comments");
param_1 = (byte *)FUN_002680e0(param_2,4,(ulong)(this->data).offset_0x60 & 0xfffffffffffffffe,
param_1);
}
puVar4 = &(this->data).field_0x40;
iVar3 = FUN_002f38c2(puVar4);
for (iVar11 = 0; iVar11 < iVar3; iVar11 = iVar11 + 1) {
plVar7 = (long *)thunk_FUN_002f4b80(puVar4,iVar11);
FUN_002f6a1c(*plVar7,*(undefined4 *)(*plVar7 + -0x18),1,
"google.protobuf.SourceCodeInfo.Location.leading_detached_comments");
lVar8 = *(long *)(*plVar7 + -0x18);
if ((lVar8 < 0x80) && (lVar8 < (*param_2 - (long)param_1) + 0xf)) {
*param_1 = 0x32;
param_1[1] = (byte)lVar8;
pbVar6 = (byte *)*plVar7;
param_1 = param_1 + 2;
for (; lVar8 != 0; lVar8 = lVar8 + -1) {
*param_1 = *pbVar6;
pbVar6 = pbVar6 + (ulong)bVar16 * -2 + 1;
param_1 = param_1 + (ulong)bVar16 * -2 + 1;
}
}
else {
param_1 = (byte *)FUN_002f8538(param_2,6,plVar7,param_1);
}
}
uVar10 = (this->data).offset_0x0;
if ((uVar10 & 1) != 0) {
param_1 = (byte *)FUN_00359676((uVar10 & 0xfffffffffffffffc) + 8,param_1,param_2);
}
return param_1;
}
// 00322470 google::protobuf::SourceCodeInfo_Location::vfunction19
void __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction19(SourceCodeInfo_Location *this)
{
FUN_003344e2(&(this->data).offset_0xc);
return;
}
// 00322564 google::protobuf::SourceCodeInfo_Location::vfunction10
ulong __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction10(SourceCodeInfo_Location *this)
{
undefined1 *puVar1;
uint uVar2;
int iVar3;
ulong uVar4;
long lVar5;
long lVar6;
undefined8 uVar7;
int iVar8;
lVar5 = 0;
uVar4 = FUN_002f6a60(&(this->data).offset_0x10);
if (uVar4 != 0) {
lVar5 = FUN_002e2ae2(uVar4 & 0xffffffff);
lVar5 = lVar5 + 1;
}
*(int *)&(this->data).field_0x20 = (int)uVar4;
lVar5 = lVar5 + uVar4;
uVar4 = FUN_002f6a60(&(this->data).offset_0x28);
if (uVar4 != 0) {
lVar6 = FUN_002e2ae2(uVar4 & 0xffffffff);
lVar5 = lVar5 + 1 + lVar6;
}
*(int *)&(this->data).field_0x38 = (int)uVar4;
puVar1 = &(this->data).field_0x40;
uVar2 = FUN_002f38c2(puVar1);
iVar3 = FUN_002f38c2(puVar1);
uVar4 = (ulong)uVar2 + lVar5 + uVar4;
for (iVar8 = 0; iVar8 < iVar3; iVar8 = iVar8 + 1) {
uVar7 = thunk_FUN_002f4b80(puVar1,iVar8);
lVar5 = FUN_0033427c(uVar7);
uVar4 = uVar4 + lVar5;
}
uVar2 = (this->data).offset_0x8;
if ((uVar2 & 3) != 0) {
if ((uVar2 & 1) != 0) {
lVar5 = FUN_0033427c((ulong)(this->data).offset_0x58 & 0xfffffffffffffffe);
uVar4 = uVar4 + 1 + lVar5;
}
if ((uVar2 & 2) != 0) {
lVar5 = FUN_0033427c((ulong)(this->data).offset_0x60 & 0xfffffffffffffffe);
uVar4 = uVar4 + 1 + lVar5;
}
}
if ((*(byte *)&(this->data).offset_0x0 & 1) != 0) {
uVar4 = FUN_00359fe2(&this->data,uVar4);
return uVar4;
}
FUN_003344e2(&(this->data).offset_0xc,uVar4 & 0xffffffff);
return uVar4;
}
// 0032281c google::protobuf::SourceCodeInfo_Location::vfunction20
void __thiscall google::protobuf::SourceCodeInfo_Location::vfunction20(void)
{
FUN_003227eb(0x17);
return;
}
// 0032324e google::protobuf::SourceCodeInfo_Location::SourceCodeInfo_Location
undefined8 __thiscall
google::protobuf::SourceCodeInfo_Location::SourceCodeInfo_Location
(SourceCodeInfo_Location *this,undefined8 param_1,undefined8 param_2)
{
(this->data).offset_0x0 = param_1;
this->vftablePtr = &vftable;
(this->data).offset_0x8 = 0;
(this->data).offset_0xc = 0;
(this->data).offset_0x10 = 0;
(this->data).offset_0x18 = param_1;
(this->data).offset_0x28 = 0;
(this->data).offset_0x30 = param_1;
FUN_002f38a6();
(this->data).offset_0x58 = &DAT_0046ab18;
(this->data).offset_0x60 = &DAT_0046ab18;
return param_2;
}
// 00324f9e google::protobuf::SourceCodeInfo_Location::vfunction12
char * __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction12
(SourceCodeInfo_Location *this,char *param_1,undefined8 *param_2)
{
undefined4 *puVar1;
ulong uVar2;
char cVar3;
char *pcVar4;
undefined8 uVar5;
undefined8 *puVar6;
long lVar7;
char *local_40;
undefined4 local_34;
uint local_30;
undefined4 local_2c;
local_34 = 0;
local_40 = param_1;
LAB_00324fc4:
do {
cVar3 = FUN_00334356(param_2,&local_40);
if (cVar3 != '\0') goto LAB_003251e8;
pcVar4 = (char *)FUN_00321c03(local_40,&local_30);
if (pcVar4 == (char *)0x0) goto LAB_00324ff8;
local_40 = pcVar4;
switch(local_30 >> 3) {
case 1:
puVar6 = &(this->data).offset_0x10;
if (local_30 == 10) {
LAB_00325055:
local_40 = (char *)FUN_002eac85(puVar6,pcVar4,param_2);
}
else {
if (local_30 != 8) break;
local_2c = FUN_0033435e(&local_40);
puVar6 = &(this->data).offset_0x10;
LAB_00325080:
FUN_002eea5a(puVar6,&local_2c);
}
goto LAB_003251dd;
case 2:
if (local_30 == 0x12) {
puVar6 = &(this->data).offset_0x28;
goto LAB_00325055;
}
if (local_30 == 0x10) {
local_2c = FUN_0033435e(&local_40);
puVar6 = &(this->data).offset_0x28;
goto LAB_00325080;
}
break;
case 3:
if (local_30 != 0x1a) break;
puVar1 = &(this->data).offset_0x8;
*puVar1 = *puVar1 | 1;
uVar5 = FUN_003150ee(this);
uVar5 = FUN_002d7f56(&(this->data).offset_0x58,uVar5);
local_40 = (char *)FUN_002ea63f(uVar5,local_40,param_2);
pcVar4 = "google.protobuf.SourceCodeInfo.Location.leading_comments";
LAB_0032510c:
FUN_0033439a(uVar5,pcVar4);
goto LAB_003251dd;
case 4:
if (local_30 == 0x22) {
puVar1 = &(this->data).offset_0x8;
*puVar1 = *puVar1 | 2;
uVar5 = FUN_003150ee(this);
uVar5 = FUN_002d7f56(&(this->data).offset_0x60,uVar5);
local_40 = (char *)FUN_002ea63f(uVar5,local_40,param_2);
pcVar4 = "google.protobuf.SourceCodeInfo.Location.trailing_comments";
goto LAB_0032510c;
}
break;
case 6:
if (local_30 == 0x32) {
local_40 = pcVar4 + -1;
do {
local_40 = local_40 + 1;
uVar5 = FUN_002f38c6(&(this->data).field_0x40);
local_40 = (char *)FUN_002ea63f(uVar5,local_40,param_2);
FUN_0033439a(uVar5,"google.protobuf.SourceCodeInfo.Location.leading_detached_comments");
if (local_40 == (char *)0x0) goto LAB_00324ff8;
} while ((local_40 < (char *)*param_2) && (*local_40 == '2'));
goto LAB_00324fc4;
}
}
if (((local_30 & 7) == 4) || (local_30 == 0)) {
*(uint *)(param_2 + 10) = local_30 - 1;
goto LAB_003251e8;
}
uVar2 = (this->data).offset_0x0;
if ((uVar2 & 1) == 0) {
lVar7 = FUN_002762f0(&this->data);
}
else {
lVar7 = (uVar2 & 0xfffffffffffffffc) + 8;
}
local_40 = (char *)FUN_003589df(local_30,lVar7,pcVar4,param_2);
LAB_003251dd:
if (local_40 == (char *)0x0) {
LAB_00324ff8:
local_40 = (char *)0x0;
LAB_003251e8:
FUN_00321c76(&(this->data).offset_0x8,&local_34);
return local_40;
}
} while( true );
}
// 0032b4fa google::protobuf::SourceCodeInfo_Location::vfunction16
void __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction16
(SourceCodeInfo_Location *this,SourceCodeInfo_Location *param_1)
{
undefined8 uVar1;
long lVar2;
long extraout_RDX;
undefined1 local_39;
undefined1 local_38 [32];
if (this == param_1) {
FUN_002d0582(local_38,3,"google/protobuf/descriptor.pb.cc",0x2783);
uVar1 = FUN_002d001e(local_38,"CHECK failed: (&from) != (this): ");
FUN_002d0858(&local_39,uVar1);
FUN_002d059c(local_38);
}
FUN_003227eb(0x17);
lVar2 = FUN_00315146(param_1);
if (lVar2 == extraout_RDX) {
FUN_0032b3ce(this,param_1);
}
else {
FUN_0034dd68(param_1,this);
}
return;
}
// 0032cf4a google::protobuf::SourceCodeInfo_Location::~SourceCodeInfo_Location
void __thiscall
google::protobuf::SourceCodeInfo_Location::~SourceCodeInfo_Location(SourceCodeInfo_Location *this)
{
this->vftablePtr = &vftable;
FUN_0033515c();
FUN_00335c9e(&this->data);
FUN_002f4b64(&(this->data).field_0x40);
FUN_002ee8ce(&(this->data).offset_0x28);
FUN_002ee8ce(&(this->data).offset_0x10);
return;
}
// 0032cf82 google::protobuf::SourceCodeInfo_Location::vfunction2
void __thiscall google::protobuf::SourceCodeInfo_Location::vfunction2(SourceCodeInfo_Location *this)
{
~SourceCodeInfo_Location(this);
internal::FieldSkipper::vfunction2((FieldSkipper *)this);
return;
}
// 0032d2e8 google::protobuf::SourceCodeInfo_Location::vfunction6
undefined8 __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction6
(SourceCodeInfo_Location *this,undefined8 param_1,undefined8 param_2,undefined8 param_3)
{
uint uVar1;
undefined8 uVar2;
*(undefined4 *)&(this->data).offset_0x10 = 0;
*(undefined4 *)&(this->data).offset_0x28 = 0;
thunk_FUN_002f550e();
uVar1 = (this->data).offset_0x8;
if ((uVar1 & 3) != 0) {
if ((uVar1 & 1) != 0) {
FUN_003341d6(&(this->data).offset_0x58);
}
if ((uVar1 & 2) != 0) {
FUN_003341d6(&(this->data).offset_0x60);
}
}
(this->data).offset_0x8 = 0;
if ((*(byte *)&(this->data).offset_0x0 & 1) != 0) {
uVar2 = FUN_002a4470(&this->data);
return uVar2;
}
return param_3;
}
// 0032d34a google::protobuf::SourceCodeInfo_Location::vfunction15
void __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction15
(SourceCodeInfo_Location *this,SourceCodeInfo_Location *param_1,undefined8 param_2,
undefined8 param_3)
{
if (this != param_1) {
vfunction6(this,param_1,param_2,param_3);
vfunction16(this,param_1);
return;
}
return;
}
// 003344ba google::protobuf::SourceCodeInfo_Location::vfunction11
void __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction11(SourceCodeInfo_Location *this)
{
FUN_003343d0(&(this->data).offset_0xc);
return;
}
// 00335626 google::protobuf::SourceCodeInfo_Location::vfunction5
void __thiscall
google::protobuf::SourceCodeInfo_Location::vfunction5
(SourceCodeInfo_Location *this,undefined8 param_1)
{
FUN_00323970(param_1);
return;
}
// 0033562e google::protobuf::SourceCodeInfo_Location::vfunction4
void __thiscall google::protobuf::SourceCodeInfo_Location::vfunction4(void)
{
FUN_00323970(0);
return;
}