using System;
using System.Runtime.InteropServices;

namespace Zodiacon.DebugHelp
{
	// Token: 0x0200000C RID: 12
	public struct SymbolInfo
	{
		// Token: 0x06000046 RID: 70 RVA: 0x00002A24 File Offset: 0x00000C24
		public static SymbolInfo Create()
		{
			SymbolInfo result = default(SymbolInfo);
			result.Init();
			return result;
		}

		// Token: 0x06000047 RID: 71 RVA: 0x00002A41 File Offset: 0x00000C41
		public void Init()
		{
			this.MaxNameLen = 500;
			this.SizeOfStruct = 88;
		}

		// Token: 0x04000028 RID: 40
		private const int MaxSymbolLen = 500;

		// Token: 0x04000029 RID: 41
		public int SizeOfStruct;

		// Token: 0x0400002A RID: 42
		public int TypeIndex;

		// Token: 0x0400002B RID: 43
		private readonly ulong Reserved1;

		// Token: 0x0400002C RID: 44
		private readonly ulong Reserved2;

		// Token: 0x0400002D RID: 45
		public int Index;

		// Token: 0x0400002E RID: 46
		public int Size;

		// Token: 0x0400002F RID: 47
		public ulong ModuleBase;

		// Token: 0x04000030 RID: 48
		public SymbolFlags Flags;

		// Token: 0x04000031 RID: 49
		public long Value;

		// Token: 0x04000032 RID: 50
		public ulong Address;

		// Token: 0x04000033 RID: 51
		public uint Register;

		// Token: 0x04000034 RID: 52
		public uint Scope;

		// Token: 0x04000035 RID: 53
		public SymbolTag Tag;

		// Token: 0x04000036 RID: 54
		public uint NameLen;

		// Token: 0x04000037 RID: 55
		public int MaxNameLen;

		// Token: 0x04000038 RID: 56
		[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 500)]
		public string Name;
	}
}
