如何卸载 RtlInstallFunctionTableCallback?

How to uninstall RtlInstallFunctionTableCallback?

RtlInstallFunctionTableCallback 函数的反转是什么?

我一直在研究它以避免瞬时 JIT 数学表达式相当慢 RtlAddFunctionTable/RtlDeleteFunctionTable,但我找不到卸载回调的方法...

我怀疑(否则未使用且明显多余的)TableIdentifier 参数可能与此有关,但似乎没有记录。

此外,尚不完全清楚回调 si 返回的 table 是否实际上是动态添加的(馈送到 RtlAddFunctionTable,因此稍后应使用 RtlDeleteFunctionTable 清理)或者它是否只是暂时使用。

正如 Hans Passant 在评论中所说,答案在 RtlDeleteFunctionTable 文档中

NTSYSAPI BOOLEAN RtlDeleteFunctionTable( PRUNTIME_FUNCTION FunctionTable );

FunctionTable

A pointer to an array of function entries that were previously passed to RtlAddFunctionTable or an identifier previously passed to RtlInstallFunctionTableCallback. For a definition of the PRUNTIME_FUNCTION type, see WinNT.h.