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

365 lines
9.1 KiB
C

// 0032238a google::protobuf::FileDescriptorSet::vfunction19
void __thiscall google::protobuf::FileDescriptorSet::vfunction19(FileDescriptorSet *this)
{
FUN_003344e2(&(this->data).offset_0x20);
return;
}
// 0032288a google::protobuf::FileDescriptorSet::vfunction20
void __thiscall google::protobuf::FileDescriptorSet::vfunction20(void)
{
FUN_003227eb(0);
return;
}
// 003229de google::protobuf::FileDescriptorSet::FileDescriptorSet
void __thiscall
google::protobuf::FileDescriptorSet::FileDescriptorSet(FileDescriptorSet *this,undefined8 param_1)
{
(this->data).offset_0x0 = param_1;
this->vftablePtr = &vftable;
(this->data).offset_0x8 = param_1;
(this->data).offset_0x10 = 0;
(this->data).offset_0x18 = 0;
(this->data).offset_0x20 = 0;
return;
}
// 00324b9e google::protobuf::FileDescriptorSet::vfunction10
ulong __thiscall
google::protobuf::FileDescriptorSet::vfunction10(FileDescriptorSet *this,ulong param_1)
{
undefined4 *puVar1;
undefined8 *puVar2;
undefined8 *puVar3;
ulong uVar4;
long lVar5;
ulong uVar6;
ulong uVar7;
puVar3 = (undefined8 *)(this->data).offset_0x18;
uVar7 = (ulong)*(int *)&(this->data).offset_0x10;
if (puVar3 != (undefined8 *)0x0) {
puVar3 = puVar3 + 1;
}
puVar2 = puVar3 + uVar7;
uVar6 = param_1;
for (; puVar3 != puVar2; puVar3 = puVar3 + 1) {
uVar4 = FileDescriptorProto::vfunction10((FileDescriptorProto *)*puVar3,uVar6);
lVar5 = FUN_00334266(uVar4);
uVar7 = uVar7 + lVar5;
}
puVar1 = &(this->data).offset_0x20;
if ((*(byte *)&(this->data).offset_0x0 & 1) != 0) {
uVar7 = FUN_00359fe2(&this->data,uVar7,puVar1,param_1);
return uVar7;
}
FUN_003344e2(puVar1,uVar7 & 0xffffffff);
return uVar7;
}
// 0032a5c2 google::protobuf::FileDescriptorSet::vfunction7
undefined1 __thiscall google::protobuf::FileDescriptorSet::vfunction7(FileDescriptorSet *this)
{
FileDescriptorProto *this_00;
ulong uVar1;
int iVar2;
iVar2 = *(int *)&(this->data).offset_0x10;
do {
iVar2 = iVar2 + -1;
if (iVar2 < 0) {
return 1;
}
this_00 = (FileDescriptorProto *)FUN_0033596a(&(this->data).offset_0x8,iVar2);
uVar1 = FileDescriptorProto::vfunction7(this_00);
} while ((char)uVar1 != '\0');
return 0;
}
// 0032aaf2 google::protobuf::FileDescriptorSet::vfunction13
undefined8 __thiscall
google::protobuf::FileDescriptorSet::vfunction13
(FileDescriptorSet *this,byte *param_1,long *param_2)
{
int iVar1;
ulong uVar2;
undefined4 uVar3;
undefined1 *puVar4;
FileDescriptorProto *this_00;
byte *pbVar5;
undefined8 uVar6;
int iVar7;
iVar1 = *(int *)&(this->data).offset_0x10;
for (iVar7 = 0; iVar7 != iVar1; iVar7 = iVar7 + 1) {
puVar4 = (undefined1 *)FUN_002e292a(param_2);
this_00 = (FileDescriptorProto *)FUN_0033596a(&(this->data).offset_0x8,iVar7);
*puVar4 = 10;
uVar3 = FUN_003343d0(&(this_00->data).offset_0xc);
pbVar5 = (byte *)FUN_002e2a10(uVar3,puVar4 + 1);
param_1 = FileDescriptorProto::vfunction13(this_00,pbVar5,param_2);
}
uVar2 = (this->data).offset_0x0;
if ((uVar2 & 1) != 0) {
uVar6 = FUN_00359676((uVar2 & 0xfffffffffffffffc) + 8,param_1,param_2);
return uVar6;
}
return param_1;
}
// 0032cc54 google::protobuf::FileDescriptorSet::vfunction12
char * __thiscall
google::protobuf::FileDescriptorSet::vfunction12
(FileDescriptorSet *this,char *param_1,undefined8 *param_2)
{
int iVar1;
int *piVar2;
undefined8 uVar3;
ulong uVar4;
char cVar5;
undefined4 uVar6;
char *pcVar7;
FileDescriptorProto *this_00;
long lVar8;
char *local_50;
uint local_44;
char *local_40 [2];
local_50 = param_1;
do {
while( true ) {
cVar5 = FUN_00334356(param_2,&local_50);
if (cVar5 != '\0') {
return local_50;
}
pcVar7 = (char *)FUN_00321c03(local_50,&local_44);
if (pcVar7 == (char *)0x0) {
return (char *)0x0;
}
if ((local_44 >> 3 == 1) && (local_44 == 10)) break;
if (((local_44 & 7) == 4) || (local_44 == 0)) {
*(uint *)(param_2 + 10) = local_44 - 1;
return pcVar7;
}
uVar4 = (this->data).offset_0x0;
local_50 = pcVar7;
if ((uVar4 & 1) == 0) {
lVar8 = FUN_002762f0(&this->data);
}
else {
lVar8 = (uVar4 & 0xfffffffffffffffc) + 8;
}
local_50 = (char *)FUN_003589df(local_44,lVar8,pcVar7,param_2);
if (local_50 == (char *)0x0) {
return (char *)0x0;
}
}
local_50 = pcVar7 + -1;
do {
piVar2 = (int *)(this->data).offset_0x18;
pcVar7 = local_50 + 1;
local_50 = pcVar7;
if (piVar2 == (int *)0x0) {
LAB_0032ccfe:
FUN_002ecbe4(&(this->data).offset_0x8,*(int *)((long)&(this->data).offset_0x10 + 4) + 1);
LAB_0032cd0c:
piVar2 = (int *)(this->data).offset_0x18;
uVar3 = (this->data).offset_0x8;
*piVar2 = *piVar2 + 1;
this_00 = (FileDescriptorProto *)FUN_00323394(uVar3);
iVar1 = *(int *)&(this->data).offset_0x10;
*(int *)&(this->data).offset_0x10 = iVar1 + 1;
*(FileDescriptorProto **)((this->data).offset_0x18 + 8 + (long)iVar1 * 8) = this_00;
}
else {
iVar1 = *(int *)&(this->data).offset_0x10;
if (*piVar2 <= iVar1) {
if (*piVar2 == *(int *)((long)&(this->data).offset_0x10 + 4)) goto LAB_0032ccfe;
goto LAB_0032cd0c;
}
this_00 = *(FileDescriptorProto **)(piVar2 + (long)iVar1 * 2 + 2);
*(int *)&(this->data).offset_0x10 = iVar1 + 1;
}
local_40[0] = pcVar7;
uVar6 = FUN_002e2dcc(local_40);
if (local_40[0] == (char *)0x0) {
return (char *)0x0;
}
uVar6 = FUN_00334288(param_2,local_40[0],uVar6);
piVar2 = (int *)(param_2 + 0xb);
*piVar2 = *piVar2 + -1;
if (*piVar2 < 0) {
return (char *)0x0;
}
local_40[0] = FileDescriptorProto::vfunction12(this_00,local_40[0],param_2);
if (local_40[0] == (char *)0x0) {
return (char *)0x0;
}
*(int *)(param_2 + 0xb) = *(int *)(param_2 + 0xb) + 1;
cVar5 = FUN_00334330(param_2,uVar6);
if (cVar5 == '\0') {
return (char *)0x0;
}
local_50 = local_40[0];
if (local_40[0] == (char *)0x0) {
return (char *)0x0;
}
} while ((local_40[0] < (char *)*param_2) && (*local_40[0] == '\n'));
} while( true );
}
// 0032d07a google::protobuf::FileDescriptorSet::~FileDescriptorSet
void __thiscall google::protobuf::FileDescriptorSet::~FileDescriptorSet(FileDescriptorSet *this)
{
undefined8 *puVar1;
this->vftablePtr = &vftable;
FUN_003349ec();
puVar1 = &(this->data).offset_0x8;
FUN_00335c9e(&this->data);
FUN_0033689c(puVar1);
FUN_002ecda2(puVar1);
return;
}
// 0032d0ac google::protobuf::FileDescriptorSet::vfunction2
void __thiscall google::protobuf::FileDescriptorSet::vfunction2(FileDescriptorSet *this)
{
~FileDescriptorSet(this);
internal::FieldSkipper::vfunction2((FieldSkipper *)this);
return;
}
// 0032e02a google::protobuf::FileDescriptorSet::vfunction6
void __thiscall google::protobuf::FileDescriptorSet::vfunction6(FileDescriptorSet *this)
{
FUN_003371c8(&(this->data).offset_0x8);
if ((*(byte *)&(this->data).offset_0x0 & 1) != 0) {
FUN_002a4470(&this->data);
return;
}
return;
}
// 0032e1ba google::protobuf::FileDescriptorSet::vfunction16
void __thiscall
google::protobuf::FileDescriptorSet::vfunction16(FileDescriptorSet *this,FileDescriptorSet *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",0x569);
uVar1 = FUN_002d001e(local_38,"CHECK failed: (&from) != (this): ");
FUN_002d0858(&local_39,uVar1);
FUN_002d059c(local_38);
}
FUN_003227eb(0);
lVar2 = FUN_00315146(param_1);
if (lVar2 == extraout_RDX) {
FUN_0032e10a(this,param_1);
}
else {
FUN_0034dd68(param_1,this);
}
return;
}
// 0032e266 google::protobuf::FileDescriptorSet::vfunction15
void __thiscall
google::protobuf::FileDescriptorSet::vfunction15(FileDescriptorSet *this,FileDescriptorSet *param_1)
{
if (this != param_1) {
vfunction6(this);
vfunction16(this,param_1);
return;
}
return;
}
// 003344d8 google::protobuf::FileDescriptorSet::vfunction11
void __thiscall google::protobuf::FileDescriptorSet::vfunction11(FileDescriptorSet *this)
{
FUN_003343d0(&(this->data).offset_0x20);
return;
}
// 0033536c google::protobuf::FileDescriptorSet::vfunction5
FileDescriptorSet * __thiscall
google::protobuf::FileDescriptorSet::vfunction5(FileDescriptorSet *this,long param_1)
{
FileDescriptorSet *this_00;
if (param_1 == 0) {
this_00 = (FileDescriptorSet *)FUN_003a1a2c(0x30);
param_1 = 0;
}
else {
this_00 = (FileDescriptorSet *)thunk_FUN_002d7d08(param_1,0x30,0);
}
FileDescriptorSet(this_00,param_1);
return this_00;
}
// 00335374 google::protobuf::FileDescriptorSet::vfunction4
/* WARNING: Removing unreachable block (ram,0x00323371) */
FileDescriptorSet * __thiscall google::protobuf::FileDescriptorSet::vfunction4(void)
{
FileDescriptorSet *this;
this = (FileDescriptorSet *)FUN_003a1a2c(0x30);
FileDescriptorSet(this,0);
return this;
}