// Decompiled with JetBrains decompiler
// Type: A.K
// Assembly: RansomGuard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 37652FF6-4FF5-4E76-944D-E6CA5073036F
// Assembly location: RansomGuard.dll inside C:\Users\WDAGUtilityAccount\Desktop\RansomGuard.exe)

using RansomGuard;
using System;
using System.Runtime.InteropServices;

#nullable enable
namespace A;

[StructLayout((LayoutKind) 0, CharSet = (CharSet) 3)]
internal class K : IDisposable
{
  private uint bX = (uint) Marshal.SizeOf(typeof (K));
  private IntPtr bx = IntPtr.Zero;
  private IntPtr bY = IntPtr.Zero;
  private WinTrustDataUIChoice by = WinTrustDataUIChoice.None;
  private WinTrustDataRevocationChecks bZ = WinTrustDataRevocationChecks.WholeChain;
  private WinTrustDataChoice bz = WinTrustDataChoice.File;
  private IntPtr CA = IntPtr.Zero;
  private WinTrustDataStateAction Ca;
  private IntPtr CB = IntPtr.Zero;
  private string? Cb;
  private WinTrustDataProvFlags CC = WinTrustDataProvFlags.RevocationCheckChainExcludeRoot;
  private WinTrustDataUIContext Cc;

  internal K([In] j obj0)
  {
    if (Environment.OSVersion.Version.Major > 6 || Environment.OSVersion.Version.Major == 6 && Environment.OSVersion.Version.Minor > 1 || Environment.OSVersion.Version.Major == 6 && Environment.OSVersion.Version.Minor == 1 && !string.IsNullOrEmpty(Environment.OSVersion.ServicePack))
      this.CC |= WinTrustDataProvFlags.DisableMD2andMD4;
    this.CA = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof (j)));
    Marshal.StructureToPtr<j>(obj0, this.CA, false);
  }

  public void Dispose()
  {
    if (this.CA == IntPtr.Zero)
      return;
    Marshal.FreeCoTaskMem(this.CA);
    this.CA = IntPtr.Zero;
  }
}
