A short investigation that showcases one of the most common problem faced when writing a profiler.
AccessViolationException. This part starts when, as I ran out of easy things to try, I decided to map the assembly code of the IsLockHeld method to the original C++ code to understand exactly where it crashed.