Py-pcodedmp

Jul 20, 2023

VBA p-code disassembler

pcodedmp.py is a VBA p-code disassembler.

It is not widely known, but macros written in VBA Visual Basic for Applications; the macro programming language used in Microsoft Office exist in three different executable forms, each of which can be what is actually executed at run time, depending on the circumstances.

Since most of the time it is the p-code that determines what exactly a macro would do even if neither source code, nor execodes are present, it would make sense to have a tool that can display it. This is what prompted us to create this VBA p-code disassembler.



Checkout these related ports:
  • Zziplib - Library to provide transparent read access to zipped files
  • Zydis - Fast and lightweight x86/x86-64 disassembler library
  • Zycore-c - Support library with platform independent types, macros, etc for Zydis
  • Zthread - Platform-independent object-oriented C++ threading library
  • Zookeeper - Coordination Service for Distributed Applications
  • Zls - Zig LSP implementation + Zig Language Server
  • Zfp - High throughput library for compressed floating-point arrays
  • Zeal - Offline documentation browser
  • Zapcc - C++ caching compiler based on clang
  • Zanata-platform - Web-based translation platform
  • Zanata-cli - Zanata Java command line client
  • Z88dk - Complete Z80/Z180 development kit
  • Z80ex - ZiLOG Z80 CPU emulator library
  • Z80asm - Assembler for the Z80 microprocessor
  • Z80-asm - Z80 assembly code assembler and disassembler