fe2a6db786
rust / build / test / clippy / fmt (push) Has been cancelled
Layout:
- src/ .NET 10 x64 reference: MxNativeCodec, MxNativeClient,
MxAsbClient, probes, tests, harnesses. Executable spec.
- design/ Architectural plan for the Rust port (M0–M6), error
model, protocol invariants, risks (R1–R16), adversarial
review log (review.md).
- rust/ Rust workspace. M0 skeleton + M1 codec parity.
mxaccess-codec: 215 unit tests + 2 cross-implementation
parity tests (byte-identical against .NET reference).
Other crates are M0 stubs awaiting M2+.
- captures/ Frida + netsh + pcap evidence per CLAUDE.md
("captures are evidence, not throwaway logs").
- analysis/ Decompiled C# (frida/proxy/decompiled-*),
Ghidra exports for native DLLs (`exports/` only —
working state at `projects/` and AVEVA's input
binaries at `input/` are gitignored).
- docs/ Reverse-engineering reference docs.
- tools/ Setup-LiveProbeEnv.ps1 (Infisical credential fetcher),
Compute-Crc.ps1 (.NET parity helper).
- .github/workflows/ Rust CI: fmt + build + test + clippy on Windows.
- LICENSE MIT (Joseph Doherty, 2026).
Verified:
- cargo test --workspace → 217 passed (215 unit + 2 .NET parity), 0 failed
- cargo clippy --workspace -- -D warnings → clean
- cargo fmt --all -- --check → clean
- cargo publish --dry-run -p mxaccess-codec → packages cleanly
Excluded from history (see .gitignore):
- **/bin, **/obj, **/target — build artifacts
- analysis/ghidra/projects/ — Ghidra working state (regenerable)
- analysis/ghidra/input/ — AVEVA proprietary DLLs (vendor IP)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
109 KiB
109 KiB
Lmx.dll selected decompile
FUN_1008c120 at 1008c120
Signature: undefined FUN_1008c120(void)
void __thiscall FUN_1008c120(int param_1,int param_2,short *param_3)
{
int *piVar1;
char cVar2;
basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *pbVar3;
undefined4 uVar4;
int iVar5;
_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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"<success %d category %d detectedBy %d detail %d>",
(int)(short)*(undefined4 *)param_3,*(undefined4 *)(param_3 + 2),
*(undefined4 *)(param_3 + 4),(int)param_3[6]);
p_Var6 = endl_exref;
pbVar3 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L"CReferenceStringResolutionService::OperationComplete - correlationId ",
param_2,L" status ",local_210);
pbVar3 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar3,param_2);
uVar4 = FUN_1001a0e0(pbVar3);
pbVar3 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar4);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar3,p_Var6);
}
if (piVar1 == *(int **)(param_1 + 0x1c)) {
cVar2 = FUN_100408d0();
if (cVar2 != '\0') {
p_Var6 = endl_exref;
pbVar3 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - failed to find correlationId in boundReferencesPendingResponse"
);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar3,p_Var6);
}
}
else {
cVar2 = FUN_100408d0();
if (cVar2 != '\0') {
p_Var6 = endl_exref;
pbVar3 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - rcvd valid response"
);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar4);
pbVar3 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar3,iVar5);
uVar4 = FUN_1001a0e0(pbVar3);
pbVar3 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar4);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - resubmitting bind response"
);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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)
/* WARNING: Function: __alloca_probe replaced with injection: alloca_probe */
void __fastcall FUN_1008d760(int param_1)
{
int iVar1;
int *piVar2;
char cVar3;
basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *pbVar4;
int iVar5;
undefined4 uVar6;
undefined4 *puVar7;
uint uVar8;
undefined1 *puVar9;
int *piVar10;
undefined4 *puVar11;
long lVar12;
_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L"CReferenceStringResolutionService::ProcessPendingClientRequests - bindRequests queue size "
);
pbVar4 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar4,uVar8);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001db00(uVar6);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar4,p_Var13);
}
cVar3 = FUN_100408d0();
if (cVar3 != '\0') {
lVar12 = *(long *)(piVar10[2] + 0x30);
p_Var13 = endl_exref;
pbVar4 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - corelationId ")
;
pbVar4 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar4,lVar12);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar6);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar6);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *
)FUN_1001a0e0(uVar6);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar6);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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)
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *pbVar13;
undefined4 uVar14;
int *piVar15;
int *piVar16;
long lVar17;
int iVar18;
_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L"CReferenceStringResolver::ProcessPendingGRReferenceBindRequests - following reference not bound withing "
,60000,&DAT_1018b564);
pbVar13 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar13,lVar17);
pbVar13 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(pbVar13);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar14);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar14);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - correlation Id ");
pbVar13 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar13,iVar18);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
/* 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<unsigned_short,struct_std::char_traits<unsigned_short>_> *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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),L" - correlationId ")
;
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,iVar10);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar12,p_Var26);
}
cVar4 = FUN_100408d0();
if (cVar4 != '\0') {
uVar11 = local_1730;
uVar25 = local_1734;
p_Var26 = endl_exref;
pbVar12 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - timeOfLastDeployIsValid ",local_1730,
L" timeOfLastConfigChangeIsValid ");
uVar24 = (undefined1)uVar25;
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,SUB41(uVar11,0));
pbVar12 = (basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(pbVar12);
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,(bool)uVar24);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<T> 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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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"<success %d category %d detectedBy %d detail %d>",
(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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,sVar27);
LAB_10090933:
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar12,p_Var26);
}
LAB_1009093b:
SysFreeString(local_16ec);
local_16ec = (BSTR)0x0;
local_16d8 = *(_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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"<success %d category %d detectedBy %d detail %d>",
(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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>
::operator<<(pbVar12,sVar27);
LAB_10090d63:
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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"<success %d category %d detectedBy %d detail %d>",
(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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,p_Var26);
}
local_16d8 = (_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - failed to extract time from value2 hr ");
pbVar12 = std::
basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L"CReferenceStringResolver::ProcessUnresolvedReferences - No resolve attempt sent to the GR: "
);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar12,p_Var26);
}
cVar4 = FUN_100408d0();
if (cVar4 != '\0') {
swprintf_s(local_318,0x104,L"<success %d category %d detectedBy %d detail %d>",
(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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(*(undefined4 *)(DAT_101d6474 + 0x38),
L" - failed to extract time from value hr ");
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>
::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"<success %d category %d detectedBy %d detail %d>",
(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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::operator<<
(pbVar12,p_Var26);
}
local_16d8 = (_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar7);
pbVar12 = std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::
operator<<(pbVar12,(bool)bVar5);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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)
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"<galaxy %d platform %d engine %d>",
*(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)
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<unsigned_short,struct_std::char_traits<unsigned_short>_> *pbVar12;
short *psVar13;
wchar_t ****ppppwVar14;
undefined4 ****ppppuVar15;
short *psVar16;
undefined4 *puVar17;
_func_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_ptr_basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>_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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar11);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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<unsigned_short,struct_std::char_traits<unsigned_short>_> *)
FUN_1001a0e0(uVar11);
std::basic_ostream<unsigned_short,struct_std::char_traits<unsigned_short>_>::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)
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)
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;
}