[return: MarshalAs(UnmanagedType.U1)]public virtual unsafe bool IsSerialValid(SerialNumber serialNumber){ string message = null; string str2 = null; string str3 = null; byte num4; bool flag; cSerialNumber number; int num2 = (int) stackalloc byte[(__CxxQueryExceptionSize() * 1)]; SerialToImpl(&number, serialNumber); byte num3 = 0; try { uint num; try { bool flag2 = MemoQ.ActivatorLib.cSerialNumber.IsValid((cSerialNumber modopt(IsConst)* modopt(IsConst) modopt(IsConst)) &number); num3 = 1; MemoQ.ActivatorLib.cSerialNumber.{dtor}(&number); flag = flag2; goto Label_01FE; } catch when (?) { num = 0; int num9 = __CxxRegisterExceptionObject((void*) Marshal.GetExceptionPointers(), (void*) num2); try { try { bad_activator modopt(IsConst)* modopt(IsImplicitlyDereferenced) _activatorPtr; str3 = new string(*_activatorPtr[0][4](_activatorPtr)); throw new ActivatorException(str3); } catch when (?) { } if (num != 0) { throw; } } finally { __CxxUnregisterExceptionObject((void*) num2, (int) num); } } catch when (?) { num = 0; int num8 = __CxxRegisterExceptionObject((void*) Marshal.GetExceptionPointers(), (void*) num2); try { try { str2 = "Out of memory"; throw new ActivatorException(str2); } catch when (?) { } if (num != 0) { throw; } } finally { __CxxUnregisterExceptionObject((void*) num2, (int) num); } } catch when (?) { num = 0; int num7 = __CxxRegisterExceptionObject((void*) Marshal.GetExceptionPointers(), (void*) num2); try { try { basic_string<char,std::char_traits<char>,std::allocator<char> > local; std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{ctor}(&local, &?A0xc16b0883.unnamed-global-4); try { exception modopt(IsConst)* modopt(IsImplicitlyDereferenced) exceptionPtr; std.basic_string<char,std::char_traits<char>,std::allocator<char> >.+=(&local, *exceptionPtr[0][4](exceptionPtr)); message = new string(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.c_str((basic_string<char,std::char_traits<char>,std::allocator<char> > modopt(IsConst)* modopt(IsConst) modopt(IsConst)) &local)); throw new ActivatorException(message); } fault { ___CxxCallUnwindDtor(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{dtor}, (void*) &local); } } catch when (?) { } if (num != 0) { throw; } } finally { __CxxUnregisterExceptionObject((void*) num2, (int) num); } } catch when (?) { num = 0; int num5 = __CxxRegisterExceptionObject((void*) Marshal.GetExceptionPointers(), (void*) num2); try { try { throw new ActivatorException("Unkown exception"); } catch when (?) { } if (num != 0) { throw; } } finally { __CxxUnregisterExceptionObject((void*) num2, (int) num); } } fault { if (num3 == 0) { ___CxxCallUnwindDtor(MemoQ.ActivatorLib.cSerialNumber.{dtor}, (void*) &number); } } } fault { if (num3 == 0) { ___CxxCallUnwindDtor(MemoQ.ActivatorLib.cSerialNumber.{dtor}, (void*) &number); } } MemoQ.ActivatorLib.cSerialNumber.{dtor}(&number);Label_01FE: num3 = 0; try { num4 = (byte) flag; } fault { if (num3 == 0) { ___CxxCallUnwindDtor(MemoQ.ActivatorLib.cSerialNumber.{dtor}, (void*) &number); } } return (bool) num4;}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课