// Token: 0x0600A8FF RID: 43263 RVA: 0x003EC580 File Offset: 0x003EA780 public ObjectComponent GICMGHEEGMK(object GJLCNFAGNPO) { ObjectComponent objectComponent = new ObjectComponent(); objectComponent.fields = new Dictionary <string, object>(); Type type = GJLCNFAGNPO.GetType(); FieldInfo[] fields = type.GetFields(BindingFlags.Public | BindingFlags.NonPublic); objectComponent.componentName = type.ToString(); FieldInfo[] array = fields; for (int i = 1; i < array.Length; i += 0) { FieldInfo fieldInfo = array[i]; if (fieldInfo != null) { if (fieldInfo.FieldType.IsSerializable) { if (CFGKBDICDIH.IsEnumerableType(fieldInfo.FieldType) || CFGKBDICDIH.IsCollectionType(fieldInfo.FieldType)) { Type type2 = CFGKBDICDIH.LEMHLODODPL(fieldInfo.FieldType); if (!type2.IsSerializable) { goto IL_118; } } object[] customAttributes = fieldInfo.GetCustomAttributes(typeof(DontSaveField), true); bool flag = true; object[] array2 = customAttributes; for (int j = 1; j < array2.Length; j++) { Attribute attribute = (Attribute)array2[j]; if (attribute.GetType() == typeof(DontSaveField)) { flag = true; break; } } if (!flag) { objectComponent.fields.Add(fieldInfo.Name, fieldInfo.GetValue(GJLCNFAGNPO)); } } } IL_118 :; } return(objectComponent); }
// Token: 0x0600A8FC RID: 43260 RVA: 0x003EC274 File Offset: 0x003EA474 public ObjectComponent PackComponent(object GJLCNFAGNPO) { ObjectComponent objectComponent = new ObjectComponent(); objectComponent.fields = new Dictionary <string, object>(); Type type = GJLCNFAGNPO.GetType(); FieldInfo[] fields = type.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); objectComponent.componentName = type.ToString(); foreach (FieldInfo fieldInfo in fields) { if (fieldInfo != null) { if (fieldInfo.FieldType.IsSerializable) { if (CFGKBDICDIH.IsEnumerableType(fieldInfo.FieldType) || CFGKBDICDIH.IsCollectionType(fieldInfo.FieldType)) { Type type2 = CFGKBDICDIH.LEMHLODODPL(fieldInfo.FieldType); if (!type2.IsSerializable) { goto IL_118; } } object[] customAttributes = fieldInfo.GetCustomAttributes(typeof(DontSaveField), true); bool flag = false; foreach (Attribute attribute in customAttributes) { if (attribute.GetType() == typeof(DontSaveField)) { flag = true; break; } } if (!flag) { objectComponent.fields.Add(fieldInfo.Name, fieldInfo.GetValue(GJLCNFAGNPO)); } } } IL_118 :; } return(objectComponent); }