// 0025c670 CMsgShowBrowserContextMenu_ContextCommand::~CMsgShowBrowserContextMenu_ContextCommand /* WARNING: Removing unreachable block (ram,0x0025c750) */ void __thiscall CMsgShowBrowserContextMenu_ContextCommand::~CMsgShowBrowserContextMenu_ContextCommand (CMsgShowBrowserContextMenu_ContextCommand *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); } 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(); } // 0025df60 CMsgShowBrowserContextMenu_ContextCommand::~CMsgShowBrowserContextMenu_ContextCommand /* WARNING: Removing unreachable block (ram,0x0025e030) */ void __thiscall CMsgShowBrowserContextMenu_ContextCommand::~CMsgShowBrowserContextMenu_ContextCommand (CMsgShowBrowserContextMenu_ContextCommand *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); } 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,0x28); return; } // 00275180 CMsgShowBrowserContextMenu_ContextCommand::CMsgShowBrowserContextMenu_ContextCommand_Constructor_or_Destructor void CMsgShowBrowserContextMenu_ContextCommand:: CMsgShowBrowserContextMenu_ContextCommand_Constructor_or_Destructor(long param_1) { undefined8 *puVar1; if (param_1 != 0) { puVar1 = (undefined8 *)thunk_FUN_002d7d08(param_1,0x28,&typeinfo); puVar1[1] = param_1; *puVar1 = &vftable; puVar1[2] = 0; puVar1[3] = &DAT_0046ab18; *(undefined4 *)(puVar1 + 4) = 0; return; } puVar1 = (undefined8 *)FUN_003a1a2c(0x28); puVar1[1] = 0; *puVar1 = &vftable; puVar1[2] = 0; puVar1[3] = &DAT_0046ab18; *(undefined4 *)(puVar1 + 4) = 0; return; }