Initial project state: .NET reference, design, Rust port (M0+M1), evidence
rust / build / test / clippy / fmt (push) Has been cancelled
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>
This commit is contained in:
@@ -0,0 +1,208 @@
|
||||
# LmxProxy.dll
|
||||
|
||||
- Path: `C:\Program Files (x86)\ArchestrA\Framework\Bin\LmxProxy.dll`
|
||||
- Size: 241816 bytes
|
||||
- Machine: x86
|
||||
- PE timestamp: 2020-02-24T11:57:14+00:00
|
||||
- ImageBase: `0x10000000`
|
||||
|
||||
## Exports
|
||||
|
||||
| Ordinal | RVA | Name |
|
||||
| ---: | ---: | --- |
|
||||
| 1 | 0x000080d6 | `DllCanUnloadNow` |
|
||||
| 2 | 0x0000c873 | `DllGetClassObject` |
|
||||
| 3 | 0x0000ba13 | `DllRegisterServer` |
|
||||
| 4 | 0x0000ba22 | `DllUnregisterServer` |
|
||||
|
||||
## Imports
|
||||
|
||||
- `LicAPINativeWrapper.dll`: `?ReleaseLicense@NativeExport_CppCliWrapper_LicApiClient@@QAE_NXZ`, `?AddLicenseRequestInfo@NativeExport_CppCliWrapper_LicApiClient@@QAE_NPB_W000@Z`, `?AcquireLicense@NativeExport_CppCliWrapper_LicApiClient@@QAE_NXZ`, `?GetLicenseAcquisitionError@NativeExport_CppCliWrapper_LicApiClient@@QAEHXZ`, `?ResetLicenseRequestInfo@NativeExport_CppCliWrapper_LicApiClient@@QAE_NXZ`, `??0NativeExport_CppCliWrapper_LicApiClient@@QAE@XZ`, `?LoadLibraries@NativeExport_CppCliWrapper_LicApiClient@@QAE_NAAH@Z`, `?CreateClientConnection@NativeExport_CppCliWrapper_LicApiClient@@QAE_NXZ`, `?GetDeviceIdentity@NativeExport_CppCliWrapper_LicApiClient@@QAE_NPAPB_W@Z`, `??1NativeExport_CppCliWrapper_LicApiClient@@QAE@XZ`
|
||||
- `KERNEL32.dll`: `MultiByteToWideChar`, `lstrlenW`, `GetLastError`, `FreeLibrary`, `FindClose`, `FindFirstFileW`, `GetModuleFileNameW`, `InterlockedIncrement`, `LocalFree`, `GetProcAddress`, `LoadLibraryExW`, `LocalAlloc`, `FormatMessageW`, `lstrlenA`, `InterlockedDecrement`, `SystemTimeToTzSpecificLocalTime`, `FileTimeToSystemTime`, `RaiseException`, `EnterCriticalSection`, `LeaveCriticalSection`, `InitializeCriticalSectionAndSpinCount`, `InterlockedExchange`, `GetModuleHandleW`, `lstrcmpiW`, `CloseHandle`, `DisableThreadLibraryCalls`, `CreateEventW`, `LoadResource`, `FindResourceW`, `GetSystemDirectoryW`, `GetWindowsDirectoryW`, `FindNextFileW`, `CreateDirectoryW`, `GetCurrentThreadId`, `GetLocalTime`, `GetUserDefaultLCID`, `GetTickCount`, `DeleteFileW`, `GetCurrentProcess`, `GetCurrentProcessId`, `CreateFileW`, `GetSystemTimeAsFileTime`, `QueryPerformanceCounter`, `IsDebuggerPresent`, `SetUnhandledExceptionFilter`, `UnhandledExceptionFilter`, `TerminateProcess`, `InterlockedCompareExchange`, `Sleep`, `DecodePointer`, `EncodePointer`, `DeleteCriticalSection`, `SizeofResource`
|
||||
- `USER32.dll`: `CharNextW`, `KillTimer`, `SetTimer`, `CreateWindowExW`, `DestroyWindow`, `CharUpperBuffW`, `ShowWindow`
|
||||
- `ADVAPI32.dll`: `RegCreateKeyExW`, `RegQueryValueExW`, `RegCloseKey`, `RegOpenKeyExW`, `RegNotifyChangeKeyValue`, `RegEnumKeyExW`, `RegQueryInfoKeyW`, `RegSetValueExW`, `RegDeleteValueW`, `RegDeleteKeyW`
|
||||
- `ole32.dll`: `CoGetClassObject`, `CoTaskMemRealloc`, `CoTaskMemFree`, `CLSIDFromString`, `CoFileTimeNow`, `StringFromGUID2`, `CoCreateInstance`, `CoTaskMemAlloc`
|
||||
- `OLEAUT32.dll`: `SysAllocString`, `SysFreeString`, `SysStringLen`, `VariantInit`, `VariantClear`, `VariantCopy`, `VariantChangeType`, `SysAllocStringByteLen`, `SysStringByteLen`, `SysAllocStringLen`, `SetErrorInfo`, `SafeArrayUnaccessData`, `SafeArrayAccessData`, `SafeArrayGetLBound`, `SafeArrayCreateEx`, `GetRecordInfoFromGuids`, `SafeArrayGetDim`, `GetErrorInfo`, `SafeArrayPutElement`, `SafeArrayCreate`, `LoadTypeLib`, `UnRegisterTypeLib`, `RegisterTypeLib`, `VarUI4FromStr`, `LoadRegTypeLib`, `VarBstrCmp`, `VarBstrCat`, `SafeArrayDestroy`
|
||||
- `SHLWAPI.dll`: `PathRemoveFileSpecW`, `PathAppendW`
|
||||
- `MSVCP100.dll`: `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@G@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@_N@Z`, `?_Orphan_all@_Container_base0@std@@QAEXXZ`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@H@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@K@Z`, `??0?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAE@PAV?$basic_streambuf@_WU?$char_traits@_W@std@@@1@_N@Z`, `??1?$basic_ostream@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@P6AAAVios_base@1@AAV21@@Z@Z`, `?ends@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@1@AAV21@@Z`, `?endl@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@1@AAV21@@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@J@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z`, `??0?$basic_ios@_WU?$char_traits@_W@std@@@std@@IAE@XZ`, `??0?$basic_iostream@_WU?$char_traits@_W@std@@@std@@QAE@PAV?$basic_streambuf@_WU?$char_traits@_W@std@@@1@@Z`, `?rdbuf@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QAEPAV?$basic_streambuf@_WU?$char_traits@_W@std@@@2@PAV32@@Z`, `??1?$basic_ios@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?seekpos@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z`, `?seekoff@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE?AV?$fpos@H@2@_JHH@Z`, `?underflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ`, `?pbackfail@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEGG@Z`, `??0?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAE@XZ`, `?_Pninc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEPA_WXZ`, `??1?$basic_iostream@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?width@ios_base@std@@QBE_JXZ`, `?flags@ios_base@std@@QBEHXZ`, `?fill@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBE_WXZ`, `?sputc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@QAEG_W@Z`, `?sputn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@QAE_JPB_W_J@Z`, `?width@ios_base@std@@QAE_J_J@Z`, `?setstate@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QAEXH_N@Z`, `?uncaught_exception@std@@YA_NXZ`, `?_Osfx@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEXXZ`, `?good@ios_base@std@@QBE_NXZ`, `?tie@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBEPAV?$basic_ostream@_WU?$char_traits@_W@std@@@2@XZ`, `?flush@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@XZ`, `?_BADOFF@std@@3_JB`, `?setf@ios_base@std@@QAEHHH@Z`, `?_Xout_of_range@std@@YAXPBD@Z`, `?setp@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W0@Z`, `?setg@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W00@Z`, `?eback@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?egptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?epptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?pptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?_Xlength_error@std@@YAXPBD@Z`, `?rdbuf@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBEPAV?$basic_streambuf@_WU?$char_traits@_W@std@@@2@XZ`, `??1?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?_Lock@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAEXXZ`, `?_Unlock@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAEXXZ`, `?showmanyc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JXZ`, `?uflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ`, `?xsgetn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JPA_W_J@Z`, `?xsputn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JPB_W_J@Z`, `?setbuf@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEPAV12@PA_W_J@Z`, `?sync@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEHXZ`, `?imbue@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEXABVlocale@2@@Z`, `?gptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?gbump@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXH@Z`, `?pbump@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXH@Z`, `?setp@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W00@Z`, `?pbase@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`
|
||||
- `dbghelp.dll`: `MiniDumpWriteDump`
|
||||
- `MSVCR100.dll`: `??2@YAPAXI@Z`, `__clean_type_info_names_internal`, `_crt_debugger_hook`, `_except_handler4_common`, `_onexit`, `_lock`, `__dllonexit`, `_unlock`, `?terminate@@YAXXZ`, `_snwprintf_s`, `?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z`, `wcsrchr`, `_purecall`, `_resetstkoflw`, `wcsncpy_s`, `malloc`, `wcsstr`, `memcmp`, `_vsnwprintf_s`, `swprintf_s`, `wcscmp`, `wcscpy_s`, `_recalloc`, `calloc`, `??0exception@std@@QAE@ABV01@@Z`, `_makepath_s`, `_splitpath_s`, `?_type_info_dtor_internal_method@type_info@@QAEXXZ`, `__CppXcptFilter`, `_amsg_exit`, `_initterm_e`, `_initterm`, `_encoded_null`, `??3@YAXPAX@Z`, `_CxxThrowException`, `memcpy`, `memmove`, `free`, `memcpy_s`, `memset`, `__CxxFrameHandler3`, `??1exception@std@@UAE@XZ`, `??0exception@std@@QAE@ABQBD@Z`, `?what@exception@std@@UBEPBDXZ`, `wcslen`, `wcscat_s`, `_wsplitpath_s`, `??_V@YAXPAX@Z`, `_malloc_crt`
|
||||
|
||||
## Resources
|
||||
|
||||
| Type | ID/name | Lang | RVA | Size |
|
||||
| --- | --- | ---: | ---: | ---: |
|
||||
| `REGISTRY` | `101` | 1033 | 0x0002a19c | 680 |
|
||||
| `TYPELIB` | `1` | 1033 | 0x0002a444 | 55756 |
|
||||
| `6` | `7` | 1033 | 0x00037e10 | 48 |
|
||||
| `16` | `1` | 1033 | 0x00037e40 | 976 |
|
||||
| `24` | `2` | 1033 | 0x00038210 | 346 |
|
||||
|
||||
## GUID hits
|
||||
|
||||
- `c30b52f5-2cb5-4760-af0a-3a344a7eb5dc` `text-upper` at file offset `0x000283ee`: `65 72 76 65 72 20 43 6c 61 73 73 27 0d 0a 09 7b 0d 0a 09 09 43 4c 53 49 44 20 3d 20 73 20 27 7b 43 33 30 42 35 32 46 35 2d 32 43 42 35 2d 34 37 36 30 2d 41 46 30 41 2d 33 41 33 34 34 41 37 45`
|
||||
- `c30b52f5-2cb5-4760-af0a-3a344a7eb5dc` `text-upper` at file offset `0x00028461`: `65 72 76 65 72 20 43 6c 61 73 73 27 0d 0a 09 7b 0d 0a 09 09 43 4c 53 49 44 20 3d 20 73 20 27 7b 43 33 30 42 35 32 46 35 2d 32 43 42 35 2d 34 37 36 30 2d 41 46 30 41 2d 33 41 33 34 34 41 37 45`
|
||||
- `c30b52f5-2cb5-4760-af0a-3a344a7eb5dc` `text-upper` at file offset `0x000284db`: `65 6d 6f 76 65 20 43 4c 53 49 44 0d 0a 09 7b 0d 0a 09 09 46 6f 72 63 65 52 65 6d 6f 76 65 20 7b 43 33 30 42 35 32 46 35 2d 32 43 42 35 2d 34 37 36 30 2d 41 46 30 41 2d 33 41 33 34 34 41 37 45`
|
||||
- `c30b52f5-2cb5-4760-af0a-3a344a7eb5dc` `guid-bytes-le` at file offset `0x0001b640`: `b6 99 82 84 61 dd 0d 4a a3 04 39 47 a5 64 b8 9c c4 6f 0a c7 ef 09 31 4f 88 74 a0 49 fe e8 7a 95 f5 52 0b c3 b5 2c 60 47 af 0a 3a 34 4a 7e b5 dc 02 00 00 80 2c b5 01 10 28 b5 01 10 24 b5 01 10`
|
||||
- `c30b52f5-2cb5-4760-af0a-3a344a7eb5dc` `guid-bytes-le` at file offset `0x0002b238`: `d0 20 00 00 58 02 00 00 c4 6f 0a c7 ef 09 31 4f 88 74 a0 49 fe e8 7a 95 34 21 00 00 ff ff ff ff f5 52 0b c3 b5 2c 60 47 af 0a 3a 34 4a 7e b5 dc 98 21 00 00 ff ff ff ff f4 01 00 00 01 00 00 00`
|
||||
|
||||
## Interesting strings
|
||||
|
||||
- `(preboundReferenceHandleW`
|
||||
- `.?AUILMXProxyServer2@@`
|
||||
- `.?AUILMXProxyServer3@@`
|
||||
- `.?AUILMXProxyServer4@@`
|
||||
- `.?AUILMXProxyServer5@@`
|
||||
- `.?AUILMXProxyServer@@`
|
||||
- `.?AV?$CComAggObject@VCLMXProxyServer@@@ATL@@`
|
||||
- `.?AV?$CComCoClass@VCLMXProxyServer@@$1?CLSID_LMXProxyServer@@3U_GUID@@B@ATL@@`
|
||||
- `.?AV?$CComContainedObject@VCLMXProxyServer@@@ATL@@`
|
||||
- `.?AV?$CComEnum@UIEnumConnectionPoints@@$1?_GUID_b196b285_bab4_101a_b69c_00aa00341d07@@3U__s_GUID@@BPAUIConnectionPoint@@V?$_CopyInterface@UIConnectionPoint@@@ATL@@VCComSingleThreadModel@6@@ATL@@`
|
||||
- `.?AV?$CComEnumImpl@UIEnumConnectionPoints@@$1?_GUID_b196b285_bab4_101a_b69c_00aa00341d07@@3U__s_GUID@@BPAUIConnectionPoint@@V?$_CopyInterface@UIConnectionPoint@@@ATL@@@ATL@@`
|
||||
- `.?AV?$CComObject@V?$CComEnum@UIEnumConnectionPoints@@$1?_GUID_b196b285_bab4_101a_b69c_00aa00341d07@@3U__s_GUID@@BPAUIConnectionPoint@@V?$_CopyInterface@UIConnectionPoint@@@ATL@@VCComSingleThreadModel@6@@ATL@@@ATL@@`
|
||||
- `.?AV?$CComObject@VCLMXProxyServer@@@ATL@@`
|
||||
- `.?AV?$CProxy_ILMXProxyServerEvents2@VCLMXProxyServer@@@@`
|
||||
- `.?AV?$CProxy_ILMXProxyServerEvents@VCLMXProxyServer@@@@`
|
||||
- `.?AV?$IConnectionPointContainerImpl@VCLMXProxyServer@@@ATL@@`
|
||||
- `.?AV?$IConnectionPointImpl@VCLMXProxyServer@@$1?DIID__ILMXProxyServerEvents2@@3U_GUID@@BVCComDynamicUnkArray@ATL@@@ATL@@`
|
||||
- `.?AV?$IConnectionPointImpl@VCLMXProxyServer@@$1?DIID__ILMXProxyServerEvents@@3U_GUID@@BVCComDynamicUnkArray@ATL@@@ATL@@`
|
||||
- `.?AV?$IDispatchImpl@UILMXProxyServer5@@$1?IID_ILMXProxyServer5@@3U_GUID@@B$1?LIBID_LMXPROXYLib@@3U3@B$00$0A@VCComTypeInfoHolder@ATL@@@ATL@@`
|
||||
- `.?AV?$_ICPLocator@$1?DIID__ILMXProxyServerEvents2@@3U_GUID@@B@ATL@@`
|
||||
- `.?AV?$_ICPLocator@$1?DIID__ILMXProxyServerEvents@@3U_GUID@@B@ATL@@`
|
||||
- `.?AVCLMXProxyServer@@`
|
||||
- `.\WriteWWW`
|
||||
- `0()MxSourceRequestingNmxWWW`
|
||||
- `0=vMX_E_LmxInvalidCommandWW`
|
||||
- `5MxSecurityVerifiedWriteW`
|
||||
- `8APrebindReferenceExWW`
|
||||
- `8UtILMXProxyServerW`
|
||||
- `:MX_E_SecuredWriteWWW`
|
||||
- `Any User cam write to these attributes. No security checking is done.Wa`
|
||||
- `BMXSTATUS_PROXYWW`
|
||||
- `CLMXProxyServer::Activate - Query for IMxScanOnDemand failed`
|
||||
- `CLMXProxyServer::Activate - Server Handle `
|
||||
- `CLMXProxyServer::Activate - returning HRESULT `
|
||||
- `CLMXProxyServer::AddBufferedItem - Server Handle `
|
||||
- `CLMXProxyServer::AddBufferedItem - Server Handle: `
|
||||
- `CLMXProxyServer::AddBufferedItem - Valid License: `
|
||||
- `CLMXProxyServer::AddItem - Server Handle: `
|
||||
- `CLMXProxyServer::AddItem - Valid License: `
|
||||
- `CLMXProxyServer::AddItem - returning HRESULT `
|
||||
- `CLMXProxyServer::AddItem2 - Server Handle: `
|
||||
- `CLMXProxyServer::AddItem2 - Valid License: `
|
||||
- `CLMXProxyServer::AddItem2 - returning HRESULT `
|
||||
- `CLMXProxyServer::Advise - Server Handle `
|
||||
- `CLMXProxyServer::Advise - returning HRESULT `
|
||||
- `CLMXProxyServer::AdviseSupervisory - Server Handle `
|
||||
- `CLMXProxyServer::AdviseSupervisory - returning HRESULT `
|
||||
- `CLMXProxyServer::ArchestrAUserToId - Server Handle: `
|
||||
- `CLMXProxyServer::ArchestrAUserToId - returning HRESULT E_INVALIDARG for invalid Server Handle`
|
||||
- `CLMXProxyServer::ArchestrAUserToId - returning HRESULT S_OK, UserId `
|
||||
- `CLMXProxyServer::AuthenticateUser - Server Handle: `
|
||||
- `CLMXProxyServer::AuthenticateUser - returning HRESULT E_INVALIDARG`
|
||||
- `CLMXProxyServer::AuthenticateUser - returning HRESULT S_OK UserId `
|
||||
- `CLMXProxyServer::InitializeDefaultLocale set to `
|
||||
- `CLMXProxyServer::Register - Client name NULL - returning E_POINTER HRESULT`
|
||||
- `CLMXProxyServer::Register - ClientName `
|
||||
- `CLMXProxyServer::Register - Unregistering existing Client app`
|
||||
- `CLMXProxyServer::Register - returning HRESULT `
|
||||
- `CLMXProxyServer::RemoveItem - Server Handle `
|
||||
- `CLMXProxyServer::RemoveItem - returning HRESULT `
|
||||
- `CLMXProxyServer::SetBufferedUpdateInterval - hLMXServer `
|
||||
- `CLMXProxyServer::SetBufferedUpdateInterval - returning E_INVALIDARG`
|
||||
- `CLMXProxyServer::Suspend - Query for IMxScanOnDemand failed`
|
||||
- `CLMXProxyServer::Suspend - Server Handle `
|
||||
- `CLMXProxyServer::Suspend - returning HRESULT `
|
||||
- `CLMXProxyServer::UnAdvise - Server Handle `
|
||||
- `CLMXProxyServer::UnAdvise - returning HRESULT `
|
||||
- `CLMXProxyServer::Unregister - Server Handle `
|
||||
- `CLMXProxyServer::Unregister - returning HRESULT `
|
||||
- `CLMXProxyServer::VerifyAdvisedItem - returning E_INVALIDARG`
|
||||
- `CLMXProxyServer::VerifyItemValid - hItem `
|
||||
- `CLMXProxyServer::VerifyItemValid - hLMXServer `
|
||||
- `CLMXProxyServer::Write - Server Handle `
|
||||
- `CLMXProxyServer::Write - returning HRESULT `
|
||||
- `CLMXProxyServer::WriteSecured - Server Handle `
|
||||
- `CLMXProxyServer::WriteVerified - returning HRESULT `
|
||||
- `CLSID = s '{C30B52F5-2CB5-4760-AF0A-3A344A7EB5DC}'`
|
||||
- `CProxy_ILMXProxyServerEvents2::Fire_OnBufferedDataChange firing event - Server Handle `
|
||||
- `CProxy_ILMXProxyServerEvents::Fire_OnDataChange firing event - Server Handle `
|
||||
- `CProxy_ILMXProxyServerEvents::Fire_OnWriteComplete firing event - Server Handle `
|
||||
- `CProxy_ILMXProxyServerEvents::Fire_OperationComplete firing event - Server Handle `
|
||||
- `CurVer = s 'LMXProxy.LMXProxyServer.1'`
|
||||
- `Failed to locate MiniDumpWriteDump to generate minidump. Maybe old version of dbghelp.dll is being used.`
|
||||
- `FindResourceW`
|
||||
- `Fire_OnWriteComplete - threw an unknown exception`
|
||||
- `ForceRemove {C30B52F5-2CB5-4760-AF0A-3A344A7EB5DC} = s 'LMXProxyServer Class'`
|
||||
- `HILMXPROXYLibW`
|
||||
- `ILMXProxyServer InterfaceW`
|
||||
- `ILMXProxyServer2 Interface`
|
||||
- `ILMXProxyServer2@`
|
||||
- `ILMXProxyServer3`
|
||||
- `ILMXProxyServer3 Interface`
|
||||
- `ILMXProxyServer4`
|
||||
- `ILMXProxyServer4 Interface`
|
||||
- `ILMXProxyServer5 Interface `
|
||||
- `ILMXProxyServer5l `
|
||||
- `ISecurityToken InterfaceWW`
|
||||
- `IUserAuthenticator InterfaceWW`
|
||||
- `IUserAuthenticator2 InterfaceW`
|
||||
- `IUserAuthenticator3 InterfaceW`
|
||||
- `IUserAuthenticator4 InterfaceW`
|
||||
- `IUserAuthenticator5 InterfaceW`
|
||||
- `IUserAuthenticator6 InterfaceW`
|
||||
- `IUserAuthenticator7 InterfaceW!`
|
||||
- `Interface`
|
||||
- `LMXProxy`
|
||||
- `LMXProxy 1.0 Type LibraryW`
|
||||
- `LMXProxy Module`
|
||||
- `LMXProxy.DLL`
|
||||
- `LMXProxy.LMXProxyServer = s 'LMXProxyServer Class'`
|
||||
- `LMXProxy.LMXProxyServer.1 = s 'LMXProxyServer Class'`
|
||||
- `LMXProxyServer ClassWW`
|
||||
- `LMXProxyServer.cpp`
|
||||
- `LMXProxyServerWW`
|
||||
- `LmxProxy`
|
||||
- `LmxProxy_v0045`
|
||||
- `MX_E_LmxVersionMismatchW`
|
||||
- `MX_E_NotWriteableWWW`
|
||||
- `MX_E_VerifiedWriteWW`
|
||||
- `MX_E_WriteAccessDeniedWW`
|
||||
- `MiniDumpWriteDump`
|
||||
- `Multiple Threads calling CLMXProxyServer::Register() - not allowed.`
|
||||
- `MxSecuritySecuredWriteWW`
|
||||
- `MxSourceRequestingLmxWWW`
|
||||
- `MxSourceRespondingLmxWWW`
|
||||
- `MxSourceRespondingNmxWWW`
|
||||
- `OnWriteCompleteW4!`
|
||||
- `Operators write to these attributes during normal day-to-day operations (Setpoint, Command, etc.)Ws`
|
||||
- `Operators write to these attributes for normal interaction with a highly secured object. Forces re-authentication.WWW`
|
||||
- `Operators write to these attributes for normal interaction with a very highly secured object, This is similar to Secured Write however it also required a second user authentication.Wn`
|
||||
- `PrebindReference`
|
||||
- `ProgID = s 'LMXProxy.LMXProxyServer.1'`
|
||||
- `ProxyServer`
|
||||
- `ProxyServerDataChange`
|
||||
- `RemoteWriteW`
|
||||
- `ShutdownMxConsumerWW`
|
||||
- `SupervisoryRegisterPreboundReferencex`
|
||||
- `SuspendReference|`
|
||||
- `UnregisterPreboundReferenceWt`
|
||||
- `UserRegisterPreboundReferenceWWW`
|
||||
- `VersionIndependentProgID = s 'LMXProxy.LMXProxyServer'`
|
||||
- `WriteSecured`
|
||||
- `WriteSecured2WWW`
|
||||
- `[MX_E_NmxVersionMismatchW`
|
||||
- `_ILMXProxyServerEvents InterfaceWW!`
|
||||
- `_ILMXProxyServerEvents2 InterfaceW`
|
||||
- `_ILMXProxyServerEvents2W4!`
|
||||
- `a_ILMXProxyServerEventsWW`
|
||||
- `d:\bldsrc\6\s\src\lmxproxy\mxcallback.h`
|
||||
- `hLMXServerHandle`
|
||||
- `lMX_E_NmxInvalidCommandWW`
|
||||
- `lmxproxy is loaded by internal Process and mxaccess licensing is not required`
|
||||
- `lmxproxy loaded by the Process ProcessName :%s`
|
||||
- `nMxCategoryPendingWWWd`
|
||||
- `nMxQualifiedStructWWW``
|
||||
- `phLMXServerHandleWWW`
|
||||
- `preboundRefHandleWWW`
|
||||
- `vWrite2WW`
|
||||
@@ -0,0 +1,249 @@
|
||||
# NmxAdptr.dll
|
||||
|
||||
- Path: `C:\Program Files (x86)\ArchestrA\Framework\Bin\NmxAdptr.dll`
|
||||
- Size: 369536 bytes
|
||||
- Machine: x86
|
||||
- PE timestamp: 2020-04-06T01:17:01+00:00
|
||||
- ImageBase: `0x10000000`
|
||||
|
||||
## Exports
|
||||
|
||||
| Ordinal | RVA | Name |
|
||||
| ---: | ---: | --- |
|
||||
| 1 | 0x00016d93 | `DllCanUnloadNow` |
|
||||
| 2 | 0x0001e66a | `DllGetClassObject` |
|
||||
| 3 | 0x0001ee73 | `DllRegisterServer` |
|
||||
| 4 | 0x0001ee82 | `DllUnregisterServer` |
|
||||
|
||||
## Imports
|
||||
|
||||
- `WS2_32.dll`: `gethostbyname`, `inet_addr`, `setsockopt`, `WSACleanup`, `WSAGetLastError`, `WSASocketW`, `inet_ntoa`, `sendto`, `recvfrom`, `select`, `closesocket`, `WSAStartup`
|
||||
- `KERNEL32.dll`: `UnmapViewOfFile`, `lstrlenW`, `GetLastError`, `EnterCriticalSection`, `LeaveCriticalSection`, `InitializeCriticalSectionAndSpinCount`, `DeleteCriticalSection`, `GetProcAddress`, `GetModuleHandleW`, `FreeLibrary`, `FindClose`, `FindFirstFileW`, `GetModuleFileNameW`, `InterlockedIncrement`, `LocalFree`, `GetSystemDirectoryW`, `GetWindowsDirectoryW`, `LoadLibraryExW`, `FindNextFileW`, `LocalAlloc`, `FormatMessageW`, `CreateDirectoryW`, `MultiByteToWideChar`, `lstrlenA`, `GetCurrentThreadId`, `GetLocalTime`, `InterlockedDecrement`, `OutputDebugStringW`, `MapViewOfFile`, `OpenFileMappingW`, `CreateFileMappingW`, `GetTickCount`, `DeleteFileW`, `GetCurrentProcess`, `GetCurrentProcessId`, `CreateFileW`, `GetComputerNameW`, `SetEvent`, `WaitForMultipleObjects`, `CreateThread`, `CreateEventW`, `TerminateThread`, `ReleaseMutex`, `WriteFile`, `SetFilePointer`, `GetPrivateProfileIntA`, `GetModuleFileNameA`, `GetPrivateProfileStringA`, `CreateFileA`, `OutputDebugStringA`, `GetFileAttributesW`, `DisableThreadLibraryCalls`, `WideCharToMultiByte`, `Sleep`, `HeapFree`, `HeapAlloc`, `GetProcessHeap`, `RaiseException`, `EncodePointer`, `GetSystemTimeAsFileTime`, `QueryPerformanceCounter`, `IsDebuggerPresent`, `SetUnhandledExceptionFilter`, `WaitForSingleObject`, `CloseHandle`, `CreateMutexW`, `DecodePointer`, `InterlockedExchange`, `InterlockedCompareExchange`, `TerminateProcess`, `UnhandledExceptionFilter`, `FlushFileBuffers`
|
||||
- `USER32.dll`: `CharNextW`, `wsprintfA`, `UnregisterClassW`, `InSendMessageEx`
|
||||
- `ADVAPI32.dll`: `SetSecurityDescriptorDacl`, `RegOpenKeyExW`, `RegCloseKey`, `RegQueryValueExW`, `RegSetValueExW`, `InitializeSecurityDescriptor`
|
||||
- `ole32.dll`: `CoTaskMemAlloc`, `CoUninitialize`, `CoCreateFreeThreadedMarshaler`, `CoFileTimeNow`, `CoTaskMemRealloc`, `CoInitialize`, `CoCreateInstance`, `CoTaskMemFree`
|
||||
- `OLEAUT32.dll`: `VariantInit`, `VariantClear`, `VariantChangeType`, `SysStringLen`, `SysFreeString`, `VarBstrCat`, `SysAllocString`, `SysAllocStringByteLen`, `SysStringByteLen`, `SysAllocStringLen`, `SetErrorInfo`, `GetErrorInfo`, `UnRegisterTypeLib`, `RegisterTypeLib`, `CreateErrorInfo`
|
||||
- `ATL100.DLL`: `ord_64`, `ord_61`, `ord_68`, `ord_56`, `ord_49`, `ord_15`, `ord_32`, `ord_23`, `ord_30`
|
||||
- `SHLWAPI.dll`: `PathAppendW`, `PathRemoveFileSpecW`
|
||||
- `MSVCP100.dll`: `??0?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAE@XZ`, `?_Pninc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEPA_WXZ`, `??1?$basic_iostream@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?width@ios_base@std@@QBE_JXZ`, `?flags@ios_base@std@@QBEHXZ`, `?fill@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBE_WXZ`, `?sputc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@QAEG_W@Z`, `?sputn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@QAE_JPB_W_J@Z`, `?width@ios_base@std@@QAE_J_J@Z`, `?setstate@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QAEXH_N@Z`, `?uncaught_exception@std@@YA_NXZ`, `?_Osfx@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEXXZ`, `?good@ios_base@std@@QBE_NXZ`, `?tie@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBEPAV?$basic_ostream@_WU?$char_traits@_W@std@@@2@XZ`, `?flush@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@XZ`, `?_BADOFF@std@@3_JB`, `?pbase@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?setp@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W00@Z`, `?pbump@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXH@Z`, `?setg@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W00@Z`, `??0?$basic_iostream@_WU?$char_traits@_W@std@@@std@@QAE@PAV?$basic_streambuf@_WU?$char_traits@_W@std@@@1@@Z`, `??0?$basic_ios@_WU?$char_traits@_W@std@@@std@@IAE@XZ`, `?_Orphan_all@_Container_base0@std@@QAEXXZ`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z`, `?ends@std@@YAAAV?$basic_ostream@_WU?$char_traits@_W@std@@@1@AAV21@@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@J@Z`, `??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@P6AAAVios_base@1@AAV21@@Z@Z`, `??1?$basic_ios@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?gbump@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXH@Z`, `?gptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?imbue@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEXABVlocale@2@@Z`, `?setf@ios_base@std@@QAEHHH@Z`, `?_Xout_of_range@std@@YAXPBD@Z`, `?setp@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IAEXPA_W0@Z`, `?sync@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEHXZ`, `?eback@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?egptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?epptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?pptr@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@IBEPA_WXZ`, `?_Xlength_error@std@@YAXPBD@Z`, `?rdbuf@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBEPAV?$basic_streambuf@_WU?$char_traits@_W@std@@@2@XZ`, `??1?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAE@XZ`, `?_Lock@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAEXXZ`, `?_Unlock@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UAEXXZ`, `?showmanyc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JXZ`, `?uflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ`, `?xsgetn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JPA_W_J@Z`, `?xsputn@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAE_JPB_W_J@Z`, `?setbuf@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEPAV12@PA_W_J@Z`
|
||||
- `dbghelp.dll`: `MiniDumpWriteDump`
|
||||
- `MSVCR100.dll`: `realloc`, `_unlock`, `__dllonexit`, `_lock`, `sprintf_s`, `vsprintf_s`, `strlen`, `strncpy_s`, `fopen_s`, `fclose`, `fprintf`, `_snprintf_s`, `_purecall`, `wcsncpy_s`, `strrchr`, `_wcsicmp`, `_onexit`, `?terminate@@YAXXZ`, `_malloc_crt`, `_encoded_null`, `_initterm`, `_initterm_e`, `_amsg_exit`, `__CppXcptFilter`, `_except_handler4_common`, `?_type_info_dtor_internal_method@type_info@@QAEXXZ`, `_crt_debugger_hook`, `__clean_type_info_names_internal`, `malloc`, `_vsnwprintf_s`, `swprintf_s`, `memmove_s`, `_stricmp`, `??3@YAXPAX@Z`, `wcsrchr`, `free`, `memcmp`, `memcpy_s`, `strstr`, `memcpy`, `memmove`, `??2@YAPAXI@Z`, `__CxxFrameHandler3`, `_snwprintf_s`, `_CxxThrowException`, `memset`, `wcscat_s`, `_wsplitpath_s`, `??_V@YAXPAX@Z`, `??1exception@std@@UAE@XZ`, `??0exception@std@@QAE@ABQBD@Z`, `?what@exception@std@@UBEPBDXZ`, `wcslen`, `??0exception@std@@QAE@ABV01@@Z`, `?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z`, `_splitpath_s`, `_makepath_s`, `calloc`, `_recalloc`, `wcscpy_s`, `wcscmp`
|
||||
|
||||
## Resources
|
||||
|
||||
| Type | ID/name | Lang | RVA | Size |
|
||||
| --- | --- | ---: | ---: | ---: |
|
||||
| `REGISTRY` | `101` | 1033 | 0x0003d1cc | 628 |
|
||||
| `REGISTRY` | `102` | 1033 | 0x0003d440 | 641 |
|
||||
| `TYPELIB` | `1` | 1033 | 0x0003d6c4 | 108824 |
|
||||
| `6` | `7` | 1033 | 0x00057fdc | 48 |
|
||||
| `16` | `1` | 1033 | 0x0005800c | 964 |
|
||||
| `24` | `2` | 1033 | 0x000583d0 | 346 |
|
||||
|
||||
## GUID hits
|
||||
|
||||
(none)
|
||||
|
||||
## Interesting strings
|
||||
|
||||
- ` _lNetNMXHeartbeatsMissedCntWWl`
|
||||
- `!0m=NMXMTYPE_HEARTBEAT_DISCONNECT_REQWWW`
|
||||
- `!SlNetNMXHeartbeatPeriodWWl`
|
||||
- `(preboundReferenceHandleW<(`
|
||||
- `)pNmxStatsInfoWWWx7`
|
||||
- `********** End of Nmx Dump **********`
|
||||
- `-__MIDL___MIDL_itf_NmxAdptr_0001_0081_0001WWW`
|
||||
- `.?AUINmx2@@`
|
||||
- `.?AUINmx3@@`
|
||||
- `.?AUINmx4@@`
|
||||
- `.?AUINmx@@`
|
||||
- `.?AUINmxHeartbeat@@`
|
||||
- `.?AUINmxStatistics@@`
|
||||
- `.?AUINmxSvcCallback@@`
|
||||
- `.?AUINmxSvcStatistics@@`
|
||||
- `.?AV?$CComCoClass@VCNmxAdapter@@$1?CLSID_Nmx@@3U_GUID@@B@ATL@@`
|
||||
- `.?AV?$CComCoClass@VCNmxStatistics@@$1?CLSID_NmxStatistics@@3U_GUID@@B@ATL@@`
|
||||
- `.?AV?$CComObject@VCNmxAdapter@@@ATL@@`
|
||||
- `.?AV?$CComObject@VCNmxStatistics@@@ATL@@`
|
||||
- `.?AVCNmxAdapter@@`
|
||||
- `.?AVCNmxAdptrStats@@`
|
||||
- `.?AVCNmxStatistics@@`
|
||||
- `/PutRequestEx@`
|
||||
- `0()MxSourceRequestingNmxWWW`
|
||||
- `0<NNmxSvcDisconnectingW`
|
||||
- `0=vMX_E_LmxInvalidCommandWW `
|
||||
- `0^BNmxSvcConnectedW`
|
||||
- `0pNmxSvcStats`
|
||||
- `5MxSecurityVerifiedWriteW`
|
||||
- `8APrebindReferenceExWW$,`
|
||||
- `8WYINmxSvcStatisticsWWW`
|
||||
- `:MX_E_SecuredWriteWWW `
|
||||
- `<nmx packet is null>`
|
||||
- `=NMXMTYPE_SET_HEARTBEAT_RATEW`
|
||||
- `>NMXMTYPE_VERSION_ERRORWW`
|
||||
- `Adapter_%d CNmxAdapter::PutRequest received invalid argument. Size is %d`
|
||||
- `Adapter_%d CNmxAdapter::PutRequest received invalid pointer.`
|
||||
- `Adapter_%d Enter PutRequest. Destination Platform %d Engine %d is OVERLOADED`
|
||||
- `Adapter_%d Enter PutRequest. Destination: Platform %d, Engine %d. Size = %d`
|
||||
- `Adapter_%d Enter PutRequestEx. Destination: Platform %d, Engine %d. Size = %d`
|
||||
- `Adapter_%d GetResponse from Platform %d Engine %d, Cookie=%d, Size=%d, RespCode=%x`
|
||||
- `Adapter_%d PutRequest failed. Dest Platform=%d, Engine=%d. Cookie=%d.`
|
||||
- `Adapter_%d PutRequest successfully to Platform=%d, Engine=%d. Cookie=%d.`
|
||||
- `Adapter_%d PutRequestEx failed. Dest Platform=%d, Engine=%d.`
|
||||
- `Adapter_%d PutRequestEx successfully to Platform=%d, Engine=%d. `
|
||||
- `Adapter_%d couldn't Initialize NmxSvc.`
|
||||
- `Any User cam write to these attributes. No security checking is done.Wa`
|
||||
- `C:\nmx_objectdebug.ini`
|
||||
- `CNmxAdapter::CheckTimeouts - calling TransferData to platform %d, engine %d, message %S`
|
||||
- `CNmxAdapter::CleanRequests - calling ProcessDataReceived to platform %d, engine %d, message %s`
|
||||
- `CNmxAdapter::ClearStats m_pListAnonymousID is set to NULL`
|
||||
- `CNmxAdapter::ClearStats succeded`
|
||||
- `CNmxAdapter::FinalRelease - enter`
|
||||
- `CNmxAdapter::FinalRelease - exited`
|
||||
- `CNmxAdapter::GenerateErrorRequest - failed to allocate memory size %d`
|
||||
- `CNmxAdapter::GenerateErrorRequest() entered.`
|
||||
- `CNmxAdapter::GenerateErrorRequest() exited.`
|
||||
- `CNmxAdapter::GetAnonymousEngineID - *m_pListAnonymousID %d`
|
||||
- `CNmxAdapter::GetAnonymousEngineID - *pEngineID %d`
|
||||
- `CNmxAdapter::GetAnonymousEngineID - ENTER`
|
||||
- `CNmxAdapter::GetAnonymousEngineID - FAILED`
|
||||
- `CNmxAdapter::GetAnonymousEngineID - m_pNmxStats == NULL`
|
||||
- `CNmxAdapter::GetPartnerVersion NmxSvc pointer 0x%x, hr 0x%x`
|
||||
- `CNmxAdapter::GetPartnerVersion NmxSvc pointer reinitialized 0x%x, hr 0x%x`
|
||||
- `CNmxAdapter::GetPartnerVersion for platform lPlatformId %d, plVersion %d hr 0x%x`
|
||||
- `CNmxAdapter::GetPriorityRequest - Discarding expired %d byte message from P%d E%d (cookie %d). In total: %d messages %I64d bytes`
|
||||
- `CNmxAdapter::GetResponse - ENTER: found a response for Engine %d`
|
||||
- `CNmxAdapter::GetResponse - GetPacketsSentInfo return NULL ptr for C%d P%d E%d`
|
||||
- `CNmxAdapter::GetResponse - m_Id.EngineId %d from Platform %d Engine %d, Cookie=%d, Size=%d, RespCode=%x`
|
||||
- `CNmxAdapter::GetResponse - m_Id.EngineId %d got an exception`
|
||||
- `CNmxAdapter::GetResponse - m_Id.EngineId Platform %d Engine %d, *pdwRequestHandle %d *pdwSize %d *pdwResponseCode %x`
|
||||
- `CNmxAdapter::Initialize - EXIT`
|
||||
- `CNmxAdapter::Initialize - GetAnonymousEngineID FAILED.`
|
||||
- `CNmxAdapter::InitializeAnonymous - ENTER pPlatformId %d pEngineId %d`
|
||||
- `CNmxAdapter::InitializeAnonymous - EXIT`
|
||||
- `CNmxAdapter::InitializeAnonymous - InitNmxStats FAILED`
|
||||
- `CNmxAdapter::ParseExtendedRequest - DISABLE_ENGINE_DIAGS on C%d P%d E%d`
|
||||
- `CNmxAdapter::ParseExtendedRequest - ENABLE_ENGINE_DIAGS on C%d P%d E%d`
|
||||
- `CNmxAdapter::ParseExtendedRequest - NMX_DUMP_LEVEL1 on C%d P%d E%d`
|
||||
- `CNmxAdapter::ParseExtendedRequest - NMX_DUMP_LEVEL2 on C%d P%d E%d`
|
||||
- `CNmxAdapter::ParseExtendedRequest - NMX_DUMP_LEVEL3 on C%d P%d E%d`
|
||||
- `CNmxAdapter::ParseExtendedRequest - NMX_DUMP_LEVEL4 on C%d P%d E%d`
|
||||
- `CNmxAdapter::PutBadVersionResponse - Adapter_%d Failed PutResponse to Platform %d, Engine %d. Cookie=%d. TransferData Error=%x`
|
||||
- `CNmxAdapter::PutBadVersionResponse - Adapter_%d PutResponse to Platform %d, Engine %d. Cookie=%d. Size = %d.`
|
||||
- `CNmxAdapter::PutBadVersionResponse - calling TransferData to platform %d engine %d dwSize %d message %S`
|
||||
- `CNmxAdapter::PutRequest - ENTER m_Id.EngineId %d Destination: Platform %d, Engine %d. Size = %d`
|
||||
- `CNmxAdapter::PutRequest - FAILED (hr = %X). Sending from EngineId %d to dwPlatformId %d dwEngineId %d. *pdwRequestHandle %d.`
|
||||
- `CNmxAdapter::PutRequest - m_Id.EngineId %d successfully to Platform=%d, Engine=%d. Cookie=%d`
|
||||
- `CNmxAdapter::PutRequestEx - ENTER m_Id.EngineId %d Destination: Platform %d, Engine %d. Size = %d`
|
||||
- `CNmxAdapter::PutRequestEx - TransferData FAILED (hr = %X). Sending from EngineId %d to dwPlatformId %d dwEngineId %d.`
|
||||
- `CNmxAdapter::PutRequestEx - calling TransferData to platform %d engine %d %x dwSize %d message %S`
|
||||
- `CNmxAdapter::PutRequestEx - m_Id.EngineId %d successfully put request to Platform=%d, Engine=%d.`
|
||||
- `CNmxAdapter::PutResponse - Adapter_%d Failed to put response to Platform %d, Engine %d. Cookie=%d. Error=%x`
|
||||
- `CNmxAdapter::PutResponse - Adapter_%d PutResponse to Platform %d, Engine %d. Cookie=%d. Size = %d.`
|
||||
- `CNmxAdapter::PutResponse - calling TransferData to platform %d dwSize %d message %S`
|
||||
- `CNmxAdapter::RemoveSubscriberEngine SyncCallThreadFn timed out`
|
||||
- `CNmxAdapter::RemoveSubscriberEngine SyncCallThreadFn was called. Return value is 0x%x.`
|
||||
- `CNmxAdapter::RemoveSubscriberEngine is called, but current window procedure is processing a input-synchronous message.`
|
||||
- `CNmxAdapter::SyncCallThreadFn exited`
|
||||
- `CNmxAdapter::TransferData FAILED. NmxSvc cannot be created`
|
||||
- `CNmxAdapter::TransferData recreating NmxSvc`
|
||||
- `CNmxAdapter::isEngineValid Unknown error from Bootstrap::GetPlatformIdentity(), hr = %x`
|
||||
- `CNmxAdapter::~CNmxAdapter - enter`
|
||||
- `CNmxAdapter::~CNmxAdapter - exit`
|
||||
- `CNmxAdapter_%d::GetConnectionInfo - will connect to platform %d`
|
||||
- `Calling ReRegisterNmxSvc in TransferData because NmxSvc pointer is bad.`
|
||||
- `CoTaskMemAlloc() failed in CNmxAdapter::GetRequest()`
|
||||
- `CoTaskMemAlloc() failed in CNmxAdapter::GetResponse()`
|
||||
- `CoTaskMemAlloc() failed in CNmxAdapter::PutBadVersionResponse()`
|
||||
- `CoTaskMemAlloc() failed in CNmxAdapter::PutRequestEx()`
|
||||
- `CurVer = s 'NmxAdptr.NmxStatistics.1'`
|
||||
- `CurVer = s 'WonderWare.Nmx.CNmxAdapter.1'`
|
||||
- `E:\BldSrc\6\s\src\Nmx\NmxAdptr\Release\NmxAdptr.pdb`
|
||||
- `EGetResponse2`
|
||||
- `ElNmxMsgMxTimeout`
|
||||
- `FC:\nmxdebug.ini`
|
||||
- `Failed to create share memory for NmxStatistics`
|
||||
- `Failed to locate MiniDumpWriteDump to generate minidump. Maybe old version of dbghelp.dll is being used.`
|
||||
- `ForceRemove {4169B47A-54BD-11D3-A9CC-00A0C9FB55A0} = s 'NmxStatistics Class'`
|
||||
- `ForceRemove {42DB0511-28BE-11D3-80C0-00104B5F96A7} = s 'NmxAdptr'`
|
||||
- `GetNmxStatistics`
|
||||
- `GetNmxSvcStatisticsW`
|
||||
- `GetResponseW`
|
||||
- `Global\Nmx.Statistic`
|
||||
- `Global\Nmx.Statistic.Lock`
|
||||
- `IBootstrapController Interface`
|
||||
- `IBootstrapController2 InterfaceWWW`
|
||||
- `IBootstrapController3 InterfaceWWW'`
|
||||
- `IBootstrapController4 InterfaceWWW`
|
||||
- `IBootstrapController5 InterfaceWWW`
|
||||
- `IBootstrapProcessController InterfaceW`
|
||||
- `IBootstrapRegister InterfaceWW!`
|
||||
- `IBootstrapRegister2 InterfaceW`
|
||||
- `IBootstrapRegister3 InterfaceW`
|
||||
- `IBootstrapRegister4 InterfaceW`
|
||||
- `IBootstrapRegister5 InterfaceW`
|
||||
- `IBootstrapRegister6 InterfaceW"`
|
||||
- `IBootstrapRegistryAccess Interface%`
|
||||
- `IBootstrapStatusCallback Interface`
|
||||
- `IFMC Interface`
|
||||
- `IFMCCallback Interface`
|
||||
- `IInfoNotify InterfaceW`
|
||||
- `IMCHeartbeatCallback Interface`
|
||||
- `INmx2WWW`
|
||||
- `INmx3WWW@`
|
||||
- `INmx4WWW`
|
||||
- `INmxHeartbeatWWW`
|
||||
- `INmxNotifyWW`
|
||||
- `INmxService InterfaceW`
|
||||
- `INmxService2 Interface`
|
||||
- `INmxServiceWd`
|
||||
- `INmxStatistics InterfaceWW`
|
||||
- `INmxStatus InterfaceWW`
|
||||
- `INmxStatusWW`
|
||||
- `INmxSvcCallbackW`
|
||||
- `IPlatformInfoServer InterfaceW`
|
||||
- `IPlatformInfoServer2 Interface`
|
||||
- `IPlatformInformationClerk InterfaceWWW$`
|
||||
- `IPlatformInformationClerk2 InterfaceWW$`
|
||||
- `IPlatformInformationClerk3 InterfaceWW`
|
||||
- `IPlatformStatusCallback InterfaceW`
|
||||
- `IProcessStatusCallback InterfaceWW`
|
||||
- `IStatusNotify InterfaceWWW`
|
||||
- `IUdpMessage InterfaceW`
|
||||
- `InitializeAnonymous() - InitNmxService failed.`
|
||||
- `InternalAddRef() CNmxAdapter::%p refcount = %d`
|
||||
- `InternalRelease() CNmxAdapter::%p refcount = %d`
|
||||
- `MINmxService2`
|
||||
- `MX_E_LmxVersionMismatchW `
|
||||
- `MX_E_NotWriteableWWW `
|
||||
- `MX_E_VerifiedWriteWW `
|
||||
- `MX_E_WriteAccessDeniedWW `
|
||||
- `MiniDumpWriteDump`
|
||||
- `MxSecuritySecuredWriteWW`
|
||||
- `MxSourceRequestingLmxWWW`
|
||||
- `MxSourceRespondingLmxWWW`
|
||||
- `MxSourceRespondingNmxWWW`
|
||||
- `NMX Header %s: buffer size pktHeader.dwDataSize %d doesn't match received message size of %d`
|
||||
- `NMXMTYPE_CONNECT_INFOWWW`
|
||||
- `NMXMTYPE_CONNECT_INFO_REQWWW`
|
||||
- `NMXMTYPE_ENGINE_DATA`
|
||||
- `NMXMTYPE_GET_HEARTBEAT_RATEW`
|
||||
- `NMXMTYPE_PLATFORM_HEARTBEATW`
|
||||
- `NPutRequest2W`
|
||||
- `NmxAdapter.cpp`
|
||||
- `NmxAdptr`
|
||||
- `NmxAdptr CoCreateInstance for NmxSvc returned error 0x%x`
|
||||
- `NmxAdptr Module`
|
||||
- `NmxAdptr.DLL`
|
||||
- `NmxAdptr.NmxStatistics = s 'NmxStatistics Class'`
|
||||
- `NmxAdptr.NmxStatistics.1 = s 'NmxStatistics Class'`
|
||||
- `NmxQueueError`
|
||||
- `NmxQueueHandle`
|
||||
- `NmxRefCount`
|
||||
- `NmxService ClassWW`
|
||||
- `NmxServiceWW`
|
||||
- `NmxStatistics ClassWWW#`
|
||||
- `NmxStatistics.cpp`
|
||||
- `NmxStatisticsWWW`
|
||||
- `NmxSubscriberEngine`
|
||||
- ... 72 more
|
||||
@@ -0,0 +1,68 @@
|
||||
# NmxSvcps.dll
|
||||
|
||||
- Path: `C:\Program Files (x86)\ArchestrA\Framework\Bin\NmxSvcps.dll`
|
||||
- Size: 46464 bytes
|
||||
- Machine: x86
|
||||
- PE timestamp: 2020-04-06T01:17:23+00:00
|
||||
- ImageBase: `0x10000000`
|
||||
|
||||
## Exports
|
||||
|
||||
| Ordinal | RVA | Name |
|
||||
| ---: | ---: | --- |
|
||||
| 1 | 0x00001040 | `DllCanUnloadNow` |
|
||||
| 2 | 0x00001000 | `DllGetClassObject` |
|
||||
| 3 | 0x000010a0 | `DllRegisterServer` |
|
||||
| 4 | 0x000010e0 | `DllUnregisterServer` |
|
||||
|
||||
## Imports
|
||||
|
||||
- `RPCRT4.dll`: `NdrOleAllocate`, `NdrOleFree`, `IUnknown_QueryInterface_Proxy`, `IUnknown_AddRef_Proxy`, `IUnknown_Release_Proxy`, `CStdStubBuffer_QueryInterface`, `CStdStubBuffer_AddRef`, `CStdStubBuffer_Connect`, `CStdStubBuffer_Disconnect`, `CStdStubBuffer_Invoke`, `CStdStubBuffer_IsIIDSupported`, `CStdStubBuffer_CountRefs`, `CStdStubBuffer_DebugServerQueryInterface`, `CStdStubBuffer_DebugServerRelease`, `NdrDllUnregisterProxy`, `NdrDllRegisterProxy`, `NdrCStdStubBuffer_Release`, `NdrDllCanUnloadNow`, `NdrDllGetClassObject`
|
||||
- `KERNEL32.dll`: `ExitProcess`, `HeapSize`, `GetStringTypeW`, `MultiByteToWideChar`, `LCMapStringW`, `RtlUnwind`, `GetModuleFileNameW`, `WriteFile`, `GetCurrentProcess`, `TerminateProcess`, `IsDebuggerPresent`, `SetUnhandledExceptionFilter`, `UnhandledExceptionFilter`, `LoadLibraryW`, `HeapReAlloc`, `HeapAlloc`, `DisableThreadLibraryCalls`, `IsValidCodePage`, `GetOEMCP`, `GetACP`, `GetCPInfo`, `EnterCriticalSection`, `GetCurrentThreadId`, `DecodePointer`, `GetCommandLineA`, `EncodePointer`, `TlsAlloc`, `TlsGetValue`, `TlsSetValue`, `TlsFree`, `InterlockedIncrement`, `GetModuleHandleW`, `SetLastError`, `GetLastError`, `InterlockedDecrement`, `GetProcAddress`, `HeapFree`, `Sleep`, `IsProcessorFeaturePresent`, `SetHandleCount`, `GetStdHandle`, `InitializeCriticalSectionAndSpinCount`, `GetFileType`, `GetStartupInfoW`, `DeleteCriticalSection`, `GetModuleFileNameA`, `FreeEnvironmentStringsW`, `WideCharToMultiByte`, `GetEnvironmentStringsW`, `HeapCreate`, `HeapDestroy`, `QueryPerformanceCounter`, `GetTickCount`, `GetCurrentProcessId`, `GetSystemTimeAsFileTime`, `LeaveCriticalSection`
|
||||
- `OLEAUT32.dll`: `BSTR_UserSize`, `BSTR_UserMarshal`, `BSTR_UserUnmarshal`, `BSTR_UserFree`
|
||||
|
||||
## Resources
|
||||
|
||||
| Type | ID/name | Lang | RVA | Size |
|
||||
| --- | --- | ---: | ---: | ---: |
|
||||
| `16` | `1` | 1033 | 0x0000c0a0 | 972 |
|
||||
| `24` | `2` | 1033 | 0x0000c46c | 346 |
|
||||
|
||||
## GUID hits
|
||||
|
||||
(none)
|
||||
|
||||
## Interesting strings
|
||||
|
||||
- `CStdStubBuffer_AddRef`
|
||||
- `CStdStubBuffer_Connect`
|
||||
- `CStdStubBuffer_CountRefs`
|
||||
- `CStdStubBuffer_DebugServerQueryInterface`
|
||||
- `CStdStubBuffer_DebugServerRelease`
|
||||
- `CStdStubBuffer_Disconnect`
|
||||
- `CStdStubBuffer_Invoke`
|
||||
- `CStdStubBuffer_IsIIDSupported`
|
||||
- `CStdStubBuffer_QueryInterface`
|
||||
- `INmxNotify`
|
||||
- `INmxService`
|
||||
- `INmxService2`
|
||||
- `INmxStatus`
|
||||
- `INmxSvcCallback`
|
||||
- `INmxSvcStatistics`
|
||||
- `IUnknown_AddRef_Proxy`
|
||||
- `IUnknown_QueryInterface_Proxy`
|
||||
- `IUnknown_Release_Proxy`
|
||||
- `NdrCStdStubBuffer_Release`
|
||||
- `NdrDllCanUnloadNow`
|
||||
- `NdrDllGetClassObject`
|
||||
- `NdrDllRegisterProxy`
|
||||
- `NdrDllUnregisterProxy`
|
||||
- `NdrOleAllocate`
|
||||
- `NdrOleFree`
|
||||
- `NmxSvcPS.dll`
|
||||
- `NmxSvc_v0032`
|
||||
- `NmxSvcps Module`
|
||||
- `NmxSvcps.dll`
|
||||
- `RPCRT4.dll`
|
||||
- `WriteFile`
|
||||
- ``.orpc`
|
||||
@@ -0,0 +1,37 @@
|
||||
# WWProxyStub.dll
|
||||
|
||||
- Path: `C:\Program Files (x86)\ArchestrA\Framework\Bin\WWProxyStub.dll`
|
||||
- Size: 9880 bytes
|
||||
- Machine: x86
|
||||
- PE timestamp: 2020-04-08T00:24:04+00:00
|
||||
- ImageBase: `0x10000000`
|
||||
|
||||
## Exports
|
||||
|
||||
| Ordinal | RVA | Name |
|
||||
| ---: | ---: | --- |
|
||||
| 1 | 0x00001020 | `DllCanUnloadNow` |
|
||||
| 2 | 0x00001010 | `DllGetClassObject` |
|
||||
| 3 | 0x00001030 | `DllRegisterServer` |
|
||||
| 4 | 0x00001040 | `DllUnregisterServer` |
|
||||
|
||||
## Imports
|
||||
|
||||
(none)
|
||||
|
||||
## Resources
|
||||
|
||||
| Type | ID/name | Lang | RVA | Size |
|
||||
| --- | --- | ---: | ---: | ---: |
|
||||
| `16` | `1` | 1033 | 0x000030a0 | 1016 |
|
||||
| `24` | `2` | 1033 | 0x00003498 | 346 |
|
||||
|
||||
## GUID hits
|
||||
|
||||
(none)
|
||||
|
||||
## Interesting strings
|
||||
|
||||
- `WWProxyStub Module`
|
||||
- `WWProxyStub.DLL`
|
||||
- `WWProxyStub.dll`
|
||||
Reference in New Issue
Block a user