---
id: 6443
title: "Confusing .NET Decompilers: The CallVirt OpCode"
source_domain: blog.washi.dev
source_url: "https://blog.washi.dev/posts/confusing-decompilers-with-callvirt/"
published_at: "2022-11-21T00:00:00Z"
tags: ["reverse-engineering", "decompiler", "dotnet", "cil", "callvirt", "virtual-dispatch"]
phying_url: "https://phying.com/item/6443"
lang: en
---

# Confusing .NET Decompilers: The CallVirt OpCode

## Summary

Part two of a series abusing CIL invocation opcodes: explains callvirt's virtual dispatch internals and uses CLR implementation quirks to call supposedly inaccessible methods, confusing decompilers.

## Intelligence Metadata

- **Sources:** blog.washi.dev
- **Published:** 2022-11-21T00:00:00Z
- **Original:** https://blog.washi.dev/posts/confusing-decompilers-with-callvirt/
- **Phying News:** https://phying.com/item/6443
