mirror of
https://github.com/bitdefender/bddisasm.git
synced 2024-11-26 01:18:06 +00:00
149 lines
15 KiB
Plaintext
149 lines
15 KiB
Plaintext
#
|
|
# Copyright (c) 2020 Bitdefender
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
# 0x00 - 0x0F
|
|
PSHUFB ; Pq,Qq ; ; NP 0x0F 0x38 0x00 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PSHUFB ; Vx,Wx ; ; 0x66 0x0F 0x38 0x00 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHADDW ; Pq,Qq ; ; NP 0x0F 0x38 0x01 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHADDW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x01 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHADDD ; Pq,Qq ; ; NP 0x0F 0x38 0x02 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHADDD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x02 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHADDSW ; Pq,Qq ; ; NP 0x0F 0x38 0x03 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHADDSW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x03 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PMADDUBSW ; Pq,Qq ; ; NP 0x0F 0x38 0x04 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PMADDUBSW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x04 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHSUBW ; Pq,Qq ; ; NP 0x0F 0x38 0x05 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHSUBW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x05 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHSUBD ; Pq,Qq ; ; NP 0x0F 0x38 0x06 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHSUBD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x06 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHSUBSW ; Pq,Qq ; ; NP 0x0F 0x38 0x07 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PHSUBSW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x07 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PSIGNB ; Pq,Qq ; ; NP 0x0F 0x38 0x08 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PSIGNB ; Vx,Wx ; ; 0x66 0x0F 0x38 0x08 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PSIGNW ; Pq,Qq ; ; NP 0x0F 0x38 0x09 /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PSIGNW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x09 /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PSIGND ; Pq,Qq ; ; NP 0x0F 0x38 0x0A /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PSIGND ; Vx,Wx ; ; 0x66 0x0F 0x38 0x0A /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PMULHRSW ; Pq,Qq ; ; NP 0x0F 0x38 0x0B /r ; s:SSSE3, t:MMX, w:RW|R , a:NOREX2
|
|
PMULHRSW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x0B /r ; s:SSSE3, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
|
|
# 0x10 - 0x1F
|
|
PBLENDVB ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x10 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4, a:NOREX2
|
|
BLENDVPS ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x14 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4, a:NOREX2
|
|
BLENDVPD ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x15 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4, a:NOREX2
|
|
PTEST ; Vdq,Wdq ; Fv ; 0x66 0x0F 0x38 0x17 /r ; s:SSE4, t:SSE, w:R|R|W, f:CF=m|PF=0|AF=0|ZF=m|SF=0|OF=0, e:4, a:NOREX2
|
|
PABSB ; Pq,Qq ; ; NP 0x0F 0x38 0x1C /r ; s:SSSE3, t:MMX, w:W|R , a:NOREX2
|
|
PABSB ; Vx,Wx ; ; 0x66 0x0F 0x38 0x1C /r ; s:SSSE3, t:SSE, w:W|R, e:4, a:NOREX2
|
|
PABSW ; Pq,Qq ; ; NP 0x0F 0x38 0x1D /r ; s:SSSE3, t:MMX, w:W|R , a:NOREX2
|
|
PABSW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x1D /r ; s:SSSE3, t:SSE, w:W|R, e:4, a:NOREX2
|
|
PABSD ; Pq,Qq ; ; NP 0x0F 0x38 0x1E /r ; s:SSSE3, t:MMX, w:W|R , a:NOREX2
|
|
PABSD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x1E /r ; s:SSSE3, t:SSE, w:W|R, e:4, a:NOREX2
|
|
|
|
# 0x20 - 0x2F
|
|
PMOVSXBW ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x20 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVSXBD ; Vdq,Wd ; ; 0x66 0x0F 0x38 0x21 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVSXBQ ; Vdq,Ww ; ; 0x66 0x0F 0x38 0x22 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVSXWD ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x23 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVSXWQ ; Vdq,Wd ; ; 0x66 0x0F 0x38 0x24 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVSXDQ ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x25 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMULDQ ; Vx,Wx ; ; 0x66 0x0F 0x38 0x28 /r ; s:SSE4, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PCMPEQQ ; Vx,Wx ; ; 0x66 0x0F 0x38 0x29 /r ; s:SSE4, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
MOVNTDQA ; Vx,Mx ; ; 0x66 0x0F 0x38 0x2A /r:mem ; s:SSE4, t:SSE, w:W|R, e:1 , a:NOREX2
|
|
PACKUSDW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x2B /r ; s:SSE4, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
|
|
|
|
# 0x30 - 0x3F
|
|
PMOVZXBW ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x30 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVZXBD ; Vdq,Wd ; ; 0x66 0x0F 0x38 0x31 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVZXBQ ; Vdq,Ww ; ; 0x66 0x0F 0x38 0x32 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVZXWD ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x33 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVZXWQ ; Vdq,Wd ; ; 0x66 0x0F 0x38 0x34 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PMOVZXDQ ; Vdq,Wq ; ; 0x66 0x0F 0x38 0x35 /r ; s:SSE4, t:SSE, w:W|R, e:5 , a:NOREX2
|
|
PCMPGTQ ; Vx,Wx ; ; 0x66 0x0F 0x38 0x37 /r ; s:SSE42, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PMINSB ; Vx,Wx ; ; 0x66 0x0F 0x38 0x38 /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMINSD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x39 /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMINUW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3A /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMINUD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3B /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMAXSB ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3C /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMAXSD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3D /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMAXUW ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3E /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
PMAXUD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x3F /r ; s:SSE4, t:SSE, w:RW|R, e:4 , a:NOREX2
|
|
|
|
# 0x40 - 0x4F
|
|
PMULLD ; Vx,Wx ; ; 0x66 0x0F 0x38 0x40 /r ; s:SSE4, t:SSE, w:RW|R, e:4, a:NOREX2
|
|
PHMINPOSUW ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0x41 /r ; s:SSE4, t:SSE, w:W|R, e:4, a:NOREX2
|
|
|
|
# 0x50 - 0x5F
|
|
|
|
# 0x60 - 0x6F
|
|
|
|
# 0x70 - 0x7F
|
|
|
|
# 0x80 - 0x8F
|
|
INVEPT ; Gy,Mdq ; Fv ; 0x66 0x0F 0x38 0x80 /r:mem ; s:VTX, t:VTX, w:R|R|W, f:VMX, a:F64|SERIAL|NOREX2, m:VMXROOT
|
|
INVVPID ; Gy,Mdq ; Fv ; 0x66 0x0F 0x38 0x81 /r:mem ; s:VTX, t:VTX, w:R|R|W, f:VMX, a:F64|SERIAL|NOREX2, m:VMXROOT
|
|
INVPCID ; Gy,Mdq ; ; 0x66 0x0F 0x38 0x82 /r:mem ; s:INVPCID, t:MISC, w:R|R, a:F64|NOREX2, m:KERNEL|NOV86
|
|
|
|
# 0x90 - 0x9F
|
|
|
|
# 0xA0 - 0xAF
|
|
|
|
# 0xB0 - 0xBF
|
|
|
|
# 0xC0 - 0xCF
|
|
SHA1NEXTE ; Vdq,Wdq ; ; NP 0x0F 0x38 0xC8 /r ; s:SHA, t:SHA, w:RW|R, e:4, a:NOREX2
|
|
SHA1MSG1 ; Vdq,Wdq ; ; NP 0x0F 0x38 0xC9 /r ; s:SHA, t:SHA, w:RW|R, e:4, a:NOREX2
|
|
SHA1MSG2 ; Vdq,Wdq ; ; NP 0x0F 0x38 0xCA /r ; s:SHA, t:SHA, w:RW|R, e:4, a:NOREX2
|
|
SHA256RNDS2 ; Vdq,Wdq ; XMM0 ; NP 0x0F 0x38 0xCB /r ; s:SHA, t:SHA, w:RW|R|R, e:4, a:NOREX2
|
|
SHA256MSG1 ; Vdq,Wdq ; ; NP 0x0F 0x38 0xCC /r ; s:SHA, t:SHA, w:RW|R, e:4, a:NOREX2
|
|
SHA256MSG2 ; Vdq,Wdq ; ; NP 0x0F 0x38 0xCD /r ; s:SHA, t:SHA, w:RW|R, e:4, a:NOREX2
|
|
GF2P8MULB ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xCF /r ; s:GFNI, t:GFNI, w:RW|R, e:4, a:NOREX2
|
|
|
|
# 0xD0 - 0xDF
|
|
AESENCWIDE128KL ; M384 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /0:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL, a:NOREX2
|
|
AESDECWIDE128KL ; M384 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /1:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL, a:NOREX2
|
|
AESENCWIDE256KL ; M512 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /2:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL, a:NOREX2
|
|
AESDECWIDE256KL ; M512 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /3:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL, a:NOREX2
|
|
AESIMC ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xDB /r ; s:AES, t:AES, w:W|R, e:4, a:NOREX2
|
|
AESENC ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xDC /r ; s:AES, t:AES, w:RW|R, e:4, a:NOREX2
|
|
AESENC128KL ; Vdq,M384 ; Fv ; 0xF3 0x0F 0x38 0xDC /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL, a:NOREX2
|
|
LOADIWKEY ; Vdq,Udq ; EAX,XMM0,Fv ; 0xF3 0x0F 0x38 0xDC /r:reg ; s:KL, t:KL, w:R|R|R|R|W, f:AESKL, m:KERNEL, a:NOREX2
|
|
AESENCLAST ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xDD /r ; s:AES, t:AES, w:RW|R, e:4, a:NOREX2
|
|
AESDEC128KL ; Vdq,M384 ; Fv ; 0xF3 0x0F 0x38 0xDD /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL, a:NOREX2
|
|
AESDEC ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xDE /r ; s:AES, t:AES, w:RW|R, e:4, a:NOREX2
|
|
AESENC256KL ; Vdq,M512 ; Fv ; 0xF3 0x0F 0x38 0xDE /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL, a:NOREX2
|
|
AESDECLAST ; Vdq,Wdq ; ; 0x66 0x0F 0x38 0xDF /r ; s:AES, t:AES, w:RW|R, e:4, a:NOREX2
|
|
AESDEC256KL ; Vdq,M512 ; Fv ; 0xF3 0x0F 0x38 0xDF /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL, a:NOREX2
|
|
|
|
# 0xE0 - 0xEF
|
|
|
|
# 0xF0 - 0xFF
|
|
MOVBE ; Gv,Mv ; ; NP 0x0F 0x38 0xF0 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:NOREX2
|
|
MOVBE ; Gv,Mv ; ; 0x66 0x0F 0x38 0xF0 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:S66|NOREX2
|
|
CRC32 ; Gy,Eb ; ; 0xF2 0x0F 0x38 0xF0 /r ; s:SSE42, t:SSE, w:RW|R, a:NOREX2
|
|
MOVBE ; Mv,Gv ; ; NP 0x0F 0x38 0xF1 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:NOREX2
|
|
MOVBE ; Mv,Gv ; ; 0x66 0x0F 0x38 0xF1 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:S66|NOREX2
|
|
CRC32 ; Gy,Ev ; ; 0xF2 0x0F 0x38 0xF1 /r ; s:SSE42, t:SSE, w:RW|R, a:NOREX2
|
|
WRUSSD ; My,Gy ; ; 0x66 0x0F 0x38 0xF5 /r:mem ; s:CET_SS, t:CET, c:WRUSS, a:SHS|NOREX2, w:W|R, m:KERNEL
|
|
WRUSSQ ; My,Gy ; ; rexw 0x66 0x0F 0x38 0xF5 /r:mem ; s:CET_SS, t:CET, c:WRUSS, a:SHS|NOREX2, w:W|R, m:KERNEL
|
|
WRSSD ; My,Gy ; ; NP 0x0F 0x38 0xF6 /r:mem ; s:CET_SS, t:CET, c:WRSS, a:SHS|NOREX2, w:W|R
|
|
WRSSQ ; My,Gy ; ; rexw NP 0x0F 0x38 0xF6 /r:mem ; s:CET_SS, t:CET, c:WRSS, a:SHS|NOREX2, w:W|R
|
|
ADCX ; Gy,Ey ; Fv ; 0x66 0x0F 0x38 0xF6 /r ; s:ADX, t:ARITH, w:RW|R|RW, f:CF=m, a:NOREX2
|
|
ADOX ; Gy,Ey ; Fv ; 0xF3 0x0F 0x38 0xF6 /r ; s:ADX, t:ARITH, w:RW|R|RW, f:OF=m, a:NOREX2
|
|
MOVDIR64B ; rMoq,Moq ; ; 0x66 0x0F 0x38 0xF8 /r:mem ; s:MOVDIR64B, t:MOVDIR64B, w:W|R, a:NOREX2
|
|
ENQCMD ; rM?,Moq ; Fv ; 0xF2 0x0F 0x38 0xF8 /r:mem ; s:ENQCMD, t:ENQCMD, w:W|R|W, f:ENQCMD, a:NOREX2
|
|
ENQCMDS ; rM?,Moq ; Fv ; 0xF3 0x0F 0x38 0xF8 /r:mem ; s:ENQCMD, t:ENQCMD, w:W|R|W, f:ENQCMD, a:NOREX2
|
|
URDMSR ; Rq,Gq ; MSR ; 0xF2 0x0F 0x38 0xF8 /r:reg ; s:USER_MSR, t:USER_MSR, w:W|R|R, m:O64
|
|
UWRMSR ; Gq,Rq ; MSR ; 0xF3 0x0F 0x38 0xF8 /r:reg ; s:USER_MSR, t:USER_MSR, w:R|R|W, m:O64
|
|
MOVDIRI ; My,Gy ; ; NP 0x0F 0x38 0xF9 /r:mem ; s:MOVDIRI, t:MOVDIRI, w:W|R, a:NOREX2
|
|
|
|
ENCODEKEY128 ; Gd,Rd ; XMM0,XMM0-2,XMM4-6,Fv ; 0xF3 0x0F 0x38 0xFA /r:reg ; s:KL, t:AESKL, w:W|R|R|W|W|W, f:ZERO, a:NOREX2
|
|
ENCODEKEY256 ; Gd,Rd ; XMM0-1,XMM2-6,Fv ; 0xF3 0x0F 0x38 0xFB /r:reg ; s:KL, t:AESKL, w:W|R|RW|W|W, f:ZERO, a:NOREX2
|
|
|
|
AADD ; My,Gy ; ; NP 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R, a:NOREX2
|
|
AAND ; My,Gy ; ; 0x66 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R, a:NOREX2
|
|
AOR ; My,Gy ; ; 0xF2 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R, a:NOREX2
|
|
AXOR ; My,Gy ; ; 0xF3 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R, a:NOREX2
|