// 00260b10 CMsgSetLocalFileRequestMapping_AdditionalRoute::~CMsgSetLocalFileRequestMapping_AdditionalRoute /* WARNING: Removing unreachable block (ram,0x00260cd0) */ /* WARNING: Removing unreachable block (ram,0x00260ce0) */ /* WARNING: Removing unreachable block (ram,0x00260cc0) */ void __thiscall CMsgSetLocalFileRequestMapping_AdditionalRoute::~CMsgSetLocalFileRequestMapping_AdditionalRoute (CMsgSetLocalFileRequestMapping_AdditionalRoute *this) { undefined8 *puVar1; int *piVar2; int iVar3; long *plVar4; ulong uVar5; long in_FS_OFFSET; undefined1 uStack_21; long lStack_20; plVar4 = (this->data).offset_0x10; lStack_20 = *(long *)(in_FS_OFFSET + 0x28); this->vftablePtr = &vftable; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&uStack_21); } } FUN_0039deb8(plVar4,8); } plVar4 = (this->data).offset_0x18; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&uStack_21); } } FUN_0039deb8(plVar4,8); } plVar4 = (this->data).offset_0x20; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&uStack_21); } } FUN_0039deb8(plVar4,8); } uVar5 = (this->data).offset_0x0; if ((((uVar5 & 1) == 0) || ((uVar5 & 3) == 0)) || (((uVar5 & 2) == 0 && (*(long *)(uVar5 & 0xfffffffffffffffc) != 0)))) { if (lStack_20 == *(long *)(in_FS_OFFSET + 0x28)) { return; } } else if (lStack_20 == *(long *)(in_FS_OFFSET + 0x28)) { FUN_002564b0(); return; } /* WARNING: Subroutine does not return */ FUN_00219340(); } // 00261490 CMsgSetLocalFileRequestMapping_AdditionalRoute::~CMsgSetLocalFileRequestMapping_AdditionalRoute /* WARNING: Removing unreachable block (ram,0x00261640) */ /* WARNING: Removing unreachable block (ram,0x00261650) */ /* WARNING: Removing unreachable block (ram,0x00261630) */ void __thiscall CMsgSetLocalFileRequestMapping_AdditionalRoute::~CMsgSetLocalFileRequestMapping_AdditionalRoute (CMsgSetLocalFileRequestMapping_AdditionalRoute *this) { undefined8 *puVar1; int *piVar2; int iVar3; long *plVar4; ulong uVar5; long in_FS_OFFSET; undefined1 local_21; long local_20; plVar4 = (this->data).offset_0x10; local_20 = *(long *)(in_FS_OFFSET + 0x28); this->vftablePtr = &vftable; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&local_21); } } FUN_0039deb8(plVar4,8); } plVar4 = (this->data).offset_0x18; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&local_21); } } FUN_0039deb8(plVar4,8); } plVar4 = (this->data).offset_0x20; if ((plVar4 != (long *)0x0) && (plVar4 != (long *)&DAT_0046ab18)) { puVar1 = (undefined8 *)(*plVar4 + -0x18); if (puVar1 != &DAT_0046e8a0) { LOCK(); piVar2 = (int *)(*plVar4 + -8); iVar3 = *piVar2; *piVar2 = *piVar2 + -1; UNLOCK(); if (iVar3 < 1) { FUN_003ce482(puVar1,&local_21); } } FUN_0039deb8(plVar4,8); } uVar5 = (this->data).offset_0x0; if ((((uVar5 & 1) != 0) && ((uVar5 & 3) != 0)) && (((uVar5 & 2) != 0 || (*(long *)(uVar5 & 0xfffffffffffffffc) == 0)))) { FUN_002564b0(); } if (local_20 != *(long *)(in_FS_OFFSET + 0x28)) { /* WARNING: Subroutine does not return */ FUN_00219340(); } FUN_0039deb8(this,0x38); return; } // 002700e0 CMsgSetLocalFileRequestMapping_AdditionalRoute::CMsgSetLocalFileRequestMapping_AdditionalRoute_Constructor_or_Destructor void CMsgSetLocalFileRequestMapping_AdditionalRoute:: CMsgSetLocalFileRequestMapping_AdditionalRoute_Constructor_or_Destructor(long param_1) { undefined8 *puVar1; if (param_1 != 0) { puVar1 = (undefined8 *)thunk_FUN_002d7d08(param_1,0x38,&typeinfo); puVar1[1] = param_1; *puVar1 = &vftable; puVar1[2] = 0; puVar1[3] = &DAT_0046ab18; puVar1[4] = &DAT_0046ab18; puVar1[5] = &DAT_0046ab18; *(undefined1 *)(puVar1 + 6) = 0; return; } puVar1 = (undefined8 *)FUN_003a1a2c(0x38); *puVar1 = &vftable; puVar1[1] = 0; puVar1[2] = 0; puVar1[3] = &DAT_0046ab18; puVar1[4] = &DAT_0046ab18; puVar1[5] = &DAT_0046ab18; *(undefined1 *)(puVar1 + 6) = 0; return; }