// Token: 0x06000977 RID: 2423 RVA: 0x003B60B8 File Offset: 0x003B42B8
private static bool Write(SafeHandle fileHandle, CrashDump.Options options, CrashDump.ExceptionInfo exceptionInfo)
{
if (!Platform.IsWindows)
{
return(false);
}
Process expr_0E = Process.GetCurrentProcess();
IntPtr handle = expr_0E.Handle;
uint id = (uint)expr_0E.Id;
CrashDump.MiniDumpExceptionInformation miniDumpExceptionInformation;
miniDumpExceptionInformation.ThreadId = CrashDump.GetCurrentThreadId();
miniDumpExceptionInformation.ClientPointers = false;
miniDumpExceptionInformation.ExceptionPointers = IntPtr.Zero;
if (exceptionInfo == CrashDump.ExceptionInfo.Present)
{
miniDumpExceptionInformation.ExceptionPointers = Marshal.GetExceptionPointers();
}
bool result;
if (miniDumpExceptionInformation.ExceptionPointers == IntPtr.Zero)
{
result = CrashDump.MiniDumpWriteDump(handle, id, fileHandle, (uint)options, IntPtr.Zero, IntPtr.Zero, IntPtr.Zero);
}
else
{
result = CrashDump.MiniDumpWriteDump(handle, id, fileHandle, (uint)options, ref miniDumpExceptionInformation, IntPtr.Zero, IntPtr.Zero);
}
return(result);
}