// Token: 0x06000045 RID: 69 RVA: 0x00006974 File Offset: 0x00004B74 public unsafe void Hook() { if (!DumbHook.smethod_4(this.OriginalMethod, null) && !DumbHook.smethod_4(this.HookMethod, null)) { IntPtr functionPointer = DumbHook.smethod_6(this.OriginalMethod).GetFunctionPointer(); IntPtr functionPointer2 = this.HookMethod.MethodHandle.GetFunctionPointer(); IntPtr functionPointer3 = this.OriginalNew.MethodHandle.GetFunctionPointer(); uint newProtect; DumbHook.Import.VirtualProtect(functionPointer3, (uint)(this.original.Length + 12), 64u, out newProtect); byte *ptr = (byte *)((void *)functionPointer3); for (int i = 0; i < this.original.Length; i++) { ptr[i] = this.original[i]; } ptr[this.original.Length] = 72; (ptr + this.original.Length)[1] = 184; *(IntPtr *)(ptr + this.original.Length + 2) = (IntPtr)(functionPointer.ToInt64() + (long)this.original.Length); (ptr + this.original.Length)[10] = byte.MaxValue; (ptr + this.original.Length)[11] = 224; DumbHook.Import.VirtualProtect(functionPointer3, (uint)(this.original.Length + 12), newProtect, out newProtect); DumbHook.Import.VirtualProtect(functionPointer, 12u, 64u, out newProtect); byte *ptr2 = (byte *)((void *)functionPointer); * ptr2 = 72; ptr2[1] = 184; *(IntPtr *)(ptr2 + 2) = functionPointer2; ptr2[10] = byte.MaxValue; ptr2[11] = 224; DumbHook.Import.VirtualProtect(functionPointer, 12u, newProtect, out newProtect); return; } throw DumbHook.smethod_5("Hook has to be properly Init'd before use"); }
private void Start() { byte[] ff = { 0x55, 0x48, 0x8b, 0xec, 0x56, 0x48, 0x83, 0xec, 0x08, 0x48, 0x8b, 0xf1 }; f = new DumbHook(typeof(PlayerWalkMovement), "Movement_Walking", typeof(ff), "Movement_Walking", typeof(ff), "Movement_WalkingTrampoline", ff); f.Hook(); byte[] yeahhh1111111 = { 0x55, 0x48, 0x8b, 0xec, 0x56, 0x57, 0x41, 0x56, 0x48, 0x83, 0xec, 0x08 }; boredasf1111111 = new DumbHook(typeof(GameTrace), "TraceAll", typeof(ff), "TraceAll", typeof(ff), "TraceAllTrampoline", yeahhh1111111); boredasf1111111.Hook(); byte[] yeahhh11111111 = { 0x55, 0x48, 0x8b, 0xec, 0x56, 0x57, 0x41, 0x56, 0x48, 0x83, 0xec, 0x08 }; boredasf11111111 = new DumbHook(typeof(ItemIcon), "OnPointerEnter", typeof(ff), "OnPointerEnter", typeof(ff), "OnPointerEnterTrampoline", yeahhh11111111); boredasf11111111.Hook(); }
// Token: 0x06000046 RID: 70 RVA: 0x00006B00 File Offset: 0x00004D00 public unsafe void Unhook() { IntPtr functionPointer = DumbHook.smethod_6(this.OriginalMethod).GetFunctionPointer(); this.HookMethod.MethodHandle.GetFunctionPointer(); this.OriginalNew.MethodHandle.GetFunctionPointer(); uint newProtect; DumbHook.Import.VirtualProtect(functionPointer, 12u, 64u, out newProtect); byte *ptr = (byte *)((void *)functionPointer); for (int i = 0; i < this.original.Length; i++) { ptr[i] = this.original[i]; } DumbHook.Import.VirtualProtect(functionPointer, 12u, newProtect, out newProtect); }
// Token: 0x06000044 RID: 68 RVA: 0x00006908 File Offset: 0x00004B08 public void Init(MethodInfo orig, MethodInfo hook, MethodInfo orignew) { if (DumbHook.smethod_4(orig, null)) { throw DumbHook.smethod_5("Original method is null"); } if (DumbHook.smethod_4(hook, null)) { throw DumbHook.smethod_5("Hook method is null"); } DumbHook.smethod_7(DumbHook.smethod_6(orig)); DumbHook.smethod_7(DumbHook.smethod_6(hook)); DumbHook.smethod_7(DumbHook.smethod_6(orignew)); this.OriginalMethod = orig; this.HookMethod = hook; this.OriginalNew = orignew; }
private void Start() { byte[] nop1er = { 0x55, 0x48, 0x8b, 0xec, 0x56, 0x57, 0x41, 0x56, 0x48, 0x83, 0xec, 0x08 }; boredaaaasf1 = new DumbHook(typeof(CameraMan), "DoControls", typeof(gavno), "DoControls", typeof(gavno), "DoControlsTrampoline", nop1er); boredaaaasf1.Hook(); }
private void Start() { byte[] nop1er = { 0x55, 0x48, 0x8b, 0xec, 0x56, 0x57, 0x41, 0x56, 0x48, 0x83, 0xec, 0x08 }; boredaaaasf1 = new DumbHook(typeof(PlayerEyes), "UpdateCamera", typeof(ccc), "UpdateCamera", typeof(ccc), "UpdateCameraTrampoline", nop1er); boredaaaasf1.Hook(); }
// Token: 0x06000043 RID: 67 RVA: 0x00005BF4 File Offset: 0x00003DF4 public DumbHook(Type typeOrig, string nameOrig, Type typeHook, string nameHook, Type typeOrigNew, string nameOrigNew, byte[] orig) { this.original = new byte[orig.Length]; this.original = orig; if (DumbHook.smethod_0(nameOrig, "DoHit")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(HitTest).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(HitTest).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(HitTest).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "GetMinSpeed")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "OnRequestUserInformation")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "OnLand")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "AddPunch")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "SendClientTick")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "GetAimCone")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "SetTimedAction")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "GetIndexedSpreadScalar")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "UpdateMovementPenalty")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "UpdateClothesIfNeeded")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "ClientInput")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "GetSpeed")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "CanAttack")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "HasLocalControls")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "UpdateAmbient")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "OnAttacked")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(HitInfo).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(HitInfo).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(HitInfo).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "CreateOrUpdateEntity")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Entity).TypeHandle), DumbHook.smethod_1(typeof(long).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Entity).TypeHandle), DumbHook.smethod_1(typeof(long).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Entity).TypeHandle), DumbHook.smethod_1(typeof(long).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "UpdatePositionFromNetwork")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public, null, new Type[] { DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "IsDead")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "CreateProjectile") && DumbHook.smethod_4(typeOrig, DumbHook.smethod_1(typeof(global::BaseProjectile).TypeHandle))) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "CreateProjectile") && DumbHook.smethod_4(typeOrig, DumbHook.smethod_1(typeof(BaseMelee).TypeHandle))) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle), DumbHook.smethod_1(typeof(Vector3).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "SendProjectileAttack")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "OnDeploy")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "UpdateAmbient")) { this.Init(DumbHook.smethod_3(typeOrig, nameOrig), DumbHook.smethod_3(typeHook, nameHook), DumbHook.smethod_3(typeOrigNew, nameOrigNew)); } if (DumbHook.smethod_0(nameOrig, "get_isAlive")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[0], null)); } if (DumbHook.smethod_0(nameOrig, "UpdateServer")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(ServerList.Server).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(ServerList.Server).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(ServerList.Server).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "CanJump")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null)); } if (DumbHook.smethod_0(nameOrig, "StartAttackCooldown")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(float).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "Update") && DumbHook.smethod_0(nameHook, "EnvSyncUpdate")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null)); } if (DumbHook.smethod_0(nameOrig, "ServerRPC")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(string).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle), DumbHook.smethod_1(typeof(object).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "OnTextureWasEdited")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Texture2D).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Texture2D).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Texture2D).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "DrawTexture")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Vector2).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(Texture2D).TypeHandle), DumbHook.smethod_1(typeof(UnityEngine.Color).TypeHandle) }, null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Vector2).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(Texture2D).TypeHandle), DumbHook.smethod_1(typeof(UnityEngine.Color).TypeHandle) }, null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[] { DumbHook.smethod_1(typeof(Vector2).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(float).TypeHandle), DumbHook.smethod_1(typeof(Texture2D).TypeHandle), DumbHook.smethod_1(typeof(UnityEngine.Color).TypeHandle) }, null)); } if (DumbHook.smethod_0(nameOrig, "CanTalk")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null)); } if (DumbHook.smethod_0(nameOrig, "ShouldReceiveVoice")) { this.Init(DumbHook.smethod_2(typeOrig, nameOrig, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeHook, nameHook, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null), DumbHook.smethod_2(typeOrigNew, nameOrigNew, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new Type[0], null)); } }