The Wayback Machine - https://web.archive.org/web/20220217030728/https://github.com/topics/disassembler
Skip to content
#

disassembler

Here are 458 public repositories matching this topic...

trufae
trufae commented Jan 21, 2022
[0x100001060]> pia 4
str z21, [x2, 0x4a, mul vl]
???
???
???
[0x100001060]> pia 8
str z21, [x2, 0x4a, mul vl]
???
???
???
invalid
???
???
???
[0x100001060]> p8 8
554889e541574156
[0x100001060]> e asm.arch;e asm.bits
arm
64
[0x100001060]>
wtfsck
wtfsck commented Feb 16, 2022

It's currently always using mov rAX,[moffs] but if it fits in an i32, it's shorter to use mov rAX,[m] with a modrm byte.

The generated mov() methods would need to be updated. This is what the generated C# code looks like:

			if (dst.Value == Register.RAX && Bitness == 64 && src.IsDisplacementOnly) {
				code = Code.Mov_RAX_moffs64;

An extra check would need to be adde

jstaursky
jstaursky commented Nov 10, 2020

pdgsd does not seem to process PUSH EBP very well, the p-code semantics show up as

    (unique,0x12f0,4) = COPY EBP
    ESP = INT_SUB ESP, 0x4
    (unique,0x12f0,4) = STORE ram[ESP]

which doesn't make sense. Last line should be STORE ram[ESP] = (unique,0x12f0,4)

the raw p-code will show you:

STORE (const,0x55fef11636d0,8) (register,ESP,4) (unique,0x1b50,4)

and the

Improve this page

Add a description, image, and links to the disassembler topic page so that developers can more easily learn about it.

Curate this topic

Add this topic to your repo

To associate your repository with the disassembler topic, visit your repo's landing page and select "manage topics."

Learn more