Skip to content

GoPCode 0.1.1

Choose a tag to compare

@dzonerzy dzonerzy released this 15 Jul 16:10
· 13 commits to main since this release

GoPCode 0.1.1 includes:

  • Support for pretty printing lifted P-Code

A new API was created for the PcodeTranslation named Format and can be used like this:

trans, err := ctx.Translate(b, 0x401000, 1024, 0)
if err != nil {
	log.Fatalf("failed to translate: %v", err)
}
defer trans.Destroy()

for _, op := range trans.Ops {
	fmt.Println(trans.Format(op))
}

You can then expect something similar

IMARK ram[401000:4]
unique[4400:8] = RCX + 0x10
unique[db80:8] = *[const]unique[4400:8]
RAX = unique[db80:8]
IMARK ram[401004:1]
RIP = *[const]RSP
RSP = RSP + 0x8
return RIP

Full Changelog: 0.1.0...0.1.1