# Lmx.dll selected decompile ## FUN_1008c120 at 1008c120 Signature: `undefined FUN_1008c120(void)` ```c void __thiscall FUN_1008c120(int param_1,int param_2,short *param_3) { int *piVar1; char cVar2; basic_ostream_> *pbVar3; undefined4 uVar4; int iVar5; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *p_Var6; wchar_t local_210 [260]; uint local_8; local_8 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; for (piVar1 = (int *)**(int **)(param_1 + 0x1c); (piVar1 != *(int **)(param_1 + 0x1c) && (param_2 != piVar1[2])); piVar1 = (int *)*piVar1) { } cVar2 = FUN_100408d0(); if (cVar2 != '\0') { swprintf_s(local_210,0x104,L"", (int)(short)*(undefined4 *)param_3,*(undefined4 *)(param_3 + 2), *(undefined4 *)(param_3 + 4),(int)param_3[6]); p_Var6 = endl_exref; pbVar3 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L"CReferenceStringResolutionService::OperationComplete - correlationId ", param_2,L" status ",local_210); pbVar3 = std::basic_ostream_>::operator<< (pbVar3,param_2); uVar4 = FUN_1001a0e0(pbVar3); pbVar3 = (basic_ostream_> *) FUN_1001a0e0(uVar4); std::basic_ostream_>::operator<< (pbVar3,p_Var6); } if (piVar1 == *(int **)(param_1 + 0x1c)) { cVar2 = FUN_100408d0(); if (cVar2 != '\0') { p_Var6 = endl_exref; pbVar3 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - failed to find correlationId in boundReferencesPendingResponse" ); std::basic_ostream_>::operator<< (pbVar3,p_Var6); } } else { cVar2 = FUN_100408d0(); if (cVar2 != '\0') { p_Var6 = endl_exref; pbVar3 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - rcvd valid response" ); std::basic_ostream_>::operator<< (pbVar3,p_Var6); } cVar2 = FUN_100408d0(); if (cVar2 != '\0') { uVar4 = FUN_10047fe0(piVar1[7],piVar1[8],piVar1[9],piVar1[10]); iVar5 = piVar1[6]; p_Var6 = endl_exref; uVar4 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - client engine ", piVar1 + 3,L" client corelation id ",iVar5,L" guid ",uVar4); uVar4 = FUN_1001db00(uVar4); pbVar3 = (basic_ostream_> *) FUN_1001a0e0(uVar4); pbVar3 = std::basic_ostream_>:: operator<<(pbVar3,iVar5); uVar4 = FUN_1001a0e0(pbVar3); pbVar3 = (basic_ostream_> *) FUN_1001a0e0(uVar4); std::basic_ostream_>::operator<< (pbVar3,p_Var6); } if ((*param_3 == 0) && (*(int *)(param_3 + 2) == 3)) { *(int *)(param_1 + 0x48) = *(int *)(param_1 + 0x48) + 1; cVar2 = FUN_100408d0(); if (cVar2 != '\0') { p_Var6 = endl_exref; pbVar3 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - resubmitting bind response" ); std::basic_ostream_>::operator<< (pbVar3,p_Var6); } FUN_1010ad00(0,piVar1 + 3,0x11,piVar1[0xb],0,2,param_1,piVar1[2],0,0,0); __security_check_cookie(local_8 ^ (uint)&stack0xfffffffc); return; } if ((int *)piVar1[0xb] != (int *)0x0) { (**(code **)(*(int *)piVar1[0xb] + 0x38))(1); } if (piVar1 != *(int **)(param_1 + 0x1c)) { *(int *)piVar1[1] = *piVar1; *(int *)(*piVar1 + 4) = piVar1[1]; operator_delete(piVar1); *(int *)(param_1 + 0x20) = *(int *)(param_1 + 0x20) + -1; __security_check_cookie(local_8 ^ (uint)&stack0xfffffffc); return; } } __security_check_cookie(local_8 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_1008d760 at 1008d760 Signature: `undefined FUN_1008d760(void)` ```c /* WARNING: Function: __alloca_probe replaced with injection: alloca_probe */ void __fastcall FUN_1008d760(int param_1) { int iVar1; int *piVar2; char cVar3; basic_ostream_> *pbVar4; int iVar5; undefined4 uVar6; undefined4 *puVar7; uint uVar8; undefined1 *puVar9; int *piVar10; undefined4 *puVar11; long lVar12; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *p_Var13; undefined4 local_1c48; undefined4 local_1c44 [9]; undefined1 local_1c20 [4]; undefined1 local_1c1c [8]; int *local_1c14; BSTR local_1c10; undefined1 local_1c0c [8]; undefined4 local_1c04; undefined4 local_1c00; void *local_1bf8; int local_1bf4; int local_1bf0; int *local_1bec; BSTR local_1be8; int local_1be4; int *local_1be0; char local_1bd9; undefined4 local_1bd8; undefined4 local_1bd4; undefined4 local_1bd0; undefined4 local_1bcc; undefined4 local_20; undefined4 local_1c; undefined2 local_18; uint local_14; void *local_10; undefined1 *puStack_c; undefined4 local_8; puStack_c = &LAB_10167405; local_10 = ExceptionList; local_14 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; local_1be4 = 0; local_1be0 = (int *)0x0; local_8 = 1; local_1bf4 = param_1; if (*(int *)(param_1 + 0x14) != 0) { cVar3 = FUN_100408d0(local_14); if (cVar3 != '\0') { uVar8 = *(uint *)(param_1 + 0x14); p_Var13 = endl_exref; pbVar4 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L"CReferenceStringResolutionService::ProcessPendingClientRequests - bindRequests queue size " ); pbVar4 = std::basic_ostream_>:: operator<<(pbVar4,uVar8); std::basic_ostream_>::operator<< (pbVar4,p_Var13); } iVar5 = (**(code **)(**(int **)(param_1 + 0xc) + 0x1c))(*(int **)(param_1 + 0xc),1,&local_1be0); iVar5 = FUN_10048e60(iVar5 == 0,iVar5,0x5f,"CReferenceStringResolutionService.cpp"); if (iVar5 != 0) { local_1bf0 = 0; iVar5 = (**(code **)(*local_1be0 + 0x54))(local_1be0,&local_1bf0); iVar5 = FUN_10048e60(iVar5 == 0,iVar5,0x65,"CReferenceStringResolutionService.cpp"); if ((iVar5 != 0) && (4 < local_1bf0)) { FUN_1008c670(local_1c0c,local_1be0); FUN_1008c850(local_1c1c,local_1be0); piVar10 = (int *)**(int **)(param_1 + 0x10); if (piVar10 != *(int **)(param_1 + 0x10)) { do { if (99 < local_1be4) break; FUN_10005170(); local_8 = CONCAT31(local_8._1_3_,2); local_1bd9 = '\0'; cVar3 = FUN_100408d0(); if (cVar3 != '\0') { p_Var13 = endl_exref; uVar6 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L"request - source ", piVar10[2] + 0x14); pbVar4 = (basic_ostream_> *) FUN_1001db00(uVar6); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } cVar3 = FUN_100408d0(); if (cVar3 != '\0') { lVar12 = *(long *)(piVar10[2] + 0x30); p_Var13 = endl_exref; pbVar4 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - corelationId ") ; pbVar4 = std::basic_ostream_>:: operator<<(pbVar4,lVar12); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } cVar3 = FUN_100408d0(); if (cVar3 != '\0') { iVar5 = piVar10[2]; uVar6 = FUN_10047fe0(*(undefined4 *)(iVar5 + 0x20),*(undefined4 *)(iVar5 + 0x24), *(undefined4 *)(iVar5 + 0x28),*(undefined4 *)(iVar5 + 0x2c)); p_Var13 = endl_exref; uVar6 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - guid ",uVar6); pbVar4 = (basic_ostream_> *) FUN_1001a0e0(uVar6); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } cVar3 = FUN_100408d0(); if (cVar3 != '\0') { uVar6 = FUN_1002f5f0(*(undefined4 *)piVar10[2]); p_Var13 = endl_exref; uVar6 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - ref ",uVar6); pbVar4 = (basic_ostream_> *) FUN_1001a0e0(uVar6); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } cVar3 = FUN_1008af90(local_1c0c,local_1c1c,piVar10[2] + 0x34,piVar10[2] + 0x44, piVar10[2] + 0x4c); piVar2 = local_1be0; if (cVar3 == '\0') { *(int *)(param_1 + 0x44) = *(int *)(param_1 + 0x44) + 1; } else { local_1c00 = 10; local_18 = 0; local_1c04 = 0x640064; local_1c = 10; local_20 = 0x640064; puVar7 = (undefined4 *)FUN_100054b0(*(undefined4 *)piVar10[2]); local_8._0_1_ = 3; (**(code **)(*piVar2 + 0x24))(piVar2,&local_20,*puVar7,local_1bec,&local_1bd8); local_8 = CONCAT31(local_8._1_3_,2); if (local_1c14 != (int *)0x0) { (**(code **)(*local_1c14 + 8))(local_1c14); } SysFreeString(local_1c10); if ((short)local_1bd8 == 0) { cVar3 = FUN_100408d0(); if (cVar3 != '\0') { uVar6 = FUN_10003fc0(local_1bd8,local_1bd4,local_1bd0,local_1bcc); p_Var13 = endl_exref; uVar6 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - bind reference failed ",uVar6); pbVar4 = (basic_ostream_> * )FUN_1001a0e0(uVar6); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } *(int *)(param_1 + 0x40) = *(int *)(param_1 + 0x40) + 1; } else { local_1bd9 = '\x01'; } } local_1bf8 = operator_new(0x14); local_8._0_1_ = 4; if (local_1bf8 == (void *)0x0) { iVar5 = 0; } else { iVar5 = FUN_10031c20(8); } local_8 = CONCAT31(local_8._1_3_,2); cVar3 = FUN_10048d60(iVar5 != 0,0x8d,"CReferenceStringResolutionService.cpp"); if (cVar3 == '\0') { piVar10 = (int *)*piVar10; } else { cVar3 = FUN_100408d0(); if (cVar3 != '\0') { uVar6 = FUN_100300d0(local_1bec); p_Var13 = endl_exref; uVar6 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - bound ref ", uVar6); pbVar4 = (basic_ostream_> *) FUN_1001a0e0(uVar6); std::basic_ostream_>:: operator<<(pbVar4,p_Var13); } FUN_10060d10(0x11,iVar5); uVar8 = FUN_10003390(0x11); local_1bf8 = (void *)(uVar8 & 0xffff); FUN_10063d90(&local_1bf8,iVar5); FUN_1008cfd0(piVar10[2] + 0x30,iVar5); FUN_1005e4c0(piVar10[2] + 0x20,iVar5); if (local_1bd9 == '\0') { FUN_1005e3f0(piVar10[2] + 0x44,iVar5); puVar9 = (undefined1 *)(piVar10[2] + 0x4c); } else { FUN_1005e3f0(local_1c0c,iVar5); puVar9 = local_1c1c; } FUN_1005e3f0(puVar9,iVar5); FUN_1008d000(&local_1bd9,iVar5); (**(code **)(*local_1bec + 0x18))(local_1bec,iVar5,1); *(int *)(param_1 + 8) = *(int *)(param_1 + 8) + 1; FUN_1010ad00(0,piVar10[2] + 0x14,0x11,iVar5,0,2,param_1,*(undefined4 *)(param_1 + 8),0 ,0,0); iVar1 = piVar10[2]; puVar7 = (undefined4 *) FUN_1008af30(iVar5,piVar10[2] + 0x14,*(undefined4 *)(piVar10[2] + 0x30), *(undefined4 *)(iVar1 + 0x20),*(undefined4 *)(iVar1 + 0x24), *(undefined4 *)(iVar1 + 0x28),*(undefined4 *)(iVar1 + 0x2c)); local_1c48 = *(undefined4 *)(param_1 + 8); puVar11 = local_1c44; for (iVar5 = 9; param_1 = local_1bf4, iVar5 != 0; iVar5 = iVar5 + -1) { *puVar11 = *puVar7; puVar7 = puVar7 + 1; puVar11 = puVar11 + 1; } FUN_1008cb90(&local_1c48); if (piVar10[2] != 0) { FUN_1008b9a0(1); } puVar7 = (undefined4 *)FUN_1008bd20(local_1c20,piVar10); piVar10 = (int *)*puVar7; } local_8 = CONCAT31(local_8._1_3_,1); if (local_1bec != (int *)0x0) { (**(code **)(*local_1bec + 8))(local_1bec); } SysFreeString(local_1be8); local_1be4 = local_1be4 + 1; } while (piVar10 != *(undefined4 **)(param_1 + 0x10)); } } } } local_8 = 0xffffffff; if (local_1be0 != (int *)0x0) { (**(code **)(*local_1be0 + 8))(local_1be0); } ExceptionList = local_10; __security_check_cookie(local_14 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_1008f310 at 1008f310 Signature: `undefined FUN_1008f310(void)` ```c void __fastcall FUN_1008f310(int param_1) { int iVar1; int iVar2; int iVar3; int iVar4; int iVar5; int iVar6; int iVar7; int iVar8; int iVar9; char cVar10; uint uVar11; DWORD DVar12; basic_ostream_> *pbVar13; undefined4 uVar14; int *piVar15; int *piVar16; long lVar17; int iVar18; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *p_Var19; uint uVar20; void *local_10; undefined1 *puStack_c; undefined4 local_8; local_8 = 0xffffffff; puStack_c = &LAB_10167748; local_10 = ExceptionList; uVar11 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; piVar15 = (int *)**(int **)(param_1 + 0x18); uVar20 = uVar11; if (piVar15 != *(int **)(param_1 + 0x18)) { do { DVar12 = GetTickCount(); if (DVar12 - piVar15[0x11] < 60000) { piVar16 = (int *)*piVar15; } else { piVar15[0x11] = DVar12; iVar1 = piVar15[0xd]; iVar2 = piVar15[3]; iVar3 = piVar15[0xe]; iVar4 = piVar15[0x10]; iVar5 = piVar15[0xf]; iVar6 = piVar15[0xb]; iVar7 = piVar15[9]; iVar8 = piVar15[10]; iVar9 = piVar15[0xc]; *(int *)(param_1 + 0x50) = *(int *)(param_1 + 0x50) + 1; iVar18 = *(int *)(DAT_101d6474 + 0x38); if (*(int *)(iVar18 + 4) == 0) { LAB_1008f47a: cVar10 = '\0'; } else { if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 0; FUN_10003a90(uVar20); _atexit(FUN_101792e0); local_8 = 0xffffffff; } uVar14 = *(undefined4 *)(iVar18 + 4); if (DAT_101d6374 == -1) { if (DAT_101d6370 == 0) { FUN_10015ea0(); if (DAT_101d6370 != 0) goto LAB_1008f434; } else { LAB_1008f434: if (DAT_101d640c != (code *)0x0) { (*DAT_101d640c)(&DAT_101d6374); } } if (DAT_101d6374 == -1) goto LAB_1008f47a; FUN_10003d20(); } if (DAT_101d6414 == (code *)0x0) goto LAB_1008f47a; cVar10 = (*DAT_101d6414)(DAT_101d6374,uVar14,0); if (cVar10 == '\0') goto LAB_1008f47a; cVar10 = '\x01'; } if (*(char *)(iVar18 + 8) != cVar10) { *(char *)(iVar18 + 8) = cVar10; FUN_100312d0(); } if (*(char *)(iVar18 + 8) != '\0') { lVar17 = 60000; p_Var19 = endl_exref; pbVar13 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L"CReferenceStringResolver::ProcessPendingGRReferenceBindRequests - following reference not bound withing " ,60000,&DAT_1018b564); pbVar13 = std::basic_ostream_>:: operator<<(pbVar13,lVar17); pbVar13 = (basic_ostream_> *) FUN_1001a0e0(pbVar13); std::basic_ostream_>::operator<< (pbVar13,p_Var19); } iVar18 = *(int *)(DAT_101d6474 + 0x38); if (*(int *)(iVar18 + 4) == 0) { LAB_1008f587: cVar10 = '\0'; } else { if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 1; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } uVar14 = *(undefined4 *)(iVar18 + 4); if (DAT_101d6374 == -1) { if (DAT_101d6370 == 0) { FUN_10015ea0(); if (DAT_101d6370 != 0) goto LAB_1008f541; } else { LAB_1008f541: if (DAT_101d640c != (code *)0x0) { (*DAT_101d640c)(&DAT_101d6374); } } if (DAT_101d6374 == -1) goto LAB_1008f587; FUN_10003d20(); } if (DAT_101d6414 == (code *)0x0) goto LAB_1008f587; cVar10 = (*DAT_101d6414)(DAT_101d6374,uVar14,0); if (cVar10 == '\0') goto LAB_1008f587; cVar10 = '\x01'; } if (*(char *)(iVar18 + 8) != cVar10) { *(char *)(iVar18 + 8) = cVar10; FUN_100312d0(); } if (*(char *)(iVar18 + 8) != '\0') { p_Var19 = endl_exref; uVar14 = (**(code **)(*(int *)piVar15[3] + 8))(); uVar14 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - ref ",uVar14); pbVar13 = (basic_ostream_> *) FUN_1001a0e0(uVar14); std::basic_ostream_>::operator<< (pbVar13,p_Var19); } iVar18 = *(int *)(DAT_101d6474 + 0x38); if (*(int *)(iVar18 + 4) == 0) { LAB_1008f68d: cVar10 = '\0'; } else { if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 2; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } uVar14 = *(undefined4 *)(iVar18 + 4); if (DAT_101d6374 == -1) { if (DAT_101d6370 == 0) { FUN_10015ea0(); if (DAT_101d6370 != 0) goto LAB_1008f647; } else { LAB_1008f647: if (DAT_101d640c != (code *)0x0) { (*DAT_101d640c)(&DAT_101d6374); } } if (DAT_101d6374 == -1) goto LAB_1008f68d; FUN_10003d20(); } if (DAT_101d6414 == (code *)0x0) goto LAB_1008f68d; cVar10 = (*DAT_101d6414)(DAT_101d6374,uVar14,0); if (cVar10 == '\0') goto LAB_1008f68d; cVar10 = '\x01'; } if (*(char *)(iVar18 + 8) != cVar10) { *(char *)(iVar18 + 8) = cVar10; FUN_100312d0(); } if (*(char *)(iVar18 + 8) != '\0') { uVar14 = FUN_10047fe0(piVar15[5],piVar15[6],piVar15[7],piVar15[8]); p_Var19 = endl_exref; uVar14 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - guid ",uVar14); pbVar13 = (basic_ostream_> *) FUN_1001a0e0(uVar14); std::basic_ostream_>::operator<< (pbVar13,p_Var19); } iVar18 = *(int *)(DAT_101d6474 + 0x38); if (*(int *)(iVar18 + 4) == 0) { LAB_1008f7b0: cVar10 = '\0'; } else { if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 3; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } uVar14 = *(undefined4 *)(iVar18 + 4); if (DAT_101d6374 == -1) { if (DAT_101d6370 == 0) { FUN_10015ea0(); if (DAT_101d6370 != 0) goto LAB_1008f76a; } else { LAB_1008f76a: if (DAT_101d640c != (code *)0x0) { (*DAT_101d640c)(&DAT_101d6374); } } if (DAT_101d6374 == -1) goto LAB_1008f7b0; FUN_10003d20(); } if (DAT_101d6414 == (code *)0x0) goto LAB_1008f7b0; cVar10 = (*DAT_101d6414)(DAT_101d6374,uVar14,0); if (cVar10 == '\0') goto LAB_1008f7b0; cVar10 = '\x01'; } if (*(char *)(iVar18 + 8) != cVar10) { *(char *)(iVar18 + 8) = cVar10; FUN_100312d0(); } if (*(char *)(iVar18 + 8) != '\0') { iVar18 = piVar15[2]; p_Var19 = endl_exref; pbVar13 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - correlation Id "); pbVar13 = std::basic_ostream_>:: operator<<(pbVar13,iVar18); std::basic_ostream_>::operator<< (pbVar13,p_Var19); } piVar16 = (int *)*piVar15; if (piVar15 != *(int **)(param_1 + 0x18)) { *(int **)piVar15[1] = piVar16; *(int *)(*piVar15 + 4) = piVar15[1]; operator_delete(piVar15); *(int *)(param_1 + 0x1c) = *(int *)(param_1 + 0x1c) + -1; } *(int *)(param_1 + 8) = *(int *)(param_1 + 8) + -1; DVar12 = GetTickCount(); FUN_1008f150(iVar2,iVar1,iVar3,iVar5,iVar4,iVar7,iVar8,iVar6,iVar9,0,DVar12); } piVar15 = piVar16; } while (piVar16 != *(int **)(param_1 + 0x18)); } ExceptionList = local_10; __security_check_cookie(uVar11 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_10093b50 at 10093b50 Signature: `undefined FUN_10093b50(void)` ```c void __thiscall FUN_10093b50(int *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4, undefined4 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8, undefined4 param_9,undefined4 param_10,OLECHAR *param_11,undefined4 param_12, undefined4 param_13,undefined4 param_14,undefined4 param_15,undefined4 param_16) { OLECHAR *psz; undefined4 uVar1; undefined4 uVar2; undefined4 uVar3; undefined4 uVar4; BSTR bstrString; char cVar5; undefined1 uVar6; int iVar7; undefined4 uVar8; undefined4 uVar9; undefined4 uVar10; char *pcVar11; BSTR local_28; undefined4 local_24; undefined4 local_20; undefined4 local_1c; undefined4 local_18; uint local_14; void *local_10; undefined1 *puStack_c; undefined4 local_8; uVar4 = param_16; uVar3 = param_15; uVar2 = param_14; uVar1 = param_13; uVar9 = param_12; psz = param_11; uVar10 = param_8; local_8 = 0xffffffff; puStack_c = &LAB_10167d48; local_10 = ExceptionList; local_14 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; local_24 = param_4; local_1c = param_6; local_18 = param_7; local_20 = param_5; local_28 = (BSTR)0x0; iVar7 = (**(code **)(*param_1 + 0x10))(param_1,¶m_9,4,&local_28,local_14); cVar5 = FUN_10048d60(iVar7 == 0,0x3e, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); if (cVar5 != '\0') { local_28 = (BSTR)0x0; iVar7 = (**(code **)(*param_1 + 0x10))(param_1,¶m_10,4,&local_28); cVar5 = FUN_10048d60(iVar7 == 0,0x3f, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); if (cVar5 != '\0') { if (psz == (OLECHAR *)0x0) { local_28 = (BSTR)0x0; } else { local_28 = SysAllocString(psz); if (local_28 == (BSTR)0x0) { /* WARNING: Subroutine does not return */ FUN_100013e0(0x8007000e); } } bstrString = local_28; local_8 = 0; iVar7 = FUN_10093780(param_1); local_8 = 0xffffffff; SysFreeString(bstrString); cVar5 = FUN_10048d60(iVar7 == 0,0x40, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar8 = 0x41; uVar6 = FUN_10093800(param_1,uVar9); cVar5 = FUN_10048d60(uVar6,uVar8,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar9 = 0x42; uVar6 = FUN_10093800(param_1,uVar1); cVar5 = FUN_10048d60(uVar6,uVar9,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar9 = 0x43; uVar6 = FUN_10093800(param_1,uVar2); cVar5 = FUN_10048d60(uVar6,uVar9,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar9 = 0x44; uVar6 = FUN_10093800(param_1,uVar3); cVar5 = FUN_10048d60(uVar6,uVar9,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar9 = 0x45; uVar6 = FUN_10093800(param_1,uVar4); cVar5 = FUN_10048d60(uVar6,uVar9,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar9 = 0x46; uVar6 = FUN_10093800(param_1,uVar10); cVar5 = FUN_10048d60(uVar6,uVar9,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar10 = 0x47; uVar6 = FUN_10093680(param_1,&local_24); cVar5 = FUN_10048d60(uVar6,uVar10,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar10 = 0x48; uVar6 = FUN_1000df40(param_1,¶m_3); cVar5 = FUN_10048d60(uVar6,uVar10,pcVar11); if (cVar5 != '\0') { pcVar11 = "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ; uVar10 = 0x49; uVar6 = FUN_1000df40(param_1,¶m_2); cVar5 = FUN_10048d60(uVar6,uVar10,pcVar11); if (cVar5 != '\0') { param_1[5] = param_1[5] + 1; } } } } } } } } } } } } ExceptionList = local_10; __security_check_cookie(local_14 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_10093e10 at 10093e10 Signature: `undefined FUN_10093e10(void)` ```c bool __thiscall FUN_10093e10(int *param_1,int *param_2) { code *pcVar1; int iVar2; int iVar3; undefined4 local_8; iVar3 = param_1[1]; pcVar1 = *(code **)(*param_1 + 0x10); param_1[1] = 0; local_8 = 0; iVar2 = (*pcVar1)(param_1,param_1 + 5,4,&local_8); FUN_10048d60(iVar2 == 0,0x5b, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); iVar3 = (**(code **)(*param_2 + 0x58))(param_2,0x56,iVar3,param_1[2]); FUN_10048e60(iVar3 == 0,iVar3,0x5d, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); return iVar3 == 0; } ``` ## FUN_10093e90 at 10093e90 Signature: `undefined FUN_10093e90(void)` ```c undefined4 __thiscall FUN_10093e90(int *param_1,undefined4 param_2,undefined4 param_3) { char cVar1; int iVar2; iVar2 = FUN_100934d0(param_1); cVar1 = FUN_10048d60(iVar2 == 0,0xb5, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); if (cVar1 != '\0') { iVar2 = (**(code **)(*param_1 + 0xc))(param_1,param_3,4,0); cVar1 = FUN_10048d60(iVar2 == 0,0xb6, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\RTCommon\\Includes\\engineservicescommon\\lmx\\CObjectInformation.h" ); if (cVar1 != '\0') { return 1; } } return 0; } ``` ## FUN_1008e910 at 1008e910 Signature: `undefined FUN_1008e910(void)` ```c undefined4 * __thiscall FUN_1008e910(int param_1,char *param_2,undefined4 param_3,undefined4 param_4) { undefined4 *puVar1; uint uStack_34; undefined **local_24 [3]; undefined4 *local_18; undefined1 *local_14; void *local_10; undefined1 *puStack_c; undefined4 local_8; local_8 = 0xffffffff; puStack_c = &LAB_10167659; local_10 = ExceptionList; uStack_34 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; local_14 = (undefined1 *)&uStack_34; ExceptionList = &local_10; puVar1 = operator_new(0x40); local_18 = puVar1; if (puVar1 != (undefined4 *)0x0) { local_8 = 1; *puVar1 = param_2; puVar1[1] = param_3; FUN_1008e6b0(param_1 + 9,puVar1 + 2,param_4); ExceptionList = local_10; return puVar1; } param_2 = (char *)0x0; std::exception::exception((exception *)local_24,¶m_2); local_24[0] = std::bad_alloc::vftable; local_8 = 0xffffffff; /* WARNING: Subroutine does not return */ _CxxThrowException(local_24,(ThrowInfo *)&DAT_101a8848); } ``` ## FUN_1008f0f0 at 1008f0f0 Signature: `undefined FUN_1008f0f0(void)` ```c undefined4 __fastcall FUN_1008f0f0(int param_1) { if (*(int *)(param_1 + 0x248) < 1) { FUN_1004d0d0(param_1 + 0x244,(undefined4 *)(param_1 + 0x248)); } return *(undefined4 *)(param_1 + 0x248); } ``` ## FUN_1008f120 at 1008f120 Signature: `undefined FUN_1008f120(void)` ```c undefined4 __fastcall FUN_1008f120(int param_1) { if (*(int *)(param_1 + 0x244) < 1) { FUN_1004d0d0((undefined4 *)(param_1 + 0x244),param_1 + 0x248); } return *(undefined4 *)(param_1 + 0x244); } ``` ## FUN_1008fc40 at 1008fc40 Signature: `undefined FUN_1008fc40(void)` ```c void __thiscall FUN_1008fc40(undefined4 *param_1,undefined4 param_2) { int iVar1; iVar1 = (**(code **)(*(int *)*param_1 + 0x2c))((int *)*param_1,param_2); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar1,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x55); } return; } ``` ## FUN_1008fc70 at 1008fc70 Signature: `undefined FUN_1008fc70(void)` ```c void __thiscall FUN_1008fc70(undefined4 *param_1,undefined4 param_2) { int iVar1; iVar1 = (**(code **)(*(int *)*param_1 + 0x34))((int *)*param_1,param_2); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar1,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x65); } return; } ``` ## FUN_1008fca0 at 1008fca0 Signature: `undefined FUN_1008fca0(void)` ```c void __thiscall FUN_1008fca0(int *param_1,int *param_2) { undefined4 *puVar1; int iVar2; uint local_14; void *local_10; undefined1 *puStack_c; undefined4 local_8; puStack_c = &LAB_10167798; local_10 = ExceptionList; ExceptionList = &local_10; local_14 = -(uint)(*(char *)param_2 != '\0') & 0xffff; puVar1 = (undefined4 *)*param_1; param_2 = (int *)0x0; local_8 = 1; if (puVar1 != (undefined4 *)0x0) { (**(code **)*puVar1)(puVar1,&DAT_1017b948,¶m_2,DAT_101d60b8 ^ (uint)&stack0xfffffffc); } local_8 = 2; iVar2 = (**(code **)(*param_2 + 0x20))(param_2,&local_14); if (iVar2 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar2,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0xf1); } local_8 = 0xffffffff; if (param_2 != (int *)0x0) { (**(code **)(*param_2 + 8))(param_2); } ExceptionList = local_10; return; } ``` ## FUN_1008fd50 at 1008fd50 Signature: `undefined FUN_1008fd50(void)` ```c /* WARNING: Function: __alloca_probe replaced with injection: alloca_probe */ void __fastcall FUN_1008fd50(int param_1) { int iVar1; int *piVar2; int iVar3; char cVar4; byte bVar5; uint uVar6; undefined4 uVar7; UINT UVar8; wchar_t *pwVar9; int iVar10; OLECHAR *psz; uint uVar11; basic_ostream_> *pbVar12; undefined4 ****ppppuVar13; undefined4 *puVar14; DWORD DVar15; LONG LVar16; HRESULT HVar17; undefined2 *puVar18; int *piVar19; int iVar20; code *pcVar21; int *piVar22; int *piVar23; undefined1 uVar24; uint uVar25; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *p_Var26; short sVar27; wchar_t *pwVar28; size_t sVar29; int local_1868; int local_1864 [14]; DWORD local_182c; int *local_1828; undefined4 local_1824; undefined4 local_1820; undefined4 local_181c; undefined4 local_1818; undefined4 local_1814; undefined4 local_1810; undefined4 local_180c; int *local_1808; undefined4 local_1804; undefined4 local_1800; undefined4 local_17fc; undefined4 local_17f8; FILETIME local_17f4; int *local_17ec; BSTR local_17e8; int *local_17e4; BSTR local_17e0; int *local_17dc; BSTR local_17d8; FILETIME local_17d4; int *local_17cc; BSTR local_17c8; int *local_17c4; BSTR local_17c0; FILETIME local_17bc; int *local_17b4; BSTR local_17b0; undefined4 local_17ac; undefined4 local_17a8; undefined4 local_17a4; undefined4 local_17a0; undefined4 local_179c; undefined4 local_1798; undefined4 local_1794; undefined4 local_1790; undefined1 local_178c; undefined4 local_178a; undefined2 local_1786; undefined2 uStack_1784; undefined2 local_1782; undefined2 uStack_1780; undefined2 local_177e; undefined2 uStack_177c; undefined2 local_177a; undefined4 local_1778; short local_1774 [2]; short local_1770 [2]; int *local_176c; int *local_1768; undefined4 local_1764; int *local_1760; int *local_175c; BSTR local_1758; int *local_1754; BSTR local_1750; int *local_174c; BSTR local_1748; int *local_1744; int *local_1740; int *local_173c; int *local_1738; uint local_1734; uint local_1730; FILETIME local_172c; undefined **local_1724; undefined4 local_1720; void *local_171c; undefined4 local_1718; undefined4 local_1714; undefined4 *local_1710; int *local_170c; BSTR local_1708; int *local_1704; BSTR local_1700; FILETIME local_16fc; int *local_16f4; BSTR local_16f0; BSTR local_16ec; BSTR local_16e8; byte local_16e1; int *local_16e0; byte local_16d9; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *local_16d8; int *local_16d4; int local_16d0; short local_16cc [2]; int local_16c8; undefined4 local_16c4; short local_16c0; short local_16bc [2]; int local_16b8; undefined4 local_16b4; short local_16b0; byte local_16ac; undefined1 uStack_16ab; undefined2 uStack_16aa; undefined2 uStack_16a8; short sStack_16a6; undefined2 uStack_16a4; undefined2 uStack_16a2; wchar_t local_318 [260]; undefined1 local_110 [20]; void *local_fc [4]; undefined4 local_ec; uint local_e8; void *local_e0 [4]; undefined4 local_d0; uint local_cc; void *local_c4 [4]; undefined4 local_b4; uint local_b0; void *local_a8 [4]; undefined4 local_98; uint local_94; undefined2 local_8c [2]; undefined4 local_88; undefined4 local_84; undefined2 local_80; undefined2 local_7c [2]; undefined4 local_78; undefined4 local_74; undefined2 local_70; undefined2 local_6c [2]; undefined4 local_68; undefined4 local_64; undefined2 local_60; undefined2 local_5c [2]; undefined4 local_58; undefined4 local_54; undefined2 local_50; undefined4 ***local_4c [4]; undefined4 local_3c; uint local_38; undefined4 local_30; undefined4 local_20; uint local_1c; uint local_14; void *local_10; undefined1 *puStack_c; int local_8; local_8 = 0xffffffff; puStack_c = &LAB_10167ac7; local_10 = ExceptionList; uVar6 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; local_16d0 = param_1; local_14 = uVar6; if (((*(int *)(param_1 + 8) < 100) && (*(int *)(param_1 + 0x28) != 0)) && (local_16e0 = (int *)**(int **)(param_1 + 0x24), local_16e0 != *(int **)(param_1 + 0x24))) { do { piVar23 = local_16e0; if (99 < *(int *)(local_16d0 + 8)) break; local_1c = 7; local_20 = 0; local_30 = (undefined4 *)((uint)local_30 & 0xffff0000); local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_8._0_1_ = 1; local_8._1_3_ = 0; local_16e1 = local_16e1 & 0xfe; local_17ac = 0; local_17a8 = 0; piVar22 = local_16e0 + 2; (**(code **)(*(int *)local_16e0[2] + 0x10))(0,uVar6); local_16f0 = (BSTR)0x0; local_16e8 = (BSTR)0x0; local_16f4 = (int *)0x0; local_8 = CONCAT31(local_8._1_3_,5); (**(code **)(*(int *)*piVar22 + 4))(&local_16f4); iVar10 = *local_16f4; local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)local_16f4; uVar7 = FUN_10030d80(); (**(code **)(iVar10 + 0x40))(local_16d8,uVar7); uVar7 = (**(code **)(*(int *)*piVar22 + 8))(); cVar4 = FUN_10134a10(uVar7); if (((cVar4 == '\0') || (local_16e8 == (BSTR)0x0)) || (UVar8 = SysStringLen(local_16e8), UVar8 == 0)) { LAB_1008fee4: psz = (OLECHAR *)(**(code **)(*(int *)*piVar22 + 8))(); if (psz != (OLECHAR *)0x0) { SysFreeString((BSTR)0x0); local_16f0 = SysAllocString(psz); if (local_16f0 == (BSTR)0x0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(0x8007000e,0, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\MagellanPublic\\Includes\\ClassUtilities\\AAComBSTR.h" ,0xec); } } } else { sVar29 = 7; pwVar28 = L"MyArea."; pwVar9 = (wchar_t *)(**(code **)(*(int *)*piVar22 + 8))(); iVar10 = _wcsnicmp(pwVar9,pwVar28,sVar29); if (iVar10 == 0) goto LAB_1008fee4; sVar29 = 0xc; pwVar28 = L"MyContainer."; pwVar9 = (wchar_t *)(**(code **)(*(int *)*piVar22 + 8))(); iVar10 = _wcsnicmp(pwVar9,pwVar28,sVar29); if (iVar10 == 0) goto LAB_1008fee4; if (local_16e8 != (BSTR)0x0) { SysFreeString((BSTR)0x0); local_16f0 = (BSTR)FUN_1008fb20(); } } piVar2 = local_16e0; if (((local_16e0[9] == 4) && ((short)local_16e0[0xb] == 0x1f42)) || ((cVar4 = FUN_10089cb0(local_16f0,&local_16ac,&local_1764,&local_16e1,&local_30,local_4c, &local_17ac,1), cVar4 == '\0' || (local_16ac == 0)))) { LAB_10090433: if ((piVar23[9] == 4) && (((sVar27 = (short)piVar23[0xb], sVar27 == 8 || (sVar27 == 4)) || (sVar27 == 3)))) { if (((*(int *)(local_16d0 + 0x10) != -1) || (*(int *)(local_16d0 + 0xc) != -1)) && (DVar15 = GetTickCount(), 44999 < DVar15 - *(int *)(local_16d0 + 0x14))) { *(DWORD *)(local_16d0 + 0x14) = DVar15; *(undefined4 *)(local_16d0 + 0xc) = 0xffffffff; *(undefined4 *)(local_16d0 + 0x10) = 0xffffffff; } LVar16 = CompareFileTime((FILETIME *)(piVar23 + 0xc),(FILETIME *)(local_16d0 + 0xc)); if (LVar16 != 1) goto LAB_100904ae; local_1710 = (undefined4 *)*piVar22; *(int *)(local_16d0 + 0x54) = *(int *)(local_16d0 + 0x54) + 1; piVar22 = (int *)*piVar22; puVar14 = (undefined4 *)FUN_10005170(); local_8._0_1_ = 0x45; local_5c[0] = 0; local_50 = 10000; local_58 = 5; local_54 = 0; (**(code **)(*piVar22 + 0xc))(0,*puVar14,0xffffffff,DAT_101d6504,DAT_101d6508,local_5c,0); local_8 = CONCAT31(local_8._1_3_,5); if (local_17e4 != (int *)0x0) { (**(code **)(*local_17e4 + 8))(local_17e4); } SysFreeString(local_17e0); iVar10 = local_16d0; local_16d4 = (int *)*piVar2; if (piVar2 != *(int **)(local_16d0 + 0x24)) { *(int **)piVar2[1] = local_16d4; *(int *)(*piVar2 + 4) = piVar2[1]; operator_delete(piVar2); *(int *)(iVar10 + 0x28) = *(int *)(iVar10 + 0x28) + -1; } local_16e0 = local_16d4; if (local_1710 != (undefined4 *)0x0) { (**(code **)*local_1710)(1); } local_8._0_1_ = 3; pcVar21 = SysFreeString_exref; if (local_16f4 != (int *)0x0) { (**(code **)(*local_16f4 + 8))(local_16f4); pcVar21 = SysFreeString_exref; } LAB_10091cf8: local_8._0_1_ = 2; (*pcVar21)(local_16e8); local_8._0_1_ = 1; (*pcVar21)(local_16f0); local_8 = (uint)local_8._1_3_ << 8; if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_8 = 0xffffffff; if (7 < local_1c) { operator_delete(local_30); } goto LAB_10091d53; } LAB_100904ae: local_16fc.dwLowDateTime = 0; local_16fc.dwHighDateTime = 0; local_172c.dwLowDateTime = 0; local_172c.dwHighDateTime = 0; local_1730 = local_1730 & 0xffffff00; local_1734 = local_1734 & 0xffffff00; if (*(int *)(*(int *)(local_16d0 + 0x30) + 0x5e4) == 0) { LAB_1009148b: local_1738 = (int *)0x0; local_8._0_1_ = 0x30; (**(code **)(*(int *)*piVar22 + 4))(&local_1738); local_1724 = FastStream::vftable; local_1720 = 0; local_1718 = 8; local_1714 = 0; local_171c = malloc(8); if (local_171c == (void *)0x0) { local_1718 = 0; local_17a4 = 0x8007000e; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_17a4,(ThrowInfo *)&DAT_101a8794); } local_8._0_1_ = 0x31; local_1808 = local_1738; if (local_1738 != (int *)0x0) { (**(code **)(*local_1738 + 4))(local_1738); } local_1804 = 0; local_1800 = 0; local_17fc = 0; local_17f8 = 0; local_8 = CONCAT31(local_8._1_3_,0x38); *(int *)(local_16d0 + 4) = *(int *)(local_16d0 + 4) + 1; local_16d4 = (int *)(local_16d0 + 4); local_16d9 = 0x10; iVar10 = (*(code *)local_1724[4])(&local_1724,&local_16d9,1,0); if (iVar10 < 0) goto LAB_10091e8e; uVar11 = FUN_10003390(0x10); local_1710 = (undefined4 *)(uVar11 & 0xffff); iVar10 = (*(code *)local_1724[4])(&local_1724,&local_1710,2,0); if (((iVar10 < 0) || (iVar10 = (*(code *)local_1724[4])(&local_1724,local_16d4,4,0), iVar10 < 0)) || (iVar10 = (*(code *)local_1724[4])(&local_1724,piVar2 + 4,0x10,0), iVar10 < 0)) goto LAB_10091e8e; if ((char)local_1730 == '\0') { LAB_10091659: piVar19 = piVar2 + 8; } else { local_17d4.dwLowDateTime = 0; local_17d4.dwHighDateTime = 0; LVar16 = CompareFileTime(&local_16fc,&local_17d4); if (LVar16 == 1) { if (((int)local_16fc.dwHighDateTime < piVar2[0xd]) || (((int)local_16fc.dwHighDateTime <= piVar2[0xd] && (local_16fc.dwLowDateTime <= (uint)piVar2[0xc])))) goto LAB_10091659; } local_8c[0] = 0xffff; local_88 = 0; local_84 = 1; local_80 = 0; piVar19 = (int *)local_8c; } iVar10 = (*(code *)local_1724[4])(&local_1724,piVar19,0x10,0); if (((iVar10 < 0) || (iVar10 = (*(code *)local_1724[4])(&local_1724,piVar2 + 0xc,8,0), iVar10 < 0)) || (iVar10 = (*(code *)local_1724[4])(&local_1724,piVar2 + 0xe,8,0), piVar2 = local_1808, iVar10 < 0)) { LAB_10091e8e: /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar10,0, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\MagellanPublic\\Includes\\BaseRuntimeComponentServer\\LoadSave.h" ,0x19); } (**(code **)(*local_1808 + 0x18))(local_1808,&local_1724,0); cVar4 = FUN_100408d0(); if (cVar4 != '\0') { iVar10 = *local_16d4; p_Var26 = endl_exref; pbVar12 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - correlationId ") ; pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,iVar10); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { uVar7 = FUN_10047fe0(piVar23[4],piVar23[5],piVar23[6],piVar23[7]); p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - guid ",uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { uVar7 = FUN_1002f5f0(piVar2); p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - ref ",uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { uVar11 = local_1730; uVar25 = local_1734; p_Var26 = endl_exref; pbVar12 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - timeOfLastDeployIsValid ",local_1730, L" timeOfLastConfigChangeIsValid "); uVar24 = (undefined1)uVar25; pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,SUB41(uVar11,0)); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(pbVar12); pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,(bool)uVar24); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { puVar14 = (undefined4 *) FUN_10054120(local_c4,local_16fc.dwLowDateTime,local_16fc.dwHighDateTime); local_8._0_1_ = 0x39; if (7 < (uint)puVar14[5]) { puVar14 = (undefined4 *)*puVar14; } p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - subscribedLastDeploy ",puVar14); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8 = CONCAT31(local_8._1_3_,0x38); if (7 < local_b0) { operator_delete(local_c4[0]); } local_b0 = 7; local_b4 = 0; local_c4[0] = (void *)((uint)local_c4[0] & 0xffff0000); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { puVar14 = (undefined4 *) FUN_10054120(local_fc,local_172c.dwLowDateTime,local_172c.dwHighDateTime); local_8._0_1_ = 0x3a; if (7 < (uint)puVar14[5]) { puVar14 = (undefined4 *)*puVar14; } p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - subscribedLastCfgChange ",puVar14); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8 = CONCAT31(local_8._1_3_,0x38); if (7 < local_e8) { operator_delete(local_fc[0]); } local_e8 = 7; local_ec = 0; local_fc[0] = (void *)((uint)local_fc[0] & 0xffff0000); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { puVar14 = (undefined4 *)FUN_10054120(local_e0,piVar23[0xc],piVar23[0xd]); local_8._0_1_ = 0x3b; if (7 < (uint)puVar14[5]) { puVar14 = (undefined4 *)*puVar14; } p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - it -> lastDeploymentChange ",puVar14); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8 = CONCAT31(local_8._1_3_,0x38); if (7 < local_cc) { operator_delete(local_e0[0]); } local_cc = 7; local_d0 = 0; local_e0[0] = (void *)((uint)local_e0[0] & 0xffff0000); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { puVar14 = (undefined4 *)FUN_10054120(local_a8,piVar23[0xe],piVar23[0xf]); local_8._0_1_ = 0x3c; if (7 < (uint)puVar14[5]) { puVar14 = (undefined4 *)*puVar14; } p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - it -> lastConfigChange ",puVar14); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8 = CONCAT31(local_8._1_3_,0x38); if (7 < local_94) { operator_delete(local_a8[0]); } local_94 = 7; local_98 = 0; local_a8[0] = (void *)((uint)local_a8[0] & 0xffff0000); } piVar23 = local_16d4; local_1814 = 1; local_1810 = 1; local_180c = 1; FUN_1010ad00(0,&local_1814,0x10,&local_1724,0,2,local_16d0,*local_16d4,0,0,0); local_1868 = *piVar23; piVar23 = local_1864; for (iVar10 = 0xe; iVar10 != 0; iVar10 = iVar10 + -1) { *piVar23 = *piVar22; piVar22 = piVar22 + 1; piVar23 = piVar23 + 1; } local_182c = GetTickCount(); iVar3 = local_16d0; iVar10 = *(int *)(local_16d0 + 0x18); iVar20 = FUN_1008e840(iVar10,*(undefined4 *)(iVar10 + 4),&local_1868); iVar1 = *(int *)(iVar3 + 0x1c); if (iVar1 == 0x3fffffe) { /* WARNING: Subroutine does not return */ std::_Xlength_error("list too long"); } *(int *)(iVar3 + 0x1c) = iVar1 + 1; *(int *)(iVar10 + 4) = iVar20; **(int **)(iVar20 + 4) = iVar20; piVar23 = (int *)*local_16e0; if (local_16e0 != *(int **)(local_16d0 + 0x24)) { *(int **)local_16e0[1] = piVar23; *(int *)(*local_16e0 + 4) = local_16e0[1]; operator_delete(local_16e0); *(int *)(local_16d0 + 0x28) = *(int *)(local_16d0 + 0x28) + -1; } *(int *)(local_16d0 + 8) = *(int *)(local_16d0 + 8) + 1; pcVar21 = SysFreeString_exref; local_8._0_1_ = 0x40; local_16e0 = piVar23; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x3f; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x3e; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x3d; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x31; (**(code **)(*local_1808 + 8))(local_1808); local_8._0_1_ = 0x30; local_1724 = FastStream::vftable; if (local_171c != (void *)0x0) { free(local_171c); } local_8._0_1_ = 5; if (local_1738 != (int *)0x0) { (**(code **)(*local_1738 + 8))(local_1738); } LAB_10091415: local_8._0_1_ = 3; if (local_16f4 != (int *)0x0) { (**(code **)(*local_16f4 + 8))(local_16f4); } goto LAB_10091cf8; } FUN_10005170(); local_8._0_1_ = 0x22; FUN_10005170(); local_16ec = (BSTR)0x0; local_8 = CONCAT31(local_8._1_3_,0x24); SysFreeString((BSTR)0x0); local_16ec = (BSTR)0x0; local_16d8 = *(_func_basic_ostream_>_ptr_basic_ostream_>_ptr **)(*(int *)(local_16d0 + 0x30) + 0x5e4); if (local_170c != (int *)0x0) { (**(code **)(*local_170c + 8))(local_170c); local_170c = (int *)0x0; } iVar10 = (**(code **)(*(int *)local_16d8 + 0x14)) (local_16d8,*(undefined4 *)(*(int *)(local_16d0 + 0x30) + 0x5ac), local_1774,local_16cc,&local_16ec,&local_170c); if (iVar10 < 0) { if (local_16cc[0] != 0) goto LAB_1009081b; LAB_1009089a: cVar4 = FUN_100408d0(); if (cVar4 != '\0') { swprintf_s(local_318,0x104,L"", (int)local_16cc[0],local_16c8,local_16c4,(int)local_16c0); p_Var26 = endl_exref; sVar27 = local_1774[0]; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - value of m_hRefGRTimeOfLastDeploy can\'t be used status " ,local_318,L" quality "); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,sVar27); LAB_10090933: std::basic_ostream_>::operator<< (pbVar12,p_Var26); } LAB_1009093b: SysFreeString(local_16ec); local_16ec = (BSTR)0x0; local_16d8 = *(_func_basic_ostream_>_ptr_basic_ostream_>_ptr **)(*(int *)(local_16d0 + 0x30) + 0x5e4); if (local_1704 != (int *)0x0) { (**(code **)(*local_1704 + 8))(local_1704); local_1704 = (int *)0x0; } iVar10 = (**(code **)(*(int *)local_16d8 + 0x14)) (local_16d8,*(undefined4 *)(*(int *)(local_16d0 + 0x30) + 0x5b0), local_1770,local_16bc,&local_16ec,&local_1704); if (iVar10 < 0) { if (local_16bc[0] != 0) goto LAB_10090c4b; LAB_10090cca: cVar4 = FUN_100408d0(); if (cVar4 != '\0') { swprintf_s(local_318,0x104,L"", (int)local_16bc[0],local_16b8,local_16b4,(int)local_16b0); p_Var26 = endl_exref; sVar27 = local_1770[0]; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - value of m_hRefGRTimeOfLastConfigChange can\'t be used status " ,local_318,L" quality "); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); pbVar12 = std::basic_ostream_> ::operator<<(pbVar12,sVar27); LAB_10090d63: std::basic_ostream_>:: operator<<(pbVar12,p_Var26); } } else { if (local_16bc[0] == 0) { if (local_16b8 == 1) goto LAB_10090cca; cVar4 = FUN_100408d0(); if (cVar4 != '\0') { swprintf_s(local_318,0x104,L"", (int)local_16bc[0],local_16b8,local_16b4,(int)local_16b0); p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - status of GR subscription is ",local_318, L" calling OnSetAttributeResult directly "); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>:: operator<<(pbVar12,p_Var26); } local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)*piVar22; local_1754 = (int *)0x0; local_1750 = (BSTR)0x0; if (DAT_101d6470 == (int *)0x0) { local_1760 = (int *)0x0; HVar17 = CoGetClassObject((IID *)&DAT_1017b1c0,0x17,(LPVOID)0x0,(IID *)&DAT_1017b1d0 ,&local_1760); if (HVar17 < 0) { local_1794 = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_1794,(ThrowInfo *)&DAT_101a8794); } DAT_101d6470 = local_1760; } (**(code **)(*DAT_101d6470 + 0xc))(DAT_101d6470,&local_1754); if (local_1754 == (int *)0x0) { local_1790 = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_1790,(ThrowInfo *)&DAT_101a8794); } local_8._0_1_ = 0x27; (**(code **)(*(int *)local_16d8 + 0xc)) (0,local_1754,0xffffffff,DAT_101d6504,DAT_101d6508,local_16bc,0); local_8 = CONCAT31(local_8._1_3_,0x24); if (local_1754 != (int *)0x0) { (**(code **)(*local_1754 + 8))(local_1754); } SysFreeString(local_1750); local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)*piVar22; piVar23 = (int *)*piVar2; if (piVar2 != *(int **)(local_16d0 + 0x24)) { *(int **)piVar2[1] = piVar23; *(int *)(*piVar2 + 4) = piVar2[1]; operator_delete(piVar2); *(int *)(local_16d0 + 0x28) = *(int *)(local_16d0 + 0x28) + -1; } local_16e0 = piVar23; if (local_16d8 != (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)0x0) { (*(code *)**(undefined4 **)local_16d8)(1); } local_8._0_1_ = 0x23; SysFreeString(local_16ec); local_8._0_1_ = 0x22; if (local_1704 != (int *)0x0) { (**(code **)(*local_1704 + 8))(local_1704); } SysFreeString(local_1700); local_8._0_1_ = 5; if (local_170c != (int *)0x0) { (**(code **)(*local_170c + 8))(local_170c); } SysFreeString(local_1708); local_8._0_1_ = 3; if (local_16f4 != (int *)0x0) { (**(code **)(*local_16f4 + 8))(local_16f4); } local_8._0_1_ = 2; SysFreeString(local_16e8); local_8._0_1_ = 1; SysFreeString(local_16f0); local_8 = (uint)local_8._1_3_ << 8; if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_8 = 0xffffffff; if (local_1c < 8) goto LAB_10090804; operator_delete(local_30); local_30 = (undefined4 *)((uint)local_30 & 0xffff0000); goto LAB_10091d59; } LAB_10090c4b: if (local_1770[0] != 0xc0) goto LAB_10090cca; local_16d4 = (int *)(**(code **)(*local_1704 + 0x78))(local_1704,&local_172c); if (local_16d4 == (int *)0x0) { local_1734 = CONCAT31(local_1734._1_3_,1); } else { cVar4 = FUN_100408d0(); if (cVar4 != '\0') { piVar19 = local_16d4; p_Var26 = endl_exref; pbVar12 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - failed to extract time from value2 hr "); pbVar12 = std:: basic_ostream_>:: operator<<(pbVar12,(long)piVar19); goto LAB_10090d63; } } } if (((char)local_1730 == '\0') || ((char)local_1734 == '\0')) { LAB_10091434: local_8._0_1_ = 0x23; SysFreeString(local_16ec); local_8._0_1_ = 0x22; if (local_1704 != (int *)0x0) { (**(code **)(*local_1704 + 8))(local_1704); } SysFreeString(local_1700); local_8 = CONCAT31(local_8._1_3_,5); if (local_170c != (int *)0x0) { (**(code **)(*local_170c + 8))(local_170c); } SysFreeString(local_1708); goto LAB_1009148b; } if ((piVar2[0xd] < (int)local_16fc.dwHighDateTime) || ((piVar2[0xd] <= (int)local_16fc.dwHighDateTime && ((uint)piVar2[0xc] < local_16fc.dwLowDateTime)))) { local_16d4 = (int *)0x0; } else { local_16d4 = (int *)0x1; } local_17bc.dwLowDateTime = 0; local_17bc.dwHighDateTime = 0; LVar16 = CompareFileTime(&local_16fc,&local_17bc); local_16d9 = LVar16 == 1 & (byte)local_16d4; if ((short)piVar2[8] != 0) goto LAB_10091434; if ((piVar2[9] != 4) || ((((sVar27 = (short)piVar2[0xb], sVar27 != 3 && (sVar27 != 4)) && (sVar27 != 8)) || (local_16d9 == 0)))) { if ((((short)piVar2[8] == 0) && (piVar2[9] == 4)) && ((short)piVar2[0xb] == 6)) { local_17f4.dwLowDateTime = 0; local_17f4.dwHighDateTime = 0; LVar16 = CompareFileTime(&local_172c,&local_17f4); if (LVar16 == 1) { if ((((int)local_172c.dwHighDateTime <= piVar2[0xf]) && (((int)local_172c.dwHighDateTime < piVar2[0xf] || (local_172c.dwLowDateTime <= (uint)piVar2[0xe])))) && (local_16d9 != 0)) goto LAB_10090e81; } } goto LAB_10091434; } LAB_10090e81: local_1710 = (undefined4 *)*piVar22; cVar4 = FUN_100408d0(); if (cVar4 != '\0') { p_Var26 = endl_exref; pbVar12 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L"CReferenceStringResolver::ProcessUnresolvedReferences - No resolve attempt sent to the GR: " ); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { swprintf_s(local_318,0x104,L"", (int)(short)piVar2[8],piVar2[9],piVar2[10],(int)(short)piVar2[0xb]); p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - reasonForRebind: ", local_318); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { local_16d4 = (int *)FUN_10005330(piVar23[0xc],piVar23[0xd]); local_8._0_1_ = 0x29; local_16e0 = (int *)FUN_10005330(local_16fc.dwLowDateTime,local_16fc.dwHighDateTime); local_8 = CONCAT31(local_8._1_3_,0x2a); local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)(local_16d4 + 1); SysFreeString((BSTR)local_16d4[1]); p_Var26 = local_16d8; iVar10 = (**(code **)(*(int *)*local_16d4 + 0x74))((int *)*local_16d4); if (iVar10 < 0) { _com_issue_errorex(iVar10,(IUnknown *)*local_16d4,(_GUID *)&DAT_1017ae18); } local_16d4 = *(int **)local_16d8; if (local_16d4 == (int *)0x0) { local_16d4 = (int *)&DAT_1017a514; } local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)(local_16e0 + 1); SysFreeString((BSTR)local_16e0[1]); iVar10 = (**(code **)(*(int *)*local_16e0 + 0x74))((int *)*local_16e0,local_16d8); if (iVar10 < 0) { _com_issue_errorex(iVar10,(IUnknown *)*local_16e0,(_GUID *)&DAT_1017ae18); } puVar18 = *(undefined2 **)local_16d8; if (puVar18 == (undefined2 *)0x0) { puVar18 = &DAT_1017a514; } uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - subscribedLastDeploy ",puVar18, L" it->lastDeploymentChange ",local_16d4,endl_exref); uVar7 = FUN_1001a0e0(uVar7); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8._0_1_ = 0x29; if (local_17cc != (int *)0x0) { (**(code **)(*local_17cc + 8))(local_17cc); } SysFreeString(local_17c8); local_8 = CONCAT31(local_8._1_3_,0x24); if (local_17ec != (int *)0x0) { (**(code **)(*local_17ec + 8))(local_17ec); } SysFreeString(local_17e8); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { local_16d4 = (int *)FUN_10005330(piVar23[0xe],piVar23[0xf]); local_8._0_1_ = 0x2b; local_16e0 = (int *)FUN_10005330(local_172c.dwLowDateTime,local_172c.dwHighDateTime); local_8 = CONCAT31(local_8._1_3_,0x2c); local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)(local_16d4 + 1); SysFreeString((BSTR)local_16d4[1]); p_Var26 = local_16d8; iVar10 = (**(code **)(*(int *)*local_16d4 + 0x74))((int *)*local_16d4); if (iVar10 < 0) { _com_issue_errorex(iVar10,(IUnknown *)*local_16d4,(_GUID *)&DAT_1017ae18); } local_16d4 = *(int **)local_16d8; if (local_16d4 == (int *)0x0) { local_16d4 = (int *)&DAT_1017a514; } local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)(local_16e0 + 1); SysFreeString((BSTR)local_16e0[1]); iVar10 = (**(code **)(*(int *)*local_16e0 + 0x74))((int *)*local_16e0,local_16d8); if (iVar10 < 0) { _com_issue_errorex(iVar10,(IUnknown *)*local_16e0,(_GUID *)&DAT_1017ae18); } puVar18 = *(undefined2 **)local_16d8; if (puVar18 == (undefined2 *)0x0) { puVar18 = &DAT_1017a514; } uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - subscribedLastCfgChange ",puVar18, L" it->lastConfigChange ",local_16d4,endl_exref); uVar7 = FUN_1001a0e0(uVar7); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); local_8._0_1_ = 0x2b; if (local_17b4 != (int *)0x0) { (**(code **)(*local_17b4 + 8))(local_17b4); } SysFreeString(local_17b0); local_8 = CONCAT31(local_8._1_3_,0x24); if (local_17c4 != (int *)0x0) { (**(code **)(*local_17c4 + 8))(local_17c4); } SysFreeString(local_17c0); } *(int *)(local_16d0 + 0x54) = *(int *)(local_16d0 + 0x54) + 1; piVar2[3] = 1; DVar15 = GetTickCount(); *(DWORD *)(local_16d0 + 0x14) = DVar15; *(DWORD *)(local_16d0 + 0xc) = local_16fc.dwLowDateTime; *(DWORD *)(local_16d0 + 0x10) = local_16fc.dwHighDateTime; piVar22 = (int *)*piVar22; local_175c = (int *)0x0; local_1758 = (BSTR)0x0; if (DAT_101d6470 == (int *)0x0) { local_176c = (int *)0x0; HVar17 = CoGetClassObject((IID *)&DAT_1017b1c0,0x17,(LPVOID)0x0,(IID *)&DAT_1017b1d0, &local_176c); if (HVar17 < 0) { local_179c = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_179c,(ThrowInfo *)&DAT_101a8794); } DAT_101d6470 = local_176c; } (**(code **)(*DAT_101d6470 + 0xc))(DAT_101d6470,&local_175c); if (local_175c == (int *)0x0) { local_1778 = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_1778,(ThrowInfo *)&DAT_101a8794); } local_8._0_1_ = 0x2d; local_6c[0] = 0; local_60 = 10000; local_68 = 5; local_64 = 0; (**(code **)(*piVar22 + 0xc)) (0,local_175c,0xffffffff,DAT_101d6504,DAT_101d6508,local_6c,0); local_8 = CONCAT31(local_8._1_3_,0x24); if (local_175c != (int *)0x0) { (**(code **)(*local_175c + 8))(local_175c); } SysFreeString(local_1758); iVar10 = local_16d0; local_16d4 = (int *)*piVar2; if (piVar2 != *(int **)(local_16d0 + 0x24)) { *(int **)piVar2[1] = local_16d4; *(int *)(*piVar2 + 4) = piVar2[1]; operator_delete(piVar2); *(int *)(iVar10 + 0x28) = *(int *)(iVar10 + 0x28) + -1; } local_16e0 = local_16d4; if (local_1710 != (undefined4 *)0x0) { (**(code **)*local_1710)(1); } pcVar21 = SysFreeString_exref; local_8._0_1_ = 0x23; SysFreeString(local_16ec); local_8._0_1_ = 0x22; if (local_1704 != (int *)0x0) { (**(code **)(*local_1704 + 8))(local_1704); } SysFreeString(local_1700); local_8._0_1_ = 5; if (local_170c != (int *)0x0) { (**(code **)(*local_170c + 8))(local_170c); } SysFreeString(local_1708); goto LAB_10091415; } if (local_16cc[0] != 0) { LAB_1009081b: if (local_1774[0] != 0xc0) goto LAB_1009089a; local_16d4 = (int *)(**(code **)(*local_170c + 0x78))(local_170c,&local_16fc); if (local_16d4 == (int *)0x0) { local_1730 = CONCAT31(local_1730._1_3_,1); } else { cVar4 = FUN_100408d0(); if (cVar4 != '\0') { piVar19 = local_16d4; p_Var26 = endl_exref; pbVar12 = (basic_ostream_> *) FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - failed to extract time from value hr "); pbVar12 = std::basic_ostream_> ::operator<<(pbVar12,(long)piVar19); goto LAB_10090933; } } goto LAB_1009093b; } if (local_16c8 == 1) goto LAB_1009089a; cVar4 = FUN_100408d0(); if (cVar4 != '\0') { swprintf_s(local_318,0x104,L"", (int)local_16cc[0],local_16c8,local_16c4,(int)local_16c0); p_Var26 = endl_exref; uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38), L" - status of GR subscription is ",local_318, L" calling OnSetAttributeResult directly "); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)*piVar22; local_174c = (int *)0x0; local_1748 = (BSTR)0x0; if (DAT_101d6470 == (int *)0x0) { local_1768 = (int *)0x0; HVar17 = CoGetClassObject((IID *)&DAT_1017b1c0,0x17,(LPVOID)0x0,(IID *)&DAT_1017b1d0, &local_1768); if (HVar17 < 0) { local_1798 = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_1798,(ThrowInfo *)&DAT_101a8794); } DAT_101d6470 = local_1768; } (**(code **)(*DAT_101d6470 + 0xc))(DAT_101d6470,&local_174c); if (local_174c == (int *)0x0) { local_17a0 = 0x80004005; /* WARNING: Subroutine does not return */ _CxxThrowException(&local_17a0,(ThrowInfo *)&DAT_101a8794); } local_8._0_1_ = 0x25; (**(code **)(*(int *)local_16d8 + 0xc)) (0,local_174c,0xffffffff,DAT_101d6504,DAT_101d6508,local_16cc,0); local_8 = CONCAT31(local_8._1_3_,0x24); if (local_174c != (int *)0x0) { (**(code **)(*local_174c + 8))(local_174c); } SysFreeString(local_1748); local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)*piVar22; piVar23 = (int *)*piVar2; if (piVar2 != *(int **)(local_16d0 + 0x24)) { *(int **)piVar2[1] = piVar23; *(int *)(*piVar2 + 4) = piVar2[1]; operator_delete(piVar2); *(int *)(local_16d0 + 0x28) = *(int *)(local_16d0 + 0x28) + -1; } local_16e0 = piVar23; if (local_16d8 != (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)0x0) { (*(code *)**(undefined4 **)local_16d8)(1); } local_8._0_1_ = 0x23; SysFreeString(local_16ec); local_8._0_1_ = 0x22; if (local_1704 != (int *)0x0) { (**(code **)(*local_1704 + 8))(local_1704); } SysFreeString(local_1700); local_8._0_1_ = 5; if (local_170c != (int *)0x0) { (**(code **)(*local_170c + 8))(local_170c); } SysFreeString(local_1708); local_8._0_1_ = 3; if (local_16f4 != (int *)0x0) { (**(code **)(*local_16f4 + 8))(local_16f4); } local_8._0_1_ = 2; SysFreeString(local_16e8); local_8._0_1_ = 1; SysFreeString(local_16f0); local_8 = (uint)local_8._1_3_ << 8; if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_8 = 0xffffffff; if (7 < local_1c) { operator_delete(local_30); } LAB_10090804: local_30 = (undefined4 *)((uint)local_30 & 0xffff0000); } else { sVar29 = 7; pwVar28 = L"MyHost."; pwVar9 = (wchar_t *)(**(code **)(*(int *)*piVar22 + 8))(); iVar10 = _wcsnicmp(pwVar9,pwVar28,sVar29); if ((iVar10 == 0) && (sStack_16a6 == 1)) goto LAB_10090433; local_1744 = (int *)0x0; local_8 = CONCAT31(local_8._1_3_,7); cVar4 = FUN_100408d0(); if (cVar4 != '\0') { bVar5 = local_16e1 & 1; uVar11 = (uint)local_16ac; p_Var26 = endl_exref; uVar7 = (**(code **)(*(int *)*piVar22 + 8)) (L" bound from cache g ",uVar11,&DAT_1018bdac, CONCAT22(uStack_16a8,uStack_16aa),&DAT_101850ec, CONCAT22(sStack_16a6,uStack_16a8),&DAT_1018bdb4, CONCAT22(uStack_16a4,sStack_16a6),&DAT_1018bdbc, CONCAT22(uStack_16a2,uStack_16a4),L" di "); uVar7 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - ref ",uVar7); uVar7 = FUN_1001a0e0(uVar7); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,uVar11); FUN_1001a0e0(pbVar12); uVar7 = FUN_10022870(); FUN_1001a0e0(uVar7); uVar7 = FUN_10022870(); FUN_1001a0e0(uVar7); uVar7 = FUN_10022870(); FUN_1001a0e0(uVar7); uVar7 = FUN_10022870(); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar7); pbVar12 = std::basic_ostream_>:: operator<<(pbVar12,(bool)bVar5); std::basic_ostream_>::operator<< (pbVar12,p_Var26); } *(int *)(local_16d0 + 0x58) = *(int *)(local_16d0 + 0x58) + 1; (**(code **)(*(int *)*piVar22 + 4))(&local_1744); (**(code **)(*(int *)*piVar22 + 0x10))(1); piVar23 = local_1744; local_178c = 0; local_178a = 0; local_1786 = 0; uStack_1784 = 0; local_1782 = 0; uStack_1780 = 0; local_177e = 0; uStack_177c = 0; local_177a = 0; local_1828 = local_1744; if (local_1744 != (int *)0x0) { (**(code **)(*local_1744 + 4))(local_1744); } local_1824 = 0; local_1820 = 0; local_181c = 0; local_8._1_3_ = (uint3)((uint)local_8 >> 8); local_1818 = 0; local_8._0_1_ = 0xe; local_7c[0] = 0xffff; local_78 = 0; local_74 = 1; local_70 = 0; puVar14 = local_30; if (local_1c < 8) { puVar14 = &local_30; } iVar10 = (**(code **)(*piVar23 + 0x2c))(piVar23,puVar14); if (iVar10 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar10,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x55); } ppppuVar13 = (undefined4 ****)local_4c[0]; if (local_38 < 8) { ppppuVar13 = local_4c; } iVar10 = (**(code **)(*piVar23 + 0x34))(piVar23,ppppuVar13); if (iVar10 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar10,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x65); } uStack_1784 = uStack_16a4; local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)FUN_1008f8b0(local_110, CONCAT22(uStack_16aa,CONCAT11(uStack_16ab,local_16ac)), CONCAT22(sStack_16a6,uStack_16a8), CONCAT22(local_1782,uStack_16a4), CONCAT22(local_177e,uStack_1780), CONCAT22(local_177a,uStack_177c),local_1764); local_1740 = (int *)0x0; local_8._0_1_ = 0x10; (**(code **)*piVar23)(piVar23,&DAT_1017b690,&local_1740); local_8._0_1_ = 0x11; iVar10 = (**(code **)(*local_1740 + 0x10))(local_1740,local_16d8); if (iVar10 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar10,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x85); } local_8._0_1_ = 0xe; if (local_1740 != (int *)0x0) { (**(code **)(*local_1740 + 8))(local_1740); } local_173c = (int *)0x0; local_8._0_1_ = 0x15; (**(code **)*piVar23)(piVar23,&DAT_1017b938,&local_173c); local_8._0_1_ = 0x16; iVar10 = (**(code **)(*local_173c + 0x18))(local_173c,&local_1764); if (iVar10 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar10,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x94); } local_8._0_1_ = 0xe; if (local_173c != (int *)0x0) { (**(code **)(*local_173c + 8))(local_173c); } local_16d9 = local_16e1 & 1; FUN_1008fca0(&local_16d9); local_16d4 = (int *)*piVar22; puVar14 = (undefined4 *)FUN_100054b0(piVar23); local_8._0_1_ = 0x19; (**(code **)(*local_16d4 + 0xc))(0,*puVar14,0xffffffff,DAT_101d6504,DAT_101d6508,local_7c,0) ; local_8 = CONCAT31(local_8._1_3_,0xe); if (local_17dc != (int *)0x0) { (**(code **)(*local_17dc + 8))(local_17dc); } SysFreeString(local_17d8); local_16d8 = (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)*piVar22; piVar22 = (int *)*local_16e0; if (local_16e0 != *(int **)(local_16d0 + 0x24)) { *(int **)local_16e0[1] = piVar22; *(int *)(*local_16e0 + 4) = local_16e0[1]; operator_delete(local_16e0); *(int *)(local_16d0 + 0x28) = *(int *)(local_16d0 + 0x28) + -1; } local_16e0 = piVar22; if (local_16d8 != (_func_basic_ostream_>_ptr_basic_ostream_>_ptr *)0x0) { (*(code *)**(undefined4 **)local_16d8)(1); } local_8._0_1_ = 0x1d; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x1c; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x1b; SysFreeString((BSTR)0x0); local_8._0_1_ = 0x1a; SysFreeString((BSTR)0x0); local_8._0_1_ = 7; (**(code **)(*piVar23 + 8))(piVar23); local_8._0_1_ = 5; if (local_1744 != (int *)0x0) { (**(code **)(*local_1744 + 8))(local_1744); } local_8._0_1_ = 3; if (local_16f4 != (int *)0x0) { (**(code **)(*local_16f4 + 8))(local_16f4); } local_8._0_1_ = 2; SysFreeString(local_16e8); local_8._0_1_ = 1; SysFreeString(local_16f0); local_8 = (uint)local_8._1_3_ << 8; if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_8 = 0xffffffff; if (7 < local_1c) { operator_delete(local_30); } LAB_10091d53: local_30 = (undefined4 *)((uint)local_30._2_2_ << 0x10); } LAB_10091d59: local_1c = 7; local_20 = 0; } while (local_16e0 != *(int **)(local_16d0 + 0x24)); } ExceptionList = local_10; __security_check_cookie(local_14 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_10101360 at 10101360 Signature: `undefined FUN_10101360(void)` ```c void __fastcall FUN_10101360(int param_1) { undefined4 *puVar1; char cVar2; undefined4 uVar3; int *piVar4; int *piVar5; uint uVar6; int iVar7; int *piVar8; undefined2 *puVar9; int local_220; wchar_t local_21c [260]; uint local_14; void *local_10; undefined1 *puStack_c; undefined4 local_8; puStack_c = &LAB_101709ee; local_10 = ExceptionList; uVar6 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; uVar3 = *(undefined4 *)(param_1 + 0x3fc); local_14 = uVar6; if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 0; FUN_10003a90(uVar6); _atexit(FUN_101792e0); } local_8 = 0xffffffff; FUN_10022d50(&DAT_101d6370,L"AccessManager::DumpState - remotePlatformResolvers.size %d",uVar3); if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 1; FUN_10003a90(uVar6); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers.sendResultsRetryCount %d", *(undefined4 *)(param_1 + 0x404)); piVar8 = (int *)**(int **)(param_1 + 0x3f8); local_220 = 0; if (piVar8 != *(int **)(param_1 + 0x3f8)) { do { if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 2; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].this %x",local_220, piVar8[3]); iVar7 = piVar8[3]; SysFreeString(*(BSTR *)(iVar7 + 8)); *(undefined4 *)(iVar7 + 8) = 0; iVar7 = (**(code **)(**(int **)(iVar7 + 4) + 0x20)) (*(int **)(iVar7 + 4),(undefined4 *)(iVar7 + 8)); if (iVar7 < 0) { LAB_10101768: /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar7,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x3f); } iVar7 = piVar8[3]; puVar1 = (undefined4 *)(iVar7 + 8); SysFreeString(*(BSTR *)(iVar7 + 8)); *puVar1 = 0; iVar7 = (**(code **)(**(int **)(iVar7 + 4) + 0x20))(*(int **)(iVar7 + 4),puVar1); if (iVar7 < 0) goto LAB_10101768; puVar9 = (undefined2 *)*puVar1; if (puVar9 == (undefined2 *)0x0) { puVar9 = &DAT_1017a514; } if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 3; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].mxReference %s",local_220,puVar9 ); iVar7 = piVar8[3]; _snwprintf_s(local_21c,0x104,0xffffffff,L"", *(undefined4 *)(iVar7 + 0x18),*(undefined4 *)(iVar7 + 0x1c), *(undefined4 *)(iVar7 + 0x20)); if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 4; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].requesterEngine %s",local_220, local_21c); if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 5; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].requesterData %x",local_220, *(undefined4 *)(piVar8[3] + 0x24)); if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 6; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].currentEngineId %x",local_220, *(undefined4 *)(piVar8[3] + 0x2c)); if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 7; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,L" remotePlatformResolvers[%d].retryCount %d",local_220, *(undefined4 *)(piVar8[3] + 0x44)); if (*(char *)((int)piVar8 + 0x11) == '\0') { piVar4 = (int *)piVar8[2]; if (*(char *)((int)piVar4 + 0x11) == '\0') { cVar2 = *(char *)(*piVar4 + 0x11); piVar8 = piVar4; piVar4 = (int *)*piVar4; while (cVar2 == '\0') { cVar2 = *(char *)(*piVar4 + 0x11); piVar8 = piVar4; piVar4 = (int *)*piVar4; } } else { cVar2 = *(char *)(piVar8[1] + 0x11); piVar5 = (int *)piVar8[1]; piVar4 = piVar8; while ((piVar8 = piVar5, cVar2 == '\0' && (piVar4 == (int *)piVar8[2]))) { cVar2 = *(char *)(piVar8[1] + 0x11); piVar5 = (int *)piVar8[1]; piVar4 = piVar8; } } } local_220 = local_220 + 1; } while (piVar8 != *(int **)(param_1 + 0x3f8)); } if ((DAT_101d6444 & 1) == 0) { DAT_101d6444 = DAT_101d6444 | 1; local_8 = 8; FUN_10003a90(); _atexit(FUN_101792e0); local_8 = 0xffffffff; } FUN_10022d50(&DAT_101d6370,&DAT_1017a514); ExceptionList = local_10; __security_check_cookie(local_14 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_101133d0 at 101133d0 Signature: `undefined FUN_101133d0(void)` ```c void __fastcall FUN_101133d0(int param_1) { undefined4 *puVar1; short sVar2; int *piVar3; char cVar4; uint uVar5; BSTR pOVar6; int iVar7; int iVar8; wchar_t *pwVar9; undefined4 uVar10; undefined4 uVar11; basic_ostream_> *pbVar12; short *psVar13; wchar_t ****ppppwVar14; undefined4 ****ppppuVar15; short *psVar16; undefined4 *puVar17; _func_basic_ostream_>_ptr_basic_ostream_>_ptr *p_Var18; undefined4 ***local_84 [5]; uint local_70; undefined4 local_68; undefined4 local_58; uint local_54; undefined4 ***local_4c [4]; undefined4 local_3c; uint local_38; wchar_t ***local_30 [4]; undefined4 local_20; uint local_1c; uint local_14; void *local_10; undefined1 *puStack_c; uint local_8; local_8 = 0xffffffff; puStack_c = &LAB_101725c0; local_10 = ExceptionList; uVar5 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; puVar1 = (undefined4 *)(param_1 + 0xac); local_14 = uVar5; if (*(BSTR *)(param_1 + 0xac) != L"") { SysFreeString(*(BSTR *)(param_1 + 0xac)); pOVar6 = SysAllocString(L""); *puVar1 = pOVar6; if (pOVar6 == (BSTR)0x0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(0x8007000e,0, "E:\\BldSrc\\6\\s\\sharedcomponents\\internal\\MagellanPublic\\Includes\\ClassUtilities\\AAComBSTR.h" ,0xec); } } puVar17 = (undefined4 *)(param_1 + 0x54); SysFreeString(*(BSTR *)(param_1 + 0x54)); *puVar17 = 0; piVar3 = *(int **)(param_1 + 0x50); iVar7 = (**(code **)(*piVar3 + 0x20))(piVar3,puVar17,uVar5); if (iVar7 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar7,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x3f); } psVar16 = (short *)*puVar17; if (psVar16 == (short *)0x0) { psVar16 = &DAT_1017a514; } local_54 = 7; local_58 = 0; local_68 = (void *)((uint)local_68._2_2_ << 0x10); psVar13 = psVar16; do { sVar2 = *psVar13; psVar13 = psVar13 + 1; } while (sVar2 != 0); FUN_100363d0(psVar16,(int)psVar13 - (int)(psVar16 + 1) >> 1); local_8 = 0; iVar7 = FUN_100110c0(&DAT_101851e8,0,1); if (iVar7 == -1) { if (*(int *)(param_1 + 0x44) == 0) goto LAB_101138b3; psVar13 = (short *)FUN_1005f6b0(); local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); local_38 = 7; local_3c = 0; psVar16 = psVar13; do { sVar2 = *psVar16; psVar16 = psVar16 + 1; } while (sVar2 != 0); FUN_100363d0(psVar13,(int)psVar16 - (int)(psVar13 + 1) >> 1); local_8._0_1_ = 3; iVar7 = FUN_100110c0(&DAT_101851e8,0,1); if (iVar7 != -1) { FUN_10043140(local_30,0,iVar7); local_8 = CONCAT31(local_8._1_3_,4); iVar8 = FUN_100a6690(L"0123456789",0,10); if ((iVar8 != 0) && (iVar8 = FUN_100110c0(&DAT_1017b6e0,0,1), iVar8 == -1)) { iVar8 = *(int *)(param_1 + 100); if (*(char *)(iVar8 + 0x618) == '\0') { pwVar9 = (wchar_t *)(iVar8 + 0x5fc); if (7 < *(uint *)(iVar8 + 0x610)) { pwVar9 = *(wchar_t **)pwVar9; } ppppwVar14 = (wchar_t ****)local_30[0]; if (local_1c < 8) { ppppwVar14 = local_30; } iVar8 = _wcsicmp((wchar_t *)ppppwVar14,pwVar9); if (iVar8 != 0) goto LAB_10113776; } else { LAB_10113776: ppppwVar14 = (wchar_t ****)local_30[0]; if (local_1c < 8) { ppppwVar14 = local_30; } FUN_1005c2c0(ppppwVar14); } FUN_10043140(local_84,iVar7 + 1,0xffffffff); local_8._0_1_ = 5; if (local_70 < 8) { local_84[0] = local_84; } FUN_1005f700(local_84[0]); local_8 = CONCAT31(local_8._1_3_,4); FUN_10024360(); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { uVar11 = *puVar1; p_Var18 = endl_exref; uVar10 = FUN_1005f6b0(&DAT_101965a8); uVar10 = FUN_1005f590(L"] context [",uVar10); uVar11 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x50), L"PreboundReference::ParseNamespaceReference - namespace [",uVar11, L"] item [",uVar10); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar11); std::basic_ostream_>::operator<< (pbVar12,p_Var18); } local_8._0_1_ = 3; if (7 < local_1c) { operator_delete(local_30[0]); } local_1c = 7; local_20 = 0; local_30[0] = (wchar_t ***)((uint)local_30[0] & 0xffff0000); } local_8 = (uint)local_8._1_3_ << 8; if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); goto LAB_101138b3; } FUN_10043140(local_30,0,iVar7); local_8 = CONCAT31(local_8._1_3_,1); iVar8 = FUN_100a6690(L"0123456789",0,10); if ((iVar8 != 0) && (iVar8 = FUN_100110c0(&DAT_1017b6e0,0,1), iVar8 == -1)) { iVar8 = *(int *)(param_1 + 100); if (*(char *)(iVar8 + 0x618) == '\0') { pwVar9 = (wchar_t *)(iVar8 + 0x5fc); if (7 < *(uint *)(iVar8 + 0x610)) { pwVar9 = *(wchar_t **)pwVar9; } ppppwVar14 = (wchar_t ****)local_30[0]; if (local_1c < 8) { ppppwVar14 = local_30; } iVar8 = _wcsicmp((wchar_t *)ppppwVar14,pwVar9); if (iVar8 != 0) goto LAB_10113551; } else { LAB_10113551: ppppwVar14 = (wchar_t ****)local_30[0]; if (local_1c < 8) { ppppwVar14 = local_30; } FUN_1005c2c0(ppppwVar14); } FUN_10043140(local_4c,iVar7 + 1,0xffffffff); local_8._0_1_ = 2; ppppuVar15 = (undefined4 ****)local_4c[0]; if (local_38 < 8) { ppppuVar15 = local_4c; } piVar3 = *(int **)(param_1 + 0x50); iVar7 = (**(code **)(*piVar3 + 0x24))(piVar3,ppppuVar15); if (iVar7 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar7,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x45); } local_8 = CONCAT31(local_8._1_3_,1); if (7 < local_38) { operator_delete(local_4c[0]); } local_38 = 7; local_3c = 0; local_4c[0] = (undefined4 ***)((uint)local_4c[0] & 0xffff0000); } cVar4 = FUN_100408d0(); if (cVar4 != '\0') { uVar11 = *puVar1; p_Var18 = endl_exref; uVar10 = FUN_1005f6b0(&DAT_101965a8); uVar10 = FUN_1005f590(L"] context [",uVar10); uVar11 = FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x50), L"PreboundReference::ParseNamespaceReference - namespace [",uVar11, L"] item [",uVar10); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); uVar11 = FUN_1001a0e0(uVar11); pbVar12 = (basic_ostream_> *) FUN_1001a0e0(uVar11); std::basic_ostream_>::operator<< (pbVar12,p_Var18); } local_8 = local_8 & 0xffffff00; if (7 < local_1c) { operator_delete(local_30[0]); } local_1c = 7; local_20 = 0; local_30[0] = (wchar_t ***)((uint)local_30[0] & 0xffff0000); LAB_101138b3: local_8 = 0xffffffff; if (7 < local_54) { operator_delete(local_68); } local_54 = 7; local_58 = 0; local_68 = (void *)((uint)local_68 & 0xffff0000); ExceptionList = local_10; __security_check_cookie(local_14 ^ (uint)&stack0xfffffffc); return; } ``` ## FUN_10113900 at 10113900 Signature: `undefined FUN_10113900(void)` ```c LPVOID * __thiscall FUN_10113900(LPVOID *param_1,undefined4 param_2) { uint uVar1; HRESULT HVar2; int iVar3; void *local_10; undefined1 *puStack_c; undefined4 local_8; puStack_c = &LAB_1017262c; local_10 = ExceptionList; uVar1 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; *param_1 = (LPVOID)0x0; param_1[1] = (LPVOID)0x0; param_1[2] = (LPVOID)0x0; param_1[3] = (LPVOID)0x0; param_1[4] = (LPVOID)0x0; local_8 = 5; HVar2 = CoCreateInstance((IID *)&DAT_1017f604,(LPUNKNOWN)0x0,0x17,(IID *)&DAT_1017b260,param_1); if (HVar2 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(HVar2,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x2d); } iVar3 = (**(code **)(*(int *)*param_1 + 0x24))(*param_1,param_2,uVar1); if (iVar3 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar3,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x45); } ExceptionList = local_10; return param_1; } ``` ## FUN_10113b10 at 10113b10 Signature: `undefined FUN_10113b10(void)` ```c undefined4 * __thiscall FUN_10113b10(undefined4 *param_1,int *param_2,undefined4 param_3) { undefined4 *puVar1; short sVar2; char cVar3; uint uVar4; int iVar5; short *psVar6; short *psVar7; undefined2 *puVar8; void *local_10; undefined1 *puStack_c; undefined1 local_8; undefined3 uStack_7; puStack_c = &LAB_1017276f; local_10 = ExceptionList; uVar4 = DAT_101d60b8 ^ (uint)&stack0xfffffffc; ExceptionList = &local_10; *param_1 = MxConnectionCallback::vftable; param_1[1] = CReferenceToResolve::vftable; *(undefined1 *)(param_1 + 2) = 0; param_1[3] = RedundancyResolutionStatusCallback::vftable; *param_1 = PreboundReference::vftable; param_1[1] = PreboundReference::vftable; param_1[3] = PreboundReference::vftable; *(undefined1 *)(param_1 + 4) = 0; param_1[5] = 0; param_1[0xb] = 7; param_1[10] = 0; *(undefined2 *)(param_1 + 6) = 0; param_1[0x12] = 7; param_1[0x11] = 0; *(undefined2 *)(param_1 + 0xd) = 0; uStack_7 = 0; local_8 = 2; param_1[0x14] = param_2; if (param_2 != (int *)0x0) { (**(code **)(*param_2 + 4))(param_2,uVar4); } param_1[0x15] = 0; param_1[0x16] = 0; param_1[0x17] = 0; param_1[0x18] = 0; param_1[0x19] = param_3; param_1[0x1a] = 0; *(undefined1 *)(param_1 + 0x1b) = 0; param_1[0x21] = 7; param_1[0x20] = 0; *(undefined2 *)(param_1 + 0x1c) = 0; param_1[0x27] = 0; param_1[0x2a] = 0; param_1[0x2b] = 0; _local_8 = CONCAT31(uStack_7,0xe); *(undefined1 *)(param_1 + 0x2c) = 0; param_1[0x29] = 0; if (DAT_101d8c40 == 0) { FUN_10113070(); } if (param_2 != (int *)0x0) { puVar1 = param_1 + 0x15; SysFreeString((BSTR)param_1[0x15]); *puVar1 = 0; iVar5 = (**(code **)(*(int *)param_1[0x14] + 0x20))((int *)param_1[0x14],puVar1); if (iVar5 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar5,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x3f); } psVar7 = (short *)*puVar1; if (psVar7 == (short *)0x0) { psVar7 = &DAT_1017a514; } psVar6 = psVar7; do { sVar2 = *psVar6; psVar6 = psVar6 + 1; } while (sVar2 != 0); FUN_100363d0(psVar7,(int)psVar6 - (int)(psVar7 + 1) >> 1); puVar1 = param_1 + 0x15; SysFreeString((BSTR)param_1[0x15]); *puVar1 = 0; iVar5 = (**(code **)(*(int *)param_1[0x14] + 0x20))((int *)param_1[0x14],puVar1); if (iVar5 < 0) { /* WARNING: Subroutine does not return */ FUN_1005bf30(iVar5,0,"E:\\BldSrc\\6\\s\\ExtInterfaces\\Lmx\\IMxReferencePtr.h",0x3f); } puVar8 = (undefined2 *)*puVar1; if (puVar8 == (undefined2 *)0x0) { puVar8 = &DAT_1017a514; } cVar3 = FUN_10134a10(puVar8); if (cVar3 != '\0') { psVar6 = (short *)FUN_1005f6b0(); psVar7 = psVar6; do { sVar2 = *psVar7; psVar7 = psVar7 + 1; } while (sVar2 != 0); FUN_100363d0(psVar6,(int)psVar7 - (int)(psVar6 + 1) >> 1); } } FUN_101133d0(); (**(code **)(*(int *)param_1[0x19] + 4))((int *)param_1[0x19]); ExceptionList = local_10; return param_1; } ```