Files
mxaccess/analysis/ghidra/exports/NmxSvcps.dll.functions.tsv
T
Joseph Doherty fe2a6db786
rust / build / test / clippy / fmt (push) Has been cancelled
Initial project state: .NET reference, design, Rust port (M0+M1), evidence
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>
2026-05-05 06:21:00 -04:00

11 KiB

1entrynamesignaturebody_sizecall_countinteresting_calls
210001000DllGetClassObjectHRESULT DllGetClassObject(IID * rclsid, IID * riid, LPVOID * ppv)571NdrDllGetClassObject
310001040DllCanUnloadNowHRESULT DllCanUnloadNow(void)121NdrDllCanUnloadNow
410001050FUN_10001050undefined FUN_10001050(IRpcStubBuffer * param_1)211NdrCStdStubBuffer_Release
510001070FUN_10001070undefined4 FUN_10001070(HMODULE param_1, int param_2)331
6100010a0DllRegisterServerundefined DllRegisterServer(void)591NdrDllRegisterProxy
7100010e0DllUnregisterServerundefined DllUnregisterServer(void)591NdrDllUnregisterProxy
81000111cNdrCStdStubBuffer_ReleaseULONG NdrCStdStubBuffer_Release(IRpcStubBuffer * This, IPSFactoryBuffer * pPSF)60
91000118e__CRT_INIT@12undefined4 __CRT_INIT@12(undefined4 param_1, int param_2, int param_3)33223
1010001267FUN_10001267undefined FUN_10001267(void)201
11100012f2___DllMainCRTStartupint ___DllMainCRTStartup(int param_1, int param_2, HMODULE param_3)2264
12100013e8entryundefined entry(HMODULE param_1, int param_2, int param_3)352
131000140bFUN_1000140bundefined FUN_1000140b(void)91
141000141d___set_flsgetvalueLPVOID ___set_flsgetvalue(void)523
1510001451__mttermvoid __mtterm(void)613
161000148e__initptdvoid __initptd(_ptiddata _Ptd, pthreadlocinfo _Locale)1568
1710001530FUN_10001530undefined FUN_10001530(void)91
1810001539FUN_10001539undefined FUN_10001539(void)91
1910001542__getptd_noexit_ptiddata __getptd_noexit(void)1218
20100015bb__getptd_ptiddata __getptd(void)262
21100015d5__freefls@4undefined __freefls@4(void * param_1)2799
22100016efFUN_100016efundefined FUN_100016ef(void)91
23100016fbFUN_100016fbundefined FUN_100016fb(void)91
2410001704__freeptdvoid __freeptd(_ptiddata _Ptd)1104
2510001772__mtinitint __mtinit(void)37912
26100018ed_freevoid _free(void * _Memory)584
2710001927__malloc_crtvoid * __malloc_crt(size_t _Size)692
281000196c__calloc_crtvoid * __calloc_crt(size_t _Count, size_t _Size)762
29100019b8__realloc_crtvoid * __realloc_crt(void * _Ptr, size_t _NewSize)782
3010001a06___crtCorExitProcessvoid ___crtCorExitProcess(int param_1)432
3110001a31___crtExitProcessvoid ___crtExitProcess(int param_1)232
3210001a49FUN_10001a49undefined FUN_10001a49(void)91
3310001a52FUN_10001a52undefined FUN_10001a52(void)91
3410001a5b__init_pointersvoid __init_pointers(void)517
3510001a8e__initterm_eundefined __initterm_e(undefined4 * param_1, undefined4 * param_2)360
3610001ab2__cinitint __cinit(int param_1)1514
3710001b49doexitundefined doexit(int param_1, int param_2, int param_3)3058
3810001c74FUN_10001c74undefined FUN_10001c74(void)151
3910001c89__exitvoid __exit(int _Code)221
4010001c9f__cexitvoid __cexit(void)151
4110001cae__amsg_exitvoid __amsg_exit(int param_1)293
4210001ccc__ioinitint __ioinit(void)5816
4310001f11__iotermvoid __ioterm(void)832
4410001f64__setenvpint __setenvp(void)2196
4510002040parse_cmdlineundefined parse_cmdline(undefined4 * param_1, byte * param_2, int * param_3)4101
46100021da__setargvint __setargv(void)1874
4710002295___crtGetEnvironmentStringsALPVOID ___crtGetEnvironmentStringsA(void)1515
481000232c__RTC_Initializeundefined __RTC_Initialize(void)380
4910002378__heap_initint __heap_init(void)301
5010002396__heap_termvoid __heap_term(void)201
51100023b0__SEH_prolog4undefined __SEH_prolog4(undefined4 param_1, int param_2)690
52100023f5__SEH_epilog4undefined __SEH_epilog4(void)200
5310002410__except_handler4undefined4 __except_handler4(PEXCEPTION_RECORD param_1, PVOID param_2, undefined4 param_3)3996
541000259f__XcptFilterint __XcptFilter(ulong _ExceptionNum, _EXCEPTION_POINTERS * _ExceptionPtr)3301
55100026e9___CppXcptFilterint ___CppXcptFilter(ulong _ExceptionNum, _EXCEPTION_POINTERS * _ExceptionPtr)321
5610002709___security_init_cookievoid ___security_init_cookie(void)1555
57100027a4__mtinitlocksint __mtinitlocks(void)741
58100027ee__mtdeletelocksvoid __mtdeletelocks(void)872
5910002845FUN_10002845undefined FUN_10002845(int param_1)231
601000285c__mtinitlocknumint __mtinitlocknum(int _LockNum)18511
6110002915FUN_10002915undefined FUN_10002915(void)91
621000291e__lockvoid __lock(int _File)513
6310002951___addlocalerefundefined ___addlocaleref(LONG * param_1)1431
64100029e0___removelocalerefLONG * ___removelocaleref(LONG * param_1)1531
6510002a79___freetlocinfoundefined ___freetlocinfo(void * param_1)3314
6610002bc4__updatetlocinfoEx_nolockLONG * __updatetlocinfoEx_nolock(undefined4 * param_1, LONG * param_2)773
6710002c11___updatetlocinfopthreadlocinfo ___updatetlocinfo(void)1097
6810002c7eFUN_10002c7eundefined FUN_10002c7e(void)121
6910002c8aCPtoLCIDint CPtoLCID(int param_1)470
7010002cb9setSBCSvoid setSBCS(threadmbcinfostruct * param_1)1001_memset
7110002d1dsetSBUpLowvoid setSBUpLow(threadmbcinfostruct * param_1)4005_memset
7210002ead___updatetmbcinfopthreadmbcinfo ___updatetmbcinfo(void)1529
7310002f48FUN_10002f48undefined FUN_10002f48(void)91
7410002f51_LocaleUpdateundefined _LocaleUpdate(_LocaleUpdate * this, localeinfo_struct * param_1)1353
7510002fd8getSystemCPint getSystemCP(int param_1)1243
7610003054__setmbcp_nolockundefined __setmbcp_nolock(undefined4 param_1, int param_2)4898_memset
771000323d__setmbcpint __setmbcp(int _CodePage)39913
781000339eFUN_1000339eundefined FUN_1000339e(void)91
79100033d7___initmbctableundefined4 ___initmbctable(void)301
80100033f5__get_errno_from_oserrint __get_errno_from_oserr(ulong param_1)660
8110003437__errnoint * __errno(void)191
821000344a_mallocvoid * _malloc(size_t _Size)1486
83100034de__calloc_implLPVOID __calloc_impl(uint param_1, uint param_2, undefined4 * param_3)1303
8410003560_reallocvoid * _realloc(void * _Memory, size_t _NewSize)1737
8510003646FUN_10003646undefined FUN_10003646(void)171
8610003657__initp_misc_winsigundefined __initp_misc_winsig(undefined4 param_1)300
8710003675siglookupuint siglookup(uint param_1)550
88100036acFUN_100036acundefined FUN_100036ac(void)131
89100036b9_raiseint _raise(int _SigNum)39811
9010003820FUN_10003820undefined FUN_10003820(void)151
911000385cFUN_1000385cundefined FUN_1000385c(undefined4 param_1)150
921000386bFUN_1000386bundefined FUN_1000386b(undefined4 param_1)150
931000387aFUN_1000387aundefined FUN_1000387a(undefined4 param_1)150
9410003889__call_reportfaultvoid __call_reportfault(int nDbgHookCode, DWORD dwExceptionCode, DWORD dwExceptionFlags)2976_memset
95100039b2__invoke_watsonvoid __invoke_watson(wchar_t * param_1, wchar_t * param_2, wchar_t * param_3, uint param_4, uintptr_t param_5)373
96100039d7__invalid_parameterundefined __invalid_parameter(wchar_t * param_1, wchar_t * param_2, wchar_t * param_3, uint param_4, uintptr_t param_5)442
9710003a04FUN_10003a04undefined FUN_10003a04(void)161
9810003a14FUN_10003a14undefined FUN_10003a14(undefined4 param_1)150
9910003a23__callnewhint __callnewh(size_t _Size)401
10010003a4b__onexit_nolockPVOID __onexit_nolock(PVOID param_1)1824
10110003b32__onexit_onexit_t __onexit(_onexit_t _Func)545
10210003b68FUN_10003b68undefined FUN_10003b68(void)61
10310003b6e_atexitint _atexit(_func_4879 * param_1)231
10410003b85__initp_misc_cfltcvt_tabundefined __initp_misc_cfltcvt_tab(void)351
10510003bb0__ValidateImageBaseBOOL __ValidateImageBase(PBYTE pImageBase)530
10610003bf0__FindPESectionPIMAGE_SECTION_HEADER __FindPESection(PBYTE pImageBase, DWORD_PTR rva)680
10710003c40__IsNonwritableInCurrentImageBOOL __IsNonwritableInCurrentImage(PBYTE pTarget)1662
10810003cfc__GET_RTERRMSGwchar_t * __GET_RTERRMSG(int param_1)380
10910003d22__NMSG_WRITEvoid __NMSG_WRITE(int param_1)43113
11010003ed1__FF_MSGBANNERvoid __FF_MSGBANNER(void)572
11110003f0a_strcpy_serrno_t _strcpy_s(char * _Dst, rsize_t _SizeInBytes, char * _Src)952
11210003f70_strlensize_t _strlen(char * _Str)1390
11310003ffbx_ismbbtype_lint x_ismbbtype_l(localeinfo_struct * param_1, uint param_2, int param_3, int param_4)831
1141000404e__ismbbleadint __ismbblead(uint _C)241
11510004066__security_check_cookieundefined __security_check_cookie(int param_1)151
11610004080__local_unwind4undefined __local_unwind4(uint * param_1, int param_2, uint param_3)1442
11710004156FUN_10004156undefined FUN_10004156(int param_1)281
11810004172_EH4_CallFilterFuncundefined _EH4_CallFilterFunc(undefined * param_1)230
11910004189_EH4_TransferToHandlerundefined _EH4_TransferToHandler(undefined * UNRECOVERED_JUMPTABLE)251
120100041a2_EH4_GlobalUnwind2undefined _EH4_GlobalUnwind2(PVOID param_1, PEXCEPTION_RECORD param_2)251
121100041bb_EH4_LocalUnwindundefined _EH4_LocalUnwind(int param_1, uint param_2, undefined4 param_3, uint * param_4)231
122100041d2___free_lc_timeundefined ___free_lc_time(undefined4 * param_1)8871
12310004549___free_lconv_numundefined ___free_lconv_num(undefined4 * param_1)1051
124100045b2___free_lconv_monundefined ___free_lconv_mon(int param_1)2541
125100046b0_memsetvoid * _memset(void * _Dst, int _Val, size_t _Size)1221
1261000472a__freeavoid __freea(void * _Memory)321
1271000474a__crtLCMapStringA_statint __crtLCMapStringA_stat(localeinfo_struct * param_1, ulong param_2, ulong param_3, char * param_4, int param_5, char * param_6, int param_7, int param_8, int param_9)4877
12810004931___crtLCMapStringAint ___crtLCMapStringA(_locale_t _Plocinfo, LPCWSTR _LocaleName, DWORD _DwMapFlag, LPCSTR _LpSrcStr, int _CchSrc, LPSTR _LpDestStr, int _CchDest, int _Code_page, BOOL _BError)702
12910004977__crtGetStringTypeA_statint __crtGetStringTypeA_stat(localeinfo_struct * param_1, ulong param_2, char * param_3, int param_4, ushort * param_5, int param_6, int param_7, int param_8)2317_memset
13010004a5e___crtGetStringTypeABOOL ___crtGetStringTypeA(_locale_t _Plocinfo, DWORD _DWInfoType, LPCSTR _LpSrcStr, int _CchSrc, LPWORD _LpCharType, int _Code_page, BOOL _BError)642
13110004a9e__msizesize_t __msize(void * _Memory)513
13210004ad1_abortvoid _abort(void)504
13310004b10FID_conflict:_memcpyvoid * FID_conflict:_memcpy(void * _Dst, void * _Src, size_t _Size)7081
13410004e71FUN_10004e71undefined FUN_10004e71(void)80
13510004e82___crtMessageBoxWint ___crtMessageBoxW(LPCWSTR _LpText, LPCWSTR _LpCaption, UINT _UType)3646
13610004fee_wcscat_serrno_t _wcscat_s(wchar_t * _Dst, rsize_t _SizeInWords, wchar_t * _Src)1172
13710005063_wcsncpy_serrno_t _wcsncpy_s(wchar_t * _Dst, rsize_t _SizeInWords, wchar_t * _Src, rsize_t _MaxCount)2052
13810005130_wcslensize_t _wcslen(wchar_t * _Str)270
1391000514b_wcscpy_serrno_t _wcscpy_s(wchar_t * _Dst, rsize_t _SizeInWords, wchar_t * _Src)992
140100051ae__set_error_modeint __set_error_mode(int _Mode)632
141100051ed___report_gsfailurevoid ___report_gsfailure(void)2626
14210005300__global_unwind2undefined __global_unwind2(PVOID param_1)321
14310005365__local_unwind2undefined __local_unwind2(int param_1, uint param_2)1322
14410005415__NLG_Notifyvoid __NLG_Notify(ulong param_1)310
14510005434FUN_10005434undefined FUN_10005434(void)30
14610005437__VEC_memzeroundefined1[16] * __VEC_memzero(undefined1[16] * param_1, uint param_2)1830
14710005510__alloca_probe_16uint __alloca_probe_16(void)221
14810005526__alloca_probe_8uint __alloca_probe_8(void)221
1491000553cFUN_1000553cundefined4 * FUN_1000553c(uint param_1)2530
15010005640__alloca_probeundefined __alloca_probe(void)430
1511000566cRtlUnwindvoid RtlUnwind(PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue)60
15210006000FUN_10006000undefined4 FUN_10006000(byte * param_1, int * param_2)3420