From 1a081c5ed87aa8d48bb839a8dd9c8c6a48530fe4 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 19:41:13 -0700 Subject: [PATCH 1/9] Initial changes to support use of const_generator.py --- bindings/const_generator.py | 16 + .../{Arm64Regs.java => Arm64Const.java} | 0 .../unicorn/{ArmRegs.java => ArmConst.java} | 0 .../unicorn/{M68kRegs.java => M68kConst.java} | 0 .../unicorn/{MipsRegs.java => MipsConst.java} | 0 .../{SparcRegs.java => SparcConst.java} | 0 bindings/java/unicorn/Unicorn.java | 3 +- bindings/java/unicorn/UnicornArchs.java | 34 - bindings/java/unicorn/UnicornConst.java | 71 + bindings/java/unicorn/UnicornModes.java | 20 - .../unicorn/{X86Regs.java => X86Const.java} | 0 bindings/java/unicorn/X86Instructions.java | 1364 ----------------- 12 files changed, 88 insertions(+), 1420 deletions(-) mode change 100644 => 100755 bindings/const_generator.py rename bindings/java/unicorn/{Arm64Regs.java => Arm64Const.java} (100%) rename bindings/java/unicorn/{ArmRegs.java => ArmConst.java} (100%) rename bindings/java/unicorn/{M68kRegs.java => M68kConst.java} (100%) rename bindings/java/unicorn/{MipsRegs.java => MipsConst.java} (100%) rename bindings/java/unicorn/{SparcRegs.java => SparcConst.java} (100%) mode change 100644 => 100755 bindings/java/unicorn/Unicorn.java delete mode 100644 bindings/java/unicorn/UnicornArchs.java create mode 100755 bindings/java/unicorn/UnicornConst.java delete mode 100644 bindings/java/unicorn/UnicornModes.java rename bindings/java/unicorn/{X86Regs.java => X86Const.java} (100%) delete mode 100644 bindings/java/unicorn/X86Instructions.java diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100644 new mode 100755 index 60331e63..f28681ec --- a/bindings/const_generator.py +++ b/bindings/const_generator.py @@ -36,6 +36,22 @@ template = { 'x86.h': 'x86', 'sparc.h': 'sparc', 'm68k.h': 'm68k', + 'unicorn.h': 'Unicorn', + 'comment_open': '//', + 'comment_close': '', + }, + 'java': { + 'header': "// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT\n\npackage unicorn;\n\npublic interface %sConst {\n", + 'footer': "\n}\n", + 'line_format': ' public static final int %s = %s;\n', + 'out_file': './java/unicorn/%sConst.java', + # prefixes for constant filenames of all archs - case sensitive + 'arm.h': 'Arm', + 'arm64.h': 'Arm64', + 'mips.h': 'Mips', + 'x86.h': 'X86', + 'sparc.h': 'Sparc', + 'm68k.h': 'M68k', 'unicorn.h': 'unicorn', 'comment_open': '//', 'comment_close': '', diff --git a/bindings/java/unicorn/Arm64Regs.java b/bindings/java/unicorn/Arm64Const.java similarity index 100% rename from bindings/java/unicorn/Arm64Regs.java rename to bindings/java/unicorn/Arm64Const.java diff --git a/bindings/java/unicorn/ArmRegs.java b/bindings/java/unicorn/ArmConst.java similarity index 100% rename from bindings/java/unicorn/ArmRegs.java rename to bindings/java/unicorn/ArmConst.java diff --git a/bindings/java/unicorn/M68kRegs.java b/bindings/java/unicorn/M68kConst.java similarity index 100% rename from bindings/java/unicorn/M68kRegs.java rename to bindings/java/unicorn/M68kConst.java diff --git a/bindings/java/unicorn/MipsRegs.java b/bindings/java/unicorn/MipsConst.java similarity index 100% rename from bindings/java/unicorn/MipsRegs.java rename to bindings/java/unicorn/MipsConst.java diff --git a/bindings/java/unicorn/SparcRegs.java b/bindings/java/unicorn/SparcConst.java similarity index 100% rename from bindings/java/unicorn/SparcRegs.java rename to bindings/java/unicorn/SparcConst.java diff --git a/bindings/java/unicorn/Unicorn.java b/bindings/java/unicorn/Unicorn.java old mode 100644 new mode 100755 index fa985541..7d94c345 --- a/bindings/java/unicorn/Unicorn.java +++ b/bindings/java/unicorn/Unicorn.java @@ -23,8 +23,7 @@ package unicorn; import java.util.*; -public class Unicorn implements UnicornArchs, UnicornModes, UnicornHooks, - ArmRegs, Arm64Regs, M68kRegs, SparcRegs, MipsRegs, X86Regs, X86Instructions { +public class Unicorn implements UnicornConst, ArmConst, Arm64Const, M68kConst, SparcConst, MipsConst, X86Const { // Scales to calculate timeout on microsecond unit // 1 second = 1000,000 microseconds diff --git a/bindings/java/unicorn/UnicornArchs.java b/bindings/java/unicorn/UnicornArchs.java deleted file mode 100644 index 98c57b0e..00000000 --- a/bindings/java/unicorn/UnicornArchs.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ - -package unicorn; - -public interface UnicornArchs { - public static final int UC_ARCH_ARM = 1; // ARM architecture (including Thumb, Thumb-2) - public static final int UC_ARCH_ARM64 = 2; // ARM-64, also called AArch64 - public static final int UC_ARCH_MIPS = 3; // Mips architecture - public static final int UC_ARCH_X86 = 4; // X86 architecture (including x86 & x86-64) - public static final int UC_ARCH_PPC = 5; // PowerPC architecture - public static final int UC_ARCH_SPARC = 6; // Sparc architecture - public static final int UC_ARCH_M68K = 7; // M68K architecture - public static final int UC_ARCH_MAX = 8; - public static final int UC_ARCH_ALL = 0xFFFF; // All architectures - for uc_support() -} diff --git a/bindings/java/unicorn/UnicornConst.java b/bindings/java/unicorn/UnicornConst.java new file mode 100755 index 00000000..3ede5201 --- /dev/null +++ b/bindings/java/unicorn/UnicornConst.java @@ -0,0 +1,71 @@ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT + +package unicorn; + +public interface UnicornConst { + + public static final int UC_API_MAJOR = 0; + public static final int UC_API_MINOR = 9; + public static final int UC_SECOND_SCALE = 1000000; + public static final int UC_MILISECOND_SCALE = 1000; + public static final int UC_ARCH_ARM = 1; + public static final int UC_ARCH_ARM64 = 2; + public static final int UC_ARCH_MIPS = 3; + public static final int UC_ARCH_X86 = 4; + public static final int UC_ARCH_PPC = 5; + public static final int UC_ARCH_SPARC = 6; + public static final int UC_ARCH_M68K = 7; + public static final int UC_ARCH_MAX = 8; + + public static final int UC_MODE_LITTLE_ENDIAN = 0; + + public static final int UC_MODE_ARM = 0; + public static final int UC_MODE_16 = 2; + public static final int UC_MODE_32 = 4; + public static final int UC_MODE_64 = 8; + public static final int UC_MODE_THUMB = 16; + public static final int UC_MODE_MCLASS = 32; + public static final int UC_MODE_V8 = 64; + public static final int UC_MODE_MICRO = 16; + public static final int UC_MODE_MIPS3 = 32; + public static final int UC_MODE_MIPS32R6 = 64; + public static final int UC_MODE_V9 = 16; + public static final int UC_MODE_QPX = 16; + public static final int UC_MODE_BIG_ENDIAN = 0x80000000; + public static final int UC_MODE_MIPS32 = 4; + public static final int UC_MODE_MIPS64 = 8; + + public static final int UC_ERR_OK = 0; + public static final int UC_ERR_OOM = 1; + public static final int UC_ERR_ARCH = 2; + public static final int UC_ERR_HANDLE = 3; + public static final int UC_ERR_UCH = 4; + public static final int UC_ERR_MODE = 5; + public static final int UC_ERR_VERSION = 6; + public static final int UC_ERR_MEM_READ = 7; + public static final int UC_ERR_MEM_WRITE = 8; + public static final int UC_ERR_CODE_INVALID = 9; + public static final int UC_ERR_HOOK = 10; + public static final int UC_ERR_INSN_INVALID = 11; + public static final int UC_ERR_MAP = 12; + public static final int UC_ERR_MEM_WRITE_NW = 13; + public static final int UC_ERR_MEM_READ_NR = 14; + public static final int UC_MEM_READ = 16; + public static final int UC_MEM_WRITE = 17; + public static final int UC_MEM_READ_WRITE = 18; + public static final int UC_MEM_WRITE_NW = 19; + public static final int UC_MEM_READ_NR = 20; + public static final int UC_MEM_NX = 21; + public static final int UC_HOOK_INTR = 32; + public static final int UC_HOOK_INSN = 33; + public static final int UC_HOOK_CODE = 34; + public static final int UC_HOOK_BLOCK = 35; + public static final int UC_HOOK_MEM_INVALID = 36; + public static final int UC_HOOK_MEM_READ = 37; + public static final int UC_HOOK_MEM_WRITE = 38; + public static final int UC_HOOK_MEM_READ_WRITE = 39; + public static final int UC_PROT_READ = 1; + public static final int UC_PROT_WRITE = 2; + public static final int UC_PROT_EXEC = 4; + +} diff --git a/bindings/java/unicorn/UnicornModes.java b/bindings/java/unicorn/UnicornModes.java deleted file mode 100644 index b81a2065..00000000 --- a/bindings/java/unicorn/UnicornModes.java +++ /dev/null @@ -1,20 +0,0 @@ -package unicorn; - -public interface UnicornModes { - public static final int UC_MODE_LITTLE_ENDIAN = 0; // little-endian mode (default mode) - public static final int UC_MODE_ARM = 0; // 32-bit ARM - public static final int UC_MODE_16 = 1 << 1; // 16-bit mode (X86) - public static final int UC_MODE_32 = 1 << 2; // 32-bit mode (X86) - public static final int UC_MODE_64 = 1 << 3; // 64-bit mode (X86; PPC) - public static final int UC_MODE_THUMB = 1 << 4; // ARM's Thumb mode; including Thumb-2 - public static final int UC_MODE_MCLASS = 1 << 5; // ARM's Cortex-M series - public static final int UC_MODE_V8 = 1 << 6; // ARMv8 A32 encodings for ARM - public static final int UC_MODE_MICRO = 1 << 4; // MicroMips mode (MIPS) - public static final int UC_MODE_MIPS3 = 1 << 5; // Mips III ISA - public static final int UC_MODE_MIPS32R6 = 1 << 6; // Mips32r6 ISA - public static final int UC_MODE_V9 = 1 << 4; // SparcV9 mode (Sparc) - public static final int UC_MODE_QPX = 1 << 4; // Quad Processing eXtensions mode (PPC) - public static final int UC_MODE_BIG_ENDIAN = 1 << 31; // big-endian mode - public static final int UC_MODE_MIPS32 = UC_MODE_32; // Mips32 ISA (Mips) - public static final int UC_MODE_MIPS64 = UC_MODE_64; // Mips64 ISA (Mips) -} diff --git a/bindings/java/unicorn/X86Regs.java b/bindings/java/unicorn/X86Const.java similarity index 100% rename from bindings/java/unicorn/X86Regs.java rename to bindings/java/unicorn/X86Const.java diff --git a/bindings/java/unicorn/X86Instructions.java b/bindings/java/unicorn/X86Instructions.java deleted file mode 100644 index 17108d7e..00000000 --- a/bindings/java/unicorn/X86Instructions.java +++ /dev/null @@ -1,1364 +0,0 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ - -package unicorn; - -public interface X86Instructions { - public static final int UC_X86_INS_INVALID = 0; - public static final int UC_X86_INS_AAA = 1; - public static final int UC_X86_INS_AAD = 2; - public static final int UC_X86_INS_AAM = 3; - public static final int UC_X86_INS_AAS = 4; - public static final int UC_X86_INS_FABS = 5; - public static final int UC_X86_INS_ADC = 6; - public static final int UC_X86_INS_ADCX = 7; - public static final int UC_X86_INS_ADD = 8; - public static final int UC_X86_INS_ADDPD = 9; - public static final int UC_X86_INS_ADDPS = 10; - public static final int UC_X86_INS_ADDSD = 11; - public static final int UC_X86_INS_ADDSS = 12; - public static final int UC_X86_INS_ADDSUBPD = 13; - public static final int UC_X86_INS_ADDSUBPS = 14; - public static final int UC_X86_INS_FADD = 15; - public static final int UC_X86_INS_FIADD = 16; - public static final int UC_X86_INS_FADDP = 17; - public static final int UC_X86_INS_ADOX = 18; - public static final int UC_X86_INS_AESDECLAST = 19; - public static final int UC_X86_INS_AESDEC = 20; - public static final int UC_X86_INS_AESENCLAST = 21; - public static final int UC_X86_INS_AESENC = 22; - public static final int UC_X86_INS_AESIMC = 23; - public static final int UC_X86_INS_AESKEYGENASSIST = 24; - public static final int UC_X86_INS_AND = 25; - public static final int UC_X86_INS_ANDN = 26; - public static final int UC_X86_INS_ANDNPD = 27; - public static final int UC_X86_INS_ANDNPS = 28; - public static final int UC_X86_INS_ANDPD = 29; - public static final int UC_X86_INS_ANDPS = 30; - public static final int UC_X86_INS_ARPL = 31; - public static final int UC_X86_INS_BEXTR = 32; - public static final int UC_X86_INS_BLCFILL = 33; - public static final int UC_X86_INS_BLCI = 34; - public static final int UC_X86_INS_BLCIC = 35; - public static final int UC_X86_INS_BLCMSK = 36; - public static final int UC_X86_INS_BLCS = 37; - public static final int UC_X86_INS_BLENDPD = 38; - public static final int UC_X86_INS_BLENDPS = 39; - public static final int UC_X86_INS_BLENDVPD = 40; - public static final int UC_X86_INS_BLENDVPS = 41; - public static final int UC_X86_INS_BLSFILL = 42; - public static final int UC_X86_INS_BLSI = 43; - public static final int UC_X86_INS_BLSIC = 44; - public static final int UC_X86_INS_BLSMSK = 45; - public static final int UC_X86_INS_BLSR = 46; - public static final int UC_X86_INS_BOUND = 47; - public static final int UC_X86_INS_BSF = 48; - public static final int UC_X86_INS_BSR = 49; - public static final int UC_X86_INS_BSWAP = 50; - public static final int UC_X86_INS_BT = 51; - public static final int UC_X86_INS_BTC = 52; - public static final int UC_X86_INS_BTR = 53; - public static final int UC_X86_INS_BTS = 54; - public static final int UC_X86_INS_BZHI = 55; - public static final int UC_X86_INS_CALL = 56; - public static final int UC_X86_INS_CBW = 57; - public static final int UC_X86_INS_CDQ = 58; - public static final int UC_X86_INS_CDQE = 59; - public static final int UC_X86_INS_FCHS = 60; - public static final int UC_X86_INS_CLAC = 61; - public static final int UC_X86_INS_CLC = 62; - public static final int UC_X86_INS_CLD = 63; - public static final int UC_X86_INS_CLFLUSH = 64; - public static final int UC_X86_INS_CLFLUSHOPT = 65; - public static final int UC_X86_INS_CLGI = 66; - public static final int UC_X86_INS_CLI = 67; - public static final int UC_X86_INS_CLTS = 68; - public static final int UC_X86_INS_CLWB = 69; - public static final int UC_X86_INS_CMC = 70; - public static final int UC_X86_INS_CMOVA = 71; - public static final int UC_X86_INS_CMOVAE = 72; - public static final int UC_X86_INS_CMOVB = 73; - public static final int UC_X86_INS_CMOVBE = 74; - public static final int UC_X86_INS_FCMOVBE = 75; - public static final int UC_X86_INS_FCMOVB = 76; - public static final int UC_X86_INS_CMOVE = 77; - public static final int UC_X86_INS_FCMOVE = 78; - public static final int UC_X86_INS_CMOVG = 79; - public static final int UC_X86_INS_CMOVGE = 80; - public static final int UC_X86_INS_CMOVL = 81; - public static final int UC_X86_INS_CMOVLE = 82; - public static final int UC_X86_INS_FCMOVNBE = 83; - public static final int UC_X86_INS_FCMOVNB = 84; - public static final int UC_X86_INS_CMOVNE = 85; - public static final int UC_X86_INS_FCMOVNE = 86; - public static final int UC_X86_INS_CMOVNO = 87; - public static final int UC_X86_INS_CMOVNP = 88; - public static final int UC_X86_INS_FCMOVNU = 89; - public static final int UC_X86_INS_CMOVNS = 90; - public static final int UC_X86_INS_CMOVO = 91; - public static final int UC_X86_INS_CMOVP = 92; - public static final int UC_X86_INS_FCMOVU = 93; - public static final int UC_X86_INS_CMOVS = 94; - public static final int UC_X86_INS_CMP = 95; - public static final int UC_X86_INS_CMPPD = 96; - public static final int UC_X86_INS_CMPPS = 97; - public static final int UC_X86_INS_CMPSB = 98; - public static final int UC_X86_INS_CMPSD = 99; - public static final int UC_X86_INS_CMPSQ = 100; - public static final int UC_X86_INS_CMPSS = 101; - public static final int UC_X86_INS_CMPSW = 102; - public static final int UC_X86_INS_CMPXCHG16B = 103; - public static final int UC_X86_INS_CMPXCHG = 104; - public static final int UC_X86_INS_CMPXCHG8B = 105; - public static final int UC_X86_INS_COMISD = 106; - public static final int UC_X86_INS_COMISS = 107; - public static final int UC_X86_INS_FCOMP = 108; - public static final int UC_X86_INS_FCOMPI = 109; - public static final int UC_X86_INS_FCOMI = 110; - public static final int UC_X86_INS_FCOM = 111; - public static final int UC_X86_INS_FCOS = 112; - public static final int UC_X86_INS_CPUID = 113; - public static final int UC_X86_INS_CQO = 114; - public static final int UC_X86_INS_CRC32 = 115; - public static final int UC_X86_INS_CVTDQ2PD = 116; - public static final int UC_X86_INS_CVTDQ2PS = 117; - public static final int UC_X86_INS_CVTPD2DQ = 118; - public static final int UC_X86_INS_CVTPD2PS = 119; - public static final int UC_X86_INS_CVTPS2DQ = 120; - public static final int UC_X86_INS_CVTPS2PD = 121; - public static final int UC_X86_INS_CVTSD2SI = 122; - public static final int UC_X86_INS_CVTSD2SS = 123; - public static final int UC_X86_INS_CVTSI2SD = 124; - public static final int UC_X86_INS_CVTSI2SS = 125; - public static final int UC_X86_INS_CVTSS2SD = 126; - public static final int UC_X86_INS_CVTSS2SI = 127; - public static final int UC_X86_INS_CVTTPD2DQ = 128; - public static final int UC_X86_INS_CVTTPS2DQ = 129; - public static final int UC_X86_INS_CVTTSD2SI = 130; - public static final int UC_X86_INS_CVTTSS2SI = 131; - public static final int UC_X86_INS_CWD = 132; - public static final int UC_X86_INS_CWDE = 133; - public static final int UC_X86_INS_DAA = 134; - public static final int UC_X86_INS_DAS = 135; - public static final int UC_X86_INS_DATA16 = 136; - public static final int UC_X86_INS_DEC = 137; - public static final int UC_X86_INS_DIV = 138; - public static final int UC_X86_INS_DIVPD = 139; - public static final int UC_X86_INS_DIVPS = 140; - public static final int UC_X86_INS_FDIVR = 141; - public static final int UC_X86_INS_FIDIVR = 142; - public static final int UC_X86_INS_FDIVRP = 143; - public static final int UC_X86_INS_DIVSD = 144; - public static final int UC_X86_INS_DIVSS = 145; - public static final int UC_X86_INS_FDIV = 146; - public static final int UC_X86_INS_FIDIV = 147; - public static final int UC_X86_INS_FDIVP = 148; - public static final int UC_X86_INS_DPPD = 149; - public static final int UC_X86_INS_DPPS = 150; - public static final int UC_X86_INS_RET = 151; - public static final int UC_X86_INS_ENCLS = 152; - public static final int UC_X86_INS_ENCLU = 153; - public static final int UC_X86_INS_ENTER = 154; - public static final int UC_X86_INS_EXTRACTPS = 155; - public static final int UC_X86_INS_EXTRQ = 156; - public static final int UC_X86_INS_F2XM1 = 157; - public static final int UC_X86_INS_LCALL = 158; - public static final int UC_X86_INS_LJMP = 159; - public static final int UC_X86_INS_FBLD = 160; - public static final int UC_X86_INS_FBSTP = 161; - public static final int UC_X86_INS_FCOMPP = 162; - public static final int UC_X86_INS_FDECSTP = 163; - public static final int UC_X86_INS_FEMMS = 164; - public static final int UC_X86_INS_FFREE = 165; - public static final int UC_X86_INS_FICOM = 166; - public static final int UC_X86_INS_FICOMP = 167; - public static final int UC_X86_INS_FINCSTP = 168; - public static final int UC_X86_INS_FLDCW = 169; - public static final int UC_X86_INS_FLDENV = 170; - public static final int UC_X86_INS_FLDL2E = 171; - public static final int UC_X86_INS_FLDL2T = 172; - public static final int UC_X86_INS_FLDLG2 = 173; - public static final int UC_X86_INS_FLDLN2 = 174; - public static final int UC_X86_INS_FLDPI = 175; - public static final int UC_X86_INS_FNCLEX = 176; - public static final int UC_X86_INS_FNINIT = 177; - public static final int UC_X86_INS_FNOP = 178; - public static final int UC_X86_INS_FNSTCW = 179; - public static final int UC_X86_INS_FNSTSW = 180; - public static final int UC_X86_INS_FPATAN = 181; - public static final int UC_X86_INS_FPREM = 182; - public static final int UC_X86_INS_FPREM1 = 183; - public static final int UC_X86_INS_FPTAN = 184; - public static final int UC_X86_INS_FFREEP = 185; - public static final int UC_X86_INS_FRNDINT = 186; - public static final int UC_X86_INS_FRSTOR = 187; - public static final int UC_X86_INS_FNSAVE = 188; - public static final int UC_X86_INS_FSCALE = 189; - public static final int UC_X86_INS_FSETPM = 190; - public static final int UC_X86_INS_FSINCOS = 191; - public static final int UC_X86_INS_FNSTENV = 192; - public static final int UC_X86_INS_FXAM = 193; - public static final int UC_X86_INS_FXRSTOR = 194; - public static final int UC_X86_INS_FXRSTOR64 = 195; - public static final int UC_X86_INS_FXSAVE = 196; - public static final int UC_X86_INS_FXSAVE64 = 197; - public static final int UC_X86_INS_FXTRACT = 198; - public static final int UC_X86_INS_FYL2X = 199; - public static final int UC_X86_INS_FYL2XP1 = 200; - public static final int UC_X86_INS_MOVAPD = 201; - public static final int UC_X86_INS_MOVAPS = 202; - public static final int UC_X86_INS_ORPD = 203; - public static final int UC_X86_INS_ORPS = 204; - public static final int UC_X86_INS_VMOVAPD = 205; - public static final int UC_X86_INS_VMOVAPS = 206; - public static final int UC_X86_INS_XORPD = 207; - public static final int UC_X86_INS_XORPS = 208; - public static final int UC_X86_INS_GETSEC = 209; - public static final int UC_X86_INS_HADDPD = 210; - public static final int UC_X86_INS_HADDPS = 211; - public static final int UC_X86_INS_HLT = 212; - public static final int UC_X86_INS_HSUBPD = 213; - public static final int UC_X86_INS_HSUBPS = 214; - public static final int UC_X86_INS_IDIV = 215; - public static final int UC_X86_INS_FILD = 216; - public static final int UC_X86_INS_IMUL = 217; - public static final int UC_X86_INS_IN = 218; - public static final int UC_X86_INS_INC = 219; - public static final int UC_X86_INS_INSB = 220; - public static final int UC_X86_INS_INSERTPS = 221; - public static final int UC_X86_INS_INSERTQ = 222; - public static final int UC_X86_INS_INSD = 223; - public static final int UC_X86_INS_INSW = 224; - public static final int UC_X86_INS_INT = 225; - public static final int UC_X86_INS_INT1 = 226; - public static final int UC_X86_INS_INT3 = 227; - public static final int UC_X86_INS_INTO = 228; - public static final int UC_X86_INS_INVD = 229; - public static final int UC_X86_INS_INVEPT = 230; - public static final int UC_X86_INS_INVLPG = 231; - public static final int UC_X86_INS_INVLPGA = 232; - public static final int UC_X86_INS_INVPCID = 233; - public static final int UC_X86_INS_INVVPID = 234; - public static final int UC_X86_INS_IRET = 235; - public static final int UC_X86_INS_IRETD = 236; - public static final int UC_X86_INS_IRETQ = 237; - public static final int UC_X86_INS_FISTTP = 238; - public static final int UC_X86_INS_FIST = 239; - public static final int UC_X86_INS_FISTP = 240; - public static final int UC_X86_INS_UCOMISD = 241; - public static final int UC_X86_INS_UCOMISS = 242; - public static final int UC_X86_INS_VCOMISD = 243; - public static final int UC_X86_INS_VCOMISS = 244; - public static final int UC_X86_INS_VCVTSD2SS = 245; - public static final int UC_X86_INS_VCVTSI2SD = 246; - public static final int UC_X86_INS_VCVTSI2SS = 247; - public static final int UC_X86_INS_VCVTSS2SD = 248; - public static final int UC_X86_INS_VCVTTSD2SI = 249; - public static final int UC_X86_INS_VCVTTSD2USI = 250; - public static final int UC_X86_INS_VCVTTSS2SI = 251; - public static final int UC_X86_INS_VCVTTSS2USI = 252; - public static final int UC_X86_INS_VCVTUSI2SD = 253; - public static final int UC_X86_INS_VCVTUSI2SS = 254; - public static final int UC_X86_INS_VUCOMISD = 255; - public static final int UC_X86_INS_VUCOMISS = 256; - public static final int UC_X86_INS_JAE = 257; - public static final int UC_X86_INS_JA = 258; - public static final int UC_X86_INS_JBE = 259; - public static final int UC_X86_INS_JB = 260; - public static final int UC_X86_INS_JCXZ = 261; - public static final int UC_X86_INS_JECXZ = 262; - public static final int UC_X86_INS_JE = 263; - public static final int UC_X86_INS_JGE = 264; - public static final int UC_X86_INS_JG = 265; - public static final int UC_X86_INS_JLE = 266; - public static final int UC_X86_INS_JL = 267; - public static final int UC_X86_INS_JMP = 268; - public static final int UC_X86_INS_JNE = 269; - public static final int UC_X86_INS_JNO = 270; - public static final int UC_X86_INS_JNP = 271; - public static final int UC_X86_INS_JNS = 272; - public static final int UC_X86_INS_JO = 273; - public static final int UC_X86_INS_JP = 274; - public static final int UC_X86_INS_JRCXZ = 275; - public static final int UC_X86_INS_JS = 276; - public static final int UC_X86_INS_KANDB = 277; - public static final int UC_X86_INS_KANDD = 278; - public static final int UC_X86_INS_KANDNB = 279; - public static final int UC_X86_INS_KANDND = 280; - public static final int UC_X86_INS_KANDNQ = 281; - public static final int UC_X86_INS_KANDNW = 282; - public static final int UC_X86_INS_KANDQ = 283; - public static final int UC_X86_INS_KANDW = 284; - public static final int UC_X86_INS_KMOVB = 285; - public static final int UC_X86_INS_KMOVD = 286; - public static final int UC_X86_INS_KMOVQ = 287; - public static final int UC_X86_INS_KMOVW = 288; - public static final int UC_X86_INS_KNOTB = 289; - public static final int UC_X86_INS_KNOTD = 290; - public static final int UC_X86_INS_KNOTQ = 291; - public static final int UC_X86_INS_KNOTW = 292; - public static final int UC_X86_INS_KORB = 293; - public static final int UC_X86_INS_KORD = 294; - public static final int UC_X86_INS_KORQ = 295; - public static final int UC_X86_INS_KORTESTB = 296; - public static final int UC_X86_INS_KORTESTD = 297; - public static final int UC_X86_INS_KORTESTQ = 298; - public static final int UC_X86_INS_KORTESTW = 299; - public static final int UC_X86_INS_KORW = 300; - public static final int UC_X86_INS_KSHIFTLB = 301; - public static final int UC_X86_INS_KSHIFTLD = 302; - public static final int UC_X86_INS_KSHIFTLQ = 303; - public static final int UC_X86_INS_KSHIFTLW = 304; - public static final int UC_X86_INS_KSHIFTRB = 305; - public static final int UC_X86_INS_KSHIFTRD = 306; - public static final int UC_X86_INS_KSHIFTRQ = 307; - public static final int UC_X86_INS_KSHIFTRW = 308; - public static final int UC_X86_INS_KUNPCKBW = 309; - public static final int UC_X86_INS_KXNORB = 310; - public static final int UC_X86_INS_KXNORD = 311; - public static final int UC_X86_INS_KXNORQ = 312; - public static final int UC_X86_INS_KXNORW = 313; - public static final int UC_X86_INS_KXORB = 314; - public static final int UC_X86_INS_KXORD = 315; - public static final int UC_X86_INS_KXORQ = 316; - public static final int UC_X86_INS_KXORW = 317; - public static final int UC_X86_INS_LAHF = 318; - public static final int UC_X86_INS_LAR = 319; - public static final int UC_X86_INS_LDDQU = 320; - public static final int UC_X86_INS_LDMXCSR = 321; - public static final int UC_X86_INS_LDS = 322; - public static final int UC_X86_INS_FLDZ = 323; - public static final int UC_X86_INS_FLD1 = 324; - public static final int UC_X86_INS_FLD = 325; - public static final int UC_X86_INS_LEA = 326; - public static final int UC_X86_INS_LEAVE = 327; - public static final int UC_X86_INS_LES = 328; - public static final int UC_X86_INS_LFENCE = 329; - public static final int UC_X86_INS_LFS = 330; - public static final int UC_X86_INS_LGDT = 331; - public static final int UC_X86_INS_LGS = 332; - public static final int UC_X86_INS_LIDT = 333; - public static final int UC_X86_INS_LLDT = 334; - public static final int UC_X86_INS_LMSW = 335; - public static final int UC_X86_INS_OR = 336; - public static final int UC_X86_INS_SUB = 337; - public static final int UC_X86_INS_XOR = 338; - public static final int UC_X86_INS_LODSB = 339; - public static final int UC_X86_INS_LODSD = 340; - public static final int UC_X86_INS_LODSQ = 341; - public static final int UC_X86_INS_LODSW = 342; - public static final int UC_X86_INS_LOOP = 343; - public static final int UC_X86_INS_LOOPE = 344; - public static final int UC_X86_INS_LOOPNE = 345; - public static final int UC_X86_INS_RETF = 346; - public static final int UC_X86_INS_RETFQ = 347; - public static final int UC_X86_INS_LSL = 348; - public static final int UC_X86_INS_LSS = 349; - public static final int UC_X86_INS_LTR = 350; - public static final int UC_X86_INS_XADD = 351; - public static final int UC_X86_INS_LZCNT = 352; - public static final int UC_X86_INS_MASKMOVDQU = 353; - public static final int UC_X86_INS_MAXPD = 354; - public static final int UC_X86_INS_MAXPS = 355; - public static final int UC_X86_INS_MAXSD = 356; - public static final int UC_X86_INS_MAXSS = 357; - public static final int UC_X86_INS_MFENCE = 358; - public static final int UC_X86_INS_MINPD = 359; - public static final int UC_X86_INS_MINPS = 360; - public static final int UC_X86_INS_MINSD = 361; - public static final int UC_X86_INS_MINSS = 362; - public static final int UC_X86_INS_CVTPD2PI = 363; - public static final int UC_X86_INS_CVTPI2PD = 364; - public static final int UC_X86_INS_CVTPI2PS = 365; - public static final int UC_X86_INS_CVTPS2PI = 366; - public static final int UC_X86_INS_CVTTPD2PI = 367; - public static final int UC_X86_INS_CVTTPS2PI = 368; - public static final int UC_X86_INS_EMMS = 369; - public static final int UC_X86_INS_MASKMOVQ = 370; - public static final int UC_X86_INS_MOVD = 371; - public static final int UC_X86_INS_MOVDQ2Q = 372; - public static final int UC_X86_INS_MOVNTQ = 373; - public static final int UC_X86_INS_MOVQ2DQ = 374; - public static final int UC_X86_INS_MOVQ = 375; - public static final int UC_X86_INS_PABSB = 376; - public static final int UC_X86_INS_PABSD = 377; - public static final int UC_X86_INS_PABSW = 378; - public static final int UC_X86_INS_PACKSSDW = 379; - public static final int UC_X86_INS_PACKSSWB = 380; - public static final int UC_X86_INS_PACKUSWB = 381; - public static final int UC_X86_INS_PADDB = 382; - public static final int UC_X86_INS_PADDD = 383; - public static final int UC_X86_INS_PADDQ = 384; - public static final int UC_X86_INS_PADDSB = 385; - public static final int UC_X86_INS_PADDSW = 386; - public static final int UC_X86_INS_PADDUSB = 387; - public static final int UC_X86_INS_PADDUSW = 388; - public static final int UC_X86_INS_PADDW = 389; - public static final int UC_X86_INS_PALIGNR = 390; - public static final int UC_X86_INS_PANDN = 391; - public static final int UC_X86_INS_PAND = 392; - public static final int UC_X86_INS_PAVGB = 393; - public static final int UC_X86_INS_PAVGW = 394; - public static final int UC_X86_INS_PCMPEQB = 395; - public static final int UC_X86_INS_PCMPEQD = 396; - public static final int UC_X86_INS_PCMPEQW = 397; - public static final int UC_X86_INS_PCMPGTB = 398; - public static final int UC_X86_INS_PCMPGTD = 399; - public static final int UC_X86_INS_PCMPGTW = 400; - public static final int UC_X86_INS_PEXTRW = 401; - public static final int UC_X86_INS_PHADDSW = 402; - public static final int UC_X86_INS_PHADDW = 403; - public static final int UC_X86_INS_PHADDD = 404; - public static final int UC_X86_INS_PHSUBD = 405; - public static final int UC_X86_INS_PHSUBSW = 406; - public static final int UC_X86_INS_PHSUBW = 407; - public static final int UC_X86_INS_PINSRW = 408; - public static final int UC_X86_INS_PMADDUBSW = 409; - public static final int UC_X86_INS_PMADDWD = 410; - public static final int UC_X86_INS_PMAXSW = 411; - public static final int UC_X86_INS_PMAXUB = 412; - public static final int UC_X86_INS_PMINSW = 413; - public static final int UC_X86_INS_PMINUB = 414; - public static final int UC_X86_INS_PMOVMSKB = 415; - public static final int UC_X86_INS_PMULHRSW = 416; - public static final int UC_X86_INS_PMULHUW = 417; - public static final int UC_X86_INS_PMULHW = 418; - public static final int UC_X86_INS_PMULLW = 419; - public static final int UC_X86_INS_PMULUDQ = 420; - public static final int UC_X86_INS_POR = 421; - public static final int UC_X86_INS_PSADBW = 422; - public static final int UC_X86_INS_PSHUFB = 423; - public static final int UC_X86_INS_PSHUFW = 424; - public static final int UC_X86_INS_PSIGNB = 425; - public static final int UC_X86_INS_PSIGND = 426; - public static final int UC_X86_INS_PSIGNW = 427; - public static final int UC_X86_INS_PSLLD = 428; - public static final int UC_X86_INS_PSLLQ = 429; - public static final int UC_X86_INS_PSLLW = 430; - public static final int UC_X86_INS_PSRAD = 431; - public static final int UC_X86_INS_PSRAW = 432; - public static final int UC_X86_INS_PSRLD = 433; - public static final int UC_X86_INS_PSRLQ = 434; - public static final int UC_X86_INS_PSRLW = 435; - public static final int UC_X86_INS_PSUBB = 436; - public static final int UC_X86_INS_PSUBD = 437; - public static final int UC_X86_INS_PSUBQ = 438; - public static final int UC_X86_INS_PSUBSB = 439; - public static final int UC_X86_INS_PSUBSW = 440; - public static final int UC_X86_INS_PSUBUSB = 441; - public static final int UC_X86_INS_PSUBUSW = 442; - public static final int UC_X86_INS_PSUBW = 443; - public static final int UC_X86_INS_PUNPCKHBW = 444; - public static final int UC_X86_INS_PUNPCKHDQ = 445; - public static final int UC_X86_INS_PUNPCKHWD = 446; - public static final int UC_X86_INS_PUNPCKLBW = 447; - public static final int UC_X86_INS_PUNPCKLDQ = 448; - public static final int UC_X86_INS_PUNPCKLWD = 449; - public static final int UC_X86_INS_PXOR = 450; - public static final int UC_X86_INS_MONITOR = 451; - public static final int UC_X86_INS_MONTMUL = 452; - public static final int UC_X86_INS_MOV = 453; - public static final int UC_X86_INS_MOVABS = 454; - public static final int UC_X86_INS_MOVBE = 455; - public static final int UC_X86_INS_MOVDDUP = 456; - public static final int UC_X86_INS_MOVDQA = 457; - public static final int UC_X86_INS_MOVDQU = 458; - public static final int UC_X86_INS_MOVHLPS = 459; - public static final int UC_X86_INS_MOVHPD = 460; - public static final int UC_X86_INS_MOVHPS = 461; - public static final int UC_X86_INS_MOVLHPS = 462; - public static final int UC_X86_INS_MOVLPD = 463; - public static final int UC_X86_INS_MOVLPS = 464; - public static final int UC_X86_INS_MOVMSKPD = 465; - public static final int UC_X86_INS_MOVMSKPS = 466; - public static final int UC_X86_INS_MOVNTDQA = 467; - public static final int UC_X86_INS_MOVNTDQ = 468; - public static final int UC_X86_INS_MOVNTI = 469; - public static final int UC_X86_INS_MOVNTPD = 470; - public static final int UC_X86_INS_MOVNTPS = 471; - public static final int UC_X86_INS_MOVNTSD = 472; - public static final int UC_X86_INS_MOVNTSS = 473; - public static final int UC_X86_INS_MOVSB = 474; - public static final int UC_X86_INS_MOVSD = 475; - public static final int UC_X86_INS_MOVSHDUP = 476; - public static final int UC_X86_INS_MOVSLDUP = 477; - public static final int UC_X86_INS_MOVSQ = 478; - public static final int UC_X86_INS_MOVSS = 479; - public static final int UC_X86_INS_MOVSW = 480; - public static final int UC_X86_INS_MOVSX = 481; - public static final int UC_X86_INS_MOVSXD = 482; - public static final int UC_X86_INS_MOVUPD = 483; - public static final int UC_X86_INS_MOVUPS = 484; - public static final int UC_X86_INS_MOVZX = 485; - public static final int UC_X86_INS_MPSADBW = 486; - public static final int UC_X86_INS_MUL = 487; - public static final int UC_X86_INS_MULPD = 488; - public static final int UC_X86_INS_MULPS = 489; - public static final int UC_X86_INS_MULSD = 490; - public static final int UC_X86_INS_MULSS = 491; - public static final int UC_X86_INS_MULX = 492; - public static final int UC_X86_INS_FMUL = 493; - public static final int UC_X86_INS_FIMUL = 494; - public static final int UC_X86_INS_FMULP = 495; - public static final int UC_X86_INS_MWAIT = 496; - public static final int UC_X86_INS_NEG = 497; - public static final int UC_X86_INS_NOP = 498; - public static final int UC_X86_INS_NOT = 499; - public static final int UC_X86_INS_OUT = 500; - public static final int UC_X86_INS_OUTSB = 501; - public static final int UC_X86_INS_OUTSD = 502; - public static final int UC_X86_INS_OUTSW = 503; - public static final int UC_X86_INS_PACKUSDW = 504; - public static final int UC_X86_INS_PAUSE = 505; - public static final int UC_X86_INS_PAVGUSB = 506; - public static final int UC_X86_INS_PBLENDVB = 507; - public static final int UC_X86_INS_PBLENDW = 508; - public static final int UC_X86_INS_PCLMULQDQ = 509; - public static final int UC_X86_INS_PCMPEQQ = 510; - public static final int UC_X86_INS_PCMPESTRI = 511; - public static final int UC_X86_INS_PCMPESTRM = 512; - public static final int UC_X86_INS_PCMPGTQ = 513; - public static final int UC_X86_INS_PCMPISTRI = 514; - public static final int UC_X86_INS_PCMPISTRM = 515; - public static final int UC_X86_INS_PCOMMIT = 516; - public static final int UC_X86_INS_PDEP = 517; - public static final int UC_X86_INS_PEXT = 518; - public static final int UC_X86_INS_PEXTRB = 519; - public static final int UC_X86_INS_PEXTRD = 520; - public static final int UC_X86_INS_PEXTRQ = 521; - public static final int UC_X86_INS_PF2ID = 522; - public static final int UC_X86_INS_PF2IW = 523; - public static final int UC_X86_INS_PFACC = 524; - public static final int UC_X86_INS_PFADD = 525; - public static final int UC_X86_INS_PFCMPEQ = 526; - public static final int UC_X86_INS_PFCMPGE = 527; - public static final int UC_X86_INS_PFCMPGT = 528; - public static final int UC_X86_INS_PFMAX = 529; - public static final int UC_X86_INS_PFMIN = 530; - public static final int UC_X86_INS_PFMUL = 531; - public static final int UC_X86_INS_PFNACC = 532; - public static final int UC_X86_INS_PFPNACC = 533; - public static final int UC_X86_INS_PFRCPIT1 = 534; - public static final int UC_X86_INS_PFRCPIT2 = 535; - public static final int UC_X86_INS_PFRCP = 536; - public static final int UC_X86_INS_PFRSQIT1 = 537; - public static final int UC_X86_INS_PFRSQRT = 538; - public static final int UC_X86_INS_PFSUBR = 539; - public static final int UC_X86_INS_PFSUB = 540; - public static final int UC_X86_INS_PHMINPOSUW = 541; - public static final int UC_X86_INS_PI2FD = 542; - public static final int UC_X86_INS_PI2FW = 543; - public static final int UC_X86_INS_PINSRB = 544; - public static final int UC_X86_INS_PINSRD = 545; - public static final int UC_X86_INS_PINSRQ = 546; - public static final int UC_X86_INS_PMAXSB = 547; - public static final int UC_X86_INS_PMAXSD = 548; - public static final int UC_X86_INS_PMAXUD = 549; - public static final int UC_X86_INS_PMAXUW = 550; - public static final int UC_X86_INS_PMINSB = 551; - public static final int UC_X86_INS_PMINSD = 552; - public static final int UC_X86_INS_PMINUD = 553; - public static final int UC_X86_INS_PMINUW = 554; - public static final int UC_X86_INS_PMOVSXBD = 555; - public static final int UC_X86_INS_PMOVSXBQ = 556; - public static final int UC_X86_INS_PMOVSXBW = 557; - public static final int UC_X86_INS_PMOVSXDQ = 558; - public static final int UC_X86_INS_PMOVSXWD = 559; - public static final int UC_X86_INS_PMOVSXWQ = 560; - public static final int UC_X86_INS_PMOVZXBD = 561; - public static final int UC_X86_INS_PMOVZXBQ = 562; - public static final int UC_X86_INS_PMOVZXBW = 563; - public static final int UC_X86_INS_PMOVZXDQ = 564; - public static final int UC_X86_INS_PMOVZXWD = 565; - public static final int UC_X86_INS_PMOVZXWQ = 566; - public static final int UC_X86_INS_PMULDQ = 567; - public static final int UC_X86_INS_PMULHRW = 568; - public static final int UC_X86_INS_PMULLD = 569; - public static final int UC_X86_INS_POP = 570; - public static final int UC_X86_INS_POPAW = 571; - public static final int UC_X86_INS_POPAL = 572; - public static final int UC_X86_INS_POPCNT = 573; - public static final int UC_X86_INS_POPF = 574; - public static final int UC_X86_INS_POPFD = 575; - public static final int UC_X86_INS_POPFQ = 576; - public static final int UC_X86_INS_PREFETCH = 577; - public static final int UC_X86_INS_PREFETCHNTA = 578; - public static final int UC_X86_INS_PREFETCHT0 = 579; - public static final int UC_X86_INS_PREFETCHT1 = 580; - public static final int UC_X86_INS_PREFETCHT2 = 581; - public static final int UC_X86_INS_PREFETCHW = 582; - public static final int UC_X86_INS_PSHUFD = 583; - public static final int UC_X86_INS_PSHUFHW = 584; - public static final int UC_X86_INS_PSHUFLW = 585; - public static final int UC_X86_INS_PSLLDQ = 586; - public static final int UC_X86_INS_PSRLDQ = 587; - public static final int UC_X86_INS_PSWAPD = 588; - public static final int UC_X86_INS_PTEST = 589; - public static final int UC_X86_INS_PUNPCKHQDQ = 590; - public static final int UC_X86_INS_PUNPCKLQDQ = 591; - public static final int UC_X86_INS_PUSH = 592; - public static final int UC_X86_INS_PUSHAW = 593; - public static final int UC_X86_INS_PUSHAL = 594; - public static final int UC_X86_INS_PUSHF = 595; - public static final int UC_X86_INS_PUSHFD = 596; - public static final int UC_X86_INS_PUSHFQ = 597; - public static final int UC_X86_INS_RCL = 598; - public static final int UC_X86_INS_RCPPS = 599; - public static final int UC_X86_INS_RCPSS = 600; - public static final int UC_X86_INS_RCR = 601; - public static final int UC_X86_INS_RDFSBASE = 602; - public static final int UC_X86_INS_RDGSBASE = 603; - public static final int UC_X86_INS_RDMSR = 604; - public static final int UC_X86_INS_RDPMC = 605; - public static final int UC_X86_INS_RDRAND = 606; - public static final int UC_X86_INS_RDSEED = 607; - public static final int UC_X86_INS_RDTSC = 608; - public static final int UC_X86_INS_RDTSCP = 609; - public static final int UC_X86_INS_ROL = 610; - public static final int UC_X86_INS_ROR = 611; - public static final int UC_X86_INS_RORX = 612; - public static final int UC_X86_INS_ROUNDPD = 613; - public static final int UC_X86_INS_ROUNDPS = 614; - public static final int UC_X86_INS_ROUNDSD = 615; - public static final int UC_X86_INS_ROUNDSS = 616; - public static final int UC_X86_INS_RSM = 617; - public static final int UC_X86_INS_RSQRTPS = 618; - public static final int UC_X86_INS_RSQRTSS = 619; - public static final int UC_X86_INS_SAHF = 620; - public static final int UC_X86_INS_SAL = 621; - public static final int UC_X86_INS_SALC = 622; - public static final int UC_X86_INS_SAR = 623; - public static final int UC_X86_INS_SARX = 624; - public static final int UC_X86_INS_SBB = 625; - public static final int UC_X86_INS_SCASB = 626; - public static final int UC_X86_INS_SCASD = 627; - public static final int UC_X86_INS_SCASQ = 628; - public static final int UC_X86_INS_SCASW = 629; - public static final int UC_X86_INS_SETAE = 630; - public static final int UC_X86_INS_SETA = 631; - public static final int UC_X86_INS_SETBE = 632; - public static final int UC_X86_INS_SETB = 633; - public static final int UC_X86_INS_SETE = 634; - public static final int UC_X86_INS_SETGE = 635; - public static final int UC_X86_INS_SETG = 636; - public static final int UC_X86_INS_SETLE = 637; - public static final int UC_X86_INS_SETL = 638; - public static final int UC_X86_INS_SETNE = 639; - public static final int UC_X86_INS_SETNO = 640; - public static final int UC_X86_INS_SETNP = 641; - public static final int UC_X86_INS_SETNS = 642; - public static final int UC_X86_INS_SETO = 643; - public static final int UC_X86_INS_SETP = 644; - public static final int UC_X86_INS_SETS = 645; - public static final int UC_X86_INS_SFENCE = 646; - public static final int UC_X86_INS_SGDT = 647; - public static final int UC_X86_INS_SHA1MSG1 = 648; - public static final int UC_X86_INS_SHA1MSG2 = 649; - public static final int UC_X86_INS_SHA1NEXTE = 650; - public static final int UC_X86_INS_SHA1RNDS4 = 651; - public static final int UC_X86_INS_SHA256MSG1 = 652; - public static final int UC_X86_INS_SHA256MSG2 = 653; - public static final int UC_X86_INS_SHA256RNDS2 = 654; - public static final int UC_X86_INS_SHL = 655; - public static final int UC_X86_INS_SHLD = 656; - public static final int UC_X86_INS_SHLX = 657; - public static final int UC_X86_INS_SHR = 658; - public static final int UC_X86_INS_SHRD = 659; - public static final int UC_X86_INS_SHRX = 660; - public static final int UC_X86_INS_SHUFPD = 661; - public static final int UC_X86_INS_SHUFPS = 662; - public static final int UC_X86_INS_SIDT = 663; - public static final int UC_X86_INS_FSIN = 664; - public static final int UC_X86_INS_SKINIT = 665; - public static final int UC_X86_INS_SLDT = 666; - public static final int UC_X86_INS_SMSW = 667; - public static final int UC_X86_INS_SQRTPD = 668; - public static final int UC_X86_INS_SQRTPS = 669; - public static final int UC_X86_INS_SQRTSD = 670; - public static final int UC_X86_INS_SQRTSS = 671; - public static final int UC_X86_INS_FSQRT = 672; - public static final int UC_X86_INS_STAC = 673; - public static final int UC_X86_INS_STC = 674; - public static final int UC_X86_INS_STD = 675; - public static final int UC_X86_INS_STGI = 676; - public static final int UC_X86_INS_STI = 677; - public static final int UC_X86_INS_STMXCSR = 678; - public static final int UC_X86_INS_STOSB = 679; - public static final int UC_X86_INS_STOSD = 680; - public static final int UC_X86_INS_STOSQ = 681; - public static final int UC_X86_INS_STOSW = 682; - public static final int UC_X86_INS_STR = 683; - public static final int UC_X86_INS_FST = 684; - public static final int UC_X86_INS_FSTP = 685; - public static final int UC_X86_INS_FSTPNCE = 686; - public static final int UC_X86_INS_FXCH = 687; - public static final int UC_X86_INS_SUBPD = 688; - public static final int UC_X86_INS_SUBPS = 689; - public static final int UC_X86_INS_FSUBR = 690; - public static final int UC_X86_INS_FISUBR = 691; - public static final int UC_X86_INS_FSUBRP = 692; - public static final int UC_X86_INS_SUBSD = 693; - public static final int UC_X86_INS_SUBSS = 694; - public static final int UC_X86_INS_FSUB = 695; - public static final int UC_X86_INS_FISUB = 696; - public static final int UC_X86_INS_FSUBP = 697; - public static final int UC_X86_INS_SWAPGS = 698; - public static final int UC_X86_INS_SYSCALL = 699; - public static final int UC_X86_INS_SYSENTER = 700; - public static final int UC_X86_INS_SYSEXIT = 701; - public static final int UC_X86_INS_SYSRET = 702; - public static final int UC_X86_INS_T1MSKC = 703; - public static final int UC_X86_INS_TEST = 704; - public static final int UC_X86_INS_UD2 = 705; - public static final int UC_X86_INS_FTST = 706; - public static final int UC_X86_INS_TZCNT = 707; - public static final int UC_X86_INS_TZMSK = 708; - public static final int UC_X86_INS_FUCOMPI = 709; - public static final int UC_X86_INS_FUCOMI = 710; - public static final int UC_X86_INS_FUCOMPP = 711; - public static final int UC_X86_INS_FUCOMP = 712; - public static final int UC_X86_INS_FUCOM = 713; - public static final int UC_X86_INS_UD2B = 714; - public static final int UC_X86_INS_UNPCKHPD = 715; - public static final int UC_X86_INS_UNPCKHPS = 716; - public static final int UC_X86_INS_UNPCKLPD = 717; - public static final int UC_X86_INS_UNPCKLPS = 718; - public static final int UC_X86_INS_VADDPD = 719; - public static final int UC_X86_INS_VADDPS = 720; - public static final int UC_X86_INS_VADDSD = 721; - public static final int UC_X86_INS_VADDSS = 722; - public static final int UC_X86_INS_VADDSUBPD = 723; - public static final int UC_X86_INS_VADDSUBPS = 724; - public static final int UC_X86_INS_VAESDECLAST = 725; - public static final int UC_X86_INS_VAESDEC = 726; - public static final int UC_X86_INS_VAESENCLAST = 727; - public static final int UC_X86_INS_VAESENC = 728; - public static final int UC_X86_INS_VAESIMC = 729; - public static final int UC_X86_INS_VAESKEYGENASSIST = 730; - public static final int UC_X86_INS_VALIGND = 731; - public static final int UC_X86_INS_VALIGNQ = 732; - public static final int UC_X86_INS_VANDNPD = 733; - public static final int UC_X86_INS_VANDNPS = 734; - public static final int UC_X86_INS_VANDPD = 735; - public static final int UC_X86_INS_VANDPS = 736; - public static final int UC_X86_INS_VBLENDMPD = 737; - public static final int UC_X86_INS_VBLENDMPS = 738; - public static final int UC_X86_INS_VBLENDPD = 739; - public static final int UC_X86_INS_VBLENDPS = 740; - public static final int UC_X86_INS_VBLENDVPD = 741; - public static final int UC_X86_INS_VBLENDVPS = 742; - public static final int UC_X86_INS_VBROADCASTF128 = 743; - public static final int UC_X86_INS_VBROADCASTI32X4 = 744; - public static final int UC_X86_INS_VBROADCASTI64X4 = 745; - public static final int UC_X86_INS_VBROADCASTSD = 746; - public static final int UC_X86_INS_VBROADCASTSS = 747; - public static final int UC_X86_INS_VCMPPD = 748; - public static final int UC_X86_INS_VCMPPS = 749; - public static final int UC_X86_INS_VCMPSD = 750; - public static final int UC_X86_INS_VCMPSS = 751; - public static final int UC_X86_INS_VCOMPRESSPD = 752; - public static final int UC_X86_INS_VCOMPRESSPS = 753; - public static final int UC_X86_INS_VCVTDQ2PD = 754; - public static final int UC_X86_INS_VCVTDQ2PS = 755; - public static final int UC_X86_INS_VCVTPD2DQX = 756; - public static final int UC_X86_INS_VCVTPD2DQ = 757; - public static final int UC_X86_INS_VCVTPD2PSX = 758; - public static final int UC_X86_INS_VCVTPD2PS = 759; - public static final int UC_X86_INS_VCVTPD2UDQ = 760; - public static final int UC_X86_INS_VCVTPH2PS = 761; - public static final int UC_X86_INS_VCVTPS2DQ = 762; - public static final int UC_X86_INS_VCVTPS2PD = 763; - public static final int UC_X86_INS_VCVTPS2PH = 764; - public static final int UC_X86_INS_VCVTPS2UDQ = 765; - public static final int UC_X86_INS_VCVTSD2SI = 766; - public static final int UC_X86_INS_VCVTSD2USI = 767; - public static final int UC_X86_INS_VCVTSS2SI = 768; - public static final int UC_X86_INS_VCVTSS2USI = 769; - public static final int UC_X86_INS_VCVTTPD2DQX = 770; - public static final int UC_X86_INS_VCVTTPD2DQ = 771; - public static final int UC_X86_INS_VCVTTPD2UDQ = 772; - public static final int UC_X86_INS_VCVTTPS2DQ = 773; - public static final int UC_X86_INS_VCVTTPS2UDQ = 774; - public static final int UC_X86_INS_VCVTUDQ2PD = 775; - public static final int UC_X86_INS_VCVTUDQ2PS = 776; - public static final int UC_X86_INS_VDIVPD = 777; - public static final int UC_X86_INS_VDIVPS = 778; - public static final int UC_X86_INS_VDIVSD = 779; - public static final int UC_X86_INS_VDIVSS = 780; - public static final int UC_X86_INS_VDPPD = 781; - public static final int UC_X86_INS_VDPPS = 782; - public static final int UC_X86_INS_VERR = 783; - public static final int UC_X86_INS_VERW = 784; - public static final int UC_X86_INS_VEXP2PD = 785; - public static final int UC_X86_INS_VEXP2PS = 786; - public static final int UC_X86_INS_VEXPANDPD = 787; - public static final int UC_X86_INS_VEXPANDPS = 788; - public static final int UC_X86_INS_VEXTRACTF128 = 789; - public static final int UC_X86_INS_VEXTRACTF32X4 = 790; - public static final int UC_X86_INS_VEXTRACTF64X4 = 791; - public static final int UC_X86_INS_VEXTRACTI128 = 792; - public static final int UC_X86_INS_VEXTRACTI32X4 = 793; - public static final int UC_X86_INS_VEXTRACTI64X4 = 794; - public static final int UC_X86_INS_VEXTRACTPS = 795; - public static final int UC_X86_INS_VFMADD132PD = 796; - public static final int UC_X86_INS_VFMADD132PS = 797; - public static final int UC_X86_INS_VFMADDPD = 798; - public static final int UC_X86_INS_VFMADD213PD = 799; - public static final int UC_X86_INS_VFMADD231PD = 800; - public static final int UC_X86_INS_VFMADDPS = 801; - public static final int UC_X86_INS_VFMADD213PS = 802; - public static final int UC_X86_INS_VFMADD231PS = 803; - public static final int UC_X86_INS_VFMADDSD = 804; - public static final int UC_X86_INS_VFMADD213SD = 805; - public static final int UC_X86_INS_VFMADD132SD = 806; - public static final int UC_X86_INS_VFMADD231SD = 807; - public static final int UC_X86_INS_VFMADDSS = 808; - public static final int UC_X86_INS_VFMADD213SS = 809; - public static final int UC_X86_INS_VFMADD132SS = 810; - public static final int UC_X86_INS_VFMADD231SS = 811; - public static final int UC_X86_INS_VFMADDSUB132PD = 812; - public static final int UC_X86_INS_VFMADDSUB132PS = 813; - public static final int UC_X86_INS_VFMADDSUBPD = 814; - public static final int UC_X86_INS_VFMADDSUB213PD = 815; - public static final int UC_X86_INS_VFMADDSUB231PD = 816; - public static final int UC_X86_INS_VFMADDSUBPS = 817; - public static final int UC_X86_INS_VFMADDSUB213PS = 818; - public static final int UC_X86_INS_VFMADDSUB231PS = 819; - public static final int UC_X86_INS_VFMSUB132PD = 820; - public static final int UC_X86_INS_VFMSUB132PS = 821; - public static final int UC_X86_INS_VFMSUBADD132PD = 822; - public static final int UC_X86_INS_VFMSUBADD132PS = 823; - public static final int UC_X86_INS_VFMSUBADDPD = 824; - public static final int UC_X86_INS_VFMSUBADD213PD = 825; - public static final int UC_X86_INS_VFMSUBADD231PD = 826; - public static final int UC_X86_INS_VFMSUBADDPS = 827; - public static final int UC_X86_INS_VFMSUBADD213PS = 828; - public static final int UC_X86_INS_VFMSUBADD231PS = 829; - public static final int UC_X86_INS_VFMSUBPD = 830; - public static final int UC_X86_INS_VFMSUB213PD = 831; - public static final int UC_X86_INS_VFMSUB231PD = 832; - public static final int UC_X86_INS_VFMSUBPS = 833; - public static final int UC_X86_INS_VFMSUB213PS = 834; - public static final int UC_X86_INS_VFMSUB231PS = 835; - public static final int UC_X86_INS_VFMSUBSD = 836; - public static final int UC_X86_INS_VFMSUB213SD = 837; - public static final int UC_X86_INS_VFMSUB132SD = 838; - public static final int UC_X86_INS_VFMSUB231SD = 839; - public static final int UC_X86_INS_VFMSUBSS = 840; - public static final int UC_X86_INS_VFMSUB213SS = 841; - public static final int UC_X86_INS_VFMSUB132SS = 842; - public static final int UC_X86_INS_VFMSUB231SS = 843; - public static final int UC_X86_INS_VFNMADD132PD = 844; - public static final int UC_X86_INS_VFNMADD132PS = 845; - public static final int UC_X86_INS_VFNMADDPD = 846; - public static final int UC_X86_INS_VFNMADD213PD = 847; - public static final int UC_X86_INS_VFNMADD231PD = 848; - public static final int UC_X86_INS_VFNMADDPS = 849; - public static final int UC_X86_INS_VFNMADD213PS = 850; - public static final int UC_X86_INS_VFNMADD231PS = 851; - public static final int UC_X86_INS_VFNMADDSD = 852; - public static final int UC_X86_INS_VFNMADD213SD = 853; - public static final int UC_X86_INS_VFNMADD132SD = 854; - public static final int UC_X86_INS_VFNMADD231SD = 855; - public static final int UC_X86_INS_VFNMADDSS = 856; - public static final int UC_X86_INS_VFNMADD213SS = 857; - public static final int UC_X86_INS_VFNMADD132SS = 858; - public static final int UC_X86_INS_VFNMADD231SS = 859; - public static final int UC_X86_INS_VFNMSUB132PD = 860; - public static final int UC_X86_INS_VFNMSUB132PS = 861; - public static final int UC_X86_INS_VFNMSUBPD = 862; - public static final int UC_X86_INS_VFNMSUB213PD = 863; - public static final int UC_X86_INS_VFNMSUB231PD = 864; - public static final int UC_X86_INS_VFNMSUBPS = 865; - public static final int UC_X86_INS_VFNMSUB213PS = 866; - public static final int UC_X86_INS_VFNMSUB231PS = 867; - public static final int UC_X86_INS_VFNMSUBSD = 868; - public static final int UC_X86_INS_VFNMSUB213SD = 869; - public static final int UC_X86_INS_VFNMSUB132SD = 870; - public static final int UC_X86_INS_VFNMSUB231SD = 871; - public static final int UC_X86_INS_VFNMSUBSS = 872; - public static final int UC_X86_INS_VFNMSUB213SS = 873; - public static final int UC_X86_INS_VFNMSUB132SS = 874; - public static final int UC_X86_INS_VFNMSUB231SS = 875; - public static final int UC_X86_INS_VFRCZPD = 876; - public static final int UC_X86_INS_VFRCZPS = 877; - public static final int UC_X86_INS_VFRCZSD = 878; - public static final int UC_X86_INS_VFRCZSS = 879; - public static final int UC_X86_INS_VORPD = 880; - public static final int UC_X86_INS_VORPS = 881; - public static final int UC_X86_INS_VXORPD = 882; - public static final int UC_X86_INS_VXORPS = 883; - public static final int UC_X86_INS_VGATHERDPD = 884; - public static final int UC_X86_INS_VGATHERDPS = 885; - public static final int UC_X86_INS_VGATHERPF0DPD = 886; - public static final int UC_X86_INS_VGATHERPF0DPS = 887; - public static final int UC_X86_INS_VGATHERPF0QPD = 888; - public static final int UC_X86_INS_VGATHERPF0QPS = 889; - public static final int UC_X86_INS_VGATHERPF1DPD = 890; - public static final int UC_X86_INS_VGATHERPF1DPS = 891; - public static final int UC_X86_INS_VGATHERPF1QPD = 892; - public static final int UC_X86_INS_VGATHERPF1QPS = 893; - public static final int UC_X86_INS_VGATHERQPD = 894; - public static final int UC_X86_INS_VGATHERQPS = 895; - public static final int UC_X86_INS_VHADDPD = 896; - public static final int UC_X86_INS_VHADDPS = 897; - public static final int UC_X86_INS_VHSUBPD = 898; - public static final int UC_X86_INS_VHSUBPS = 899; - public static final int UC_X86_INS_VINSERTF128 = 900; - public static final int UC_X86_INS_VINSERTF32X4 = 901; - public static final int UC_X86_INS_VINSERTF32X8 = 902; - public static final int UC_X86_INS_VINSERTF64X2 = 903; - public static final int UC_X86_INS_VINSERTF64X4 = 904; - public static final int UC_X86_INS_VINSERTI128 = 905; - public static final int UC_X86_INS_VINSERTI32X4 = 906; - public static final int UC_X86_INS_VINSERTI32X8 = 907; - public static final int UC_X86_INS_VINSERTI64X2 = 908; - public static final int UC_X86_INS_VINSERTI64X4 = 909; - public static final int UC_X86_INS_VINSERTPS = 910; - public static final int UC_X86_INS_VLDDQU = 911; - public static final int UC_X86_INS_VLDMXCSR = 912; - public static final int UC_X86_INS_VMASKMOVDQU = 913; - public static final int UC_X86_INS_VMASKMOVPD = 914; - public static final int UC_X86_INS_VMASKMOVPS = 915; - public static final int UC_X86_INS_VMAXPD = 916; - public static final int UC_X86_INS_VMAXPS = 917; - public static final int UC_X86_INS_VMAXSD = 918; - public static final int UC_X86_INS_VMAXSS = 919; - public static final int UC_X86_INS_VMCALL = 920; - public static final int UC_X86_INS_VMCLEAR = 921; - public static final int UC_X86_INS_VMFUNC = 922; - public static final int UC_X86_INS_VMINPD = 923; - public static final int UC_X86_INS_VMINPS = 924; - public static final int UC_X86_INS_VMINSD = 925; - public static final int UC_X86_INS_VMINSS = 926; - public static final int UC_X86_INS_VMLAUNCH = 927; - public static final int UC_X86_INS_VMLOAD = 928; - public static final int UC_X86_INS_VMMCALL = 929; - public static final int UC_X86_INS_VMOVQ = 930; - public static final int UC_X86_INS_VMOVDDUP = 931; - public static final int UC_X86_INS_VMOVD = 932; - public static final int UC_X86_INS_VMOVDQA32 = 933; - public static final int UC_X86_INS_VMOVDQA64 = 934; - public static final int UC_X86_INS_VMOVDQA = 935; - public static final int UC_X86_INS_VMOVDQU16 = 936; - public static final int UC_X86_INS_VMOVDQU32 = 937; - public static final int UC_X86_INS_VMOVDQU64 = 938; - public static final int UC_X86_INS_VMOVDQU8 = 939; - public static final int UC_X86_INS_VMOVDQU = 940; - public static final int UC_X86_INS_VMOVHLPS = 941; - public static final int UC_X86_INS_VMOVHPD = 942; - public static final int UC_X86_INS_VMOVHPS = 943; - public static final int UC_X86_INS_VMOVLHPS = 944; - public static final int UC_X86_INS_VMOVLPD = 945; - public static final int UC_X86_INS_VMOVLPS = 946; - public static final int UC_X86_INS_VMOVMSKPD = 947; - public static final int UC_X86_INS_VMOVMSKPS = 948; - public static final int UC_X86_INS_VMOVNTDQA = 949; - public static final int UC_X86_INS_VMOVNTDQ = 950; - public static final int UC_X86_INS_VMOVNTPD = 951; - public static final int UC_X86_INS_VMOVNTPS = 952; - public static final int UC_X86_INS_VMOVSD = 953; - public static final int UC_X86_INS_VMOVSHDUP = 954; - public static final int UC_X86_INS_VMOVSLDUP = 955; - public static final int UC_X86_INS_VMOVSS = 956; - public static final int UC_X86_INS_VMOVUPD = 957; - public static final int UC_X86_INS_VMOVUPS = 958; - public static final int UC_X86_INS_VMPSADBW = 959; - public static final int UC_X86_INS_VMPTRLD = 960; - public static final int UC_X86_INS_VMPTRST = 961; - public static final int UC_X86_INS_VMREAD = 962; - public static final int UC_X86_INS_VMRESUME = 963; - public static final int UC_X86_INS_VMRUN = 964; - public static final int UC_X86_INS_VMSAVE = 965; - public static final int UC_X86_INS_VMULPD = 966; - public static final int UC_X86_INS_VMULPS = 967; - public static final int UC_X86_INS_VMULSD = 968; - public static final int UC_X86_INS_VMULSS = 969; - public static final int UC_X86_INS_VMWRITE = 970; - public static final int UC_X86_INS_VMXOFF = 971; - public static final int UC_X86_INS_VMXON = 972; - public static final int UC_X86_INS_VPABSB = 973; - public static final int UC_X86_INS_VPABSD = 974; - public static final int UC_X86_INS_VPABSQ = 975; - public static final int UC_X86_INS_VPABSW = 976; - public static final int UC_X86_INS_VPACKSSDW = 977; - public static final int UC_X86_INS_VPACKSSWB = 978; - public static final int UC_X86_INS_VPACKUSDW = 979; - public static final int UC_X86_INS_VPACKUSWB = 980; - public static final int UC_X86_INS_VPADDB = 981; - public static final int UC_X86_INS_VPADDD = 982; - public static final int UC_X86_INS_VPADDQ = 983; - public static final int UC_X86_INS_VPADDSB = 984; - public static final int UC_X86_INS_VPADDSW = 985; - public static final int UC_X86_INS_VPADDUSB = 986; - public static final int UC_X86_INS_VPADDUSW = 987; - public static final int UC_X86_INS_VPADDW = 988; - public static final int UC_X86_INS_VPALIGNR = 989; - public static final int UC_X86_INS_VPANDD = 990; - public static final int UC_X86_INS_VPANDND = 991; - public static final int UC_X86_INS_VPANDNQ = 992; - public static final int UC_X86_INS_VPANDN = 993; - public static final int UC_X86_INS_VPANDQ = 994; - public static final int UC_X86_INS_VPAND = 995; - public static final int UC_X86_INS_VPAVGB = 996; - public static final int UC_X86_INS_VPAVGW = 997; - public static final int UC_X86_INS_VPBLENDD = 998; - public static final int UC_X86_INS_VPBLENDMB = 999; - public static final int UC_X86_INS_VPBLENDMD = 1000; - public static final int UC_X86_INS_VPBLENDMQ = 1001; - public static final int UC_X86_INS_VPBLENDMW = 1002; - public static final int UC_X86_INS_VPBLENDVB = 1003; - public static final int UC_X86_INS_VPBLENDW = 1004; - public static final int UC_X86_INS_VPBROADCASTB = 1005; - public static final int UC_X86_INS_VPBROADCASTD = 1006; - public static final int UC_X86_INS_VPBROADCASTMB2Q = 1007; - public static final int UC_X86_INS_VPBROADCASTMW2D = 1008; - public static final int UC_X86_INS_VPBROADCASTQ = 1009; - public static final int UC_X86_INS_VPBROADCASTW = 1010; - public static final int UC_X86_INS_VPCLMULQDQ = 1011; - public static final int UC_X86_INS_VPCMOV = 1012; - public static final int UC_X86_INS_VPCMPB = 1013; - public static final int UC_X86_INS_VPCMPD = 1014; - public static final int UC_X86_INS_VPCMPEQB = 1015; - public static final int UC_X86_INS_VPCMPEQD = 1016; - public static final int UC_X86_INS_VPCMPEQQ = 1017; - public static final int UC_X86_INS_VPCMPEQW = 1018; - public static final int UC_X86_INS_VPCMPESTRI = 1019; - public static final int UC_X86_INS_VPCMPESTRM = 1020; - public static final int UC_X86_INS_VPCMPGTB = 1021; - public static final int UC_X86_INS_VPCMPGTD = 1022; - public static final int UC_X86_INS_VPCMPGTQ = 1023; - public static final int UC_X86_INS_VPCMPGTW = 1024; - public static final int UC_X86_INS_VPCMPISTRI = 1025; - public static final int UC_X86_INS_VPCMPISTRM = 1026; - public static final int UC_X86_INS_VPCMPQ = 1027; - public static final int UC_X86_INS_VPCMPUB = 1028; - public static final int UC_X86_INS_VPCMPUD = 1029; - public static final int UC_X86_INS_VPCMPUQ = 1030; - public static final int UC_X86_INS_VPCMPUW = 1031; - public static final int UC_X86_INS_VPCMPW = 1032; - public static final int UC_X86_INS_VPCOMB = 1033; - public static final int UC_X86_INS_VPCOMD = 1034; - public static final int UC_X86_INS_VPCOMPRESSD = 1035; - public static final int UC_X86_INS_VPCOMPRESSQ = 1036; - public static final int UC_X86_INS_VPCOMQ = 1037; - public static final int UC_X86_INS_VPCOMUB = 1038; - public static final int UC_X86_INS_VPCOMUD = 1039; - public static final int UC_X86_INS_VPCOMUQ = 1040; - public static final int UC_X86_INS_VPCOMUW = 1041; - public static final int UC_X86_INS_VPCOMW = 1042; - public static final int UC_X86_INS_VPCONFLICTD = 1043; - public static final int UC_X86_INS_VPCONFLICTQ = 1044; - public static final int UC_X86_INS_VPERM2F128 = 1045; - public static final int UC_X86_INS_VPERM2I128 = 1046; - public static final int UC_X86_INS_VPERMD = 1047; - public static final int UC_X86_INS_VPERMI2D = 1048; - public static final int UC_X86_INS_VPERMI2PD = 1049; - public static final int UC_X86_INS_VPERMI2PS = 1050; - public static final int UC_X86_INS_VPERMI2Q = 1051; - public static final int UC_X86_INS_VPERMIL2PD = 1052; - public static final int UC_X86_INS_VPERMIL2PS = 1053; - public static final int UC_X86_INS_VPERMILPD = 1054; - public static final int UC_X86_INS_VPERMILPS = 1055; - public static final int UC_X86_INS_VPERMPD = 1056; - public static final int UC_X86_INS_VPERMPS = 1057; - public static final int UC_X86_INS_VPERMQ = 1058; - public static final int UC_X86_INS_VPERMT2D = 1059; - public static final int UC_X86_INS_VPERMT2PD = 1060; - public static final int UC_X86_INS_VPERMT2PS = 1061; - public static final int UC_X86_INS_VPERMT2Q = 1062; - public static final int UC_X86_INS_VPEXPANDD = 1063; - public static final int UC_X86_INS_VPEXPANDQ = 1064; - public static final int UC_X86_INS_VPEXTRB = 1065; - public static final int UC_X86_INS_VPEXTRD = 1066; - public static final int UC_X86_INS_VPEXTRQ = 1067; - public static final int UC_X86_INS_VPEXTRW = 1068; - public static final int UC_X86_INS_VPGATHERDD = 1069; - public static final int UC_X86_INS_VPGATHERDQ = 1070; - public static final int UC_X86_INS_VPGATHERQD = 1071; - public static final int UC_X86_INS_VPGATHERQQ = 1072; - public static final int UC_X86_INS_VPHADDBD = 1073; - public static final int UC_X86_INS_VPHADDBQ = 1074; - public static final int UC_X86_INS_VPHADDBW = 1075; - public static final int UC_X86_INS_VPHADDDQ = 1076; - public static final int UC_X86_INS_VPHADDD = 1077; - public static final int UC_X86_INS_VPHADDSW = 1078; - public static final int UC_X86_INS_VPHADDUBD = 1079; - public static final int UC_X86_INS_VPHADDUBQ = 1080; - public static final int UC_X86_INS_VPHADDUBW = 1081; - public static final int UC_X86_INS_VPHADDUDQ = 1082; - public static final int UC_X86_INS_VPHADDUWD = 1083; - public static final int UC_X86_INS_VPHADDUWQ = 1084; - public static final int UC_X86_INS_VPHADDWD = 1085; - public static final int UC_X86_INS_VPHADDWQ = 1086; - public static final int UC_X86_INS_VPHADDW = 1087; - public static final int UC_X86_INS_VPHMINPOSUW = 1088; - public static final int UC_X86_INS_VPHSUBBW = 1089; - public static final int UC_X86_INS_VPHSUBDQ = 1090; - public static final int UC_X86_INS_VPHSUBD = 1091; - public static final int UC_X86_INS_VPHSUBSW = 1092; - public static final int UC_X86_INS_VPHSUBWD = 1093; - public static final int UC_X86_INS_VPHSUBW = 1094; - public static final int UC_X86_INS_VPINSRB = 1095; - public static final int UC_X86_INS_VPINSRD = 1096; - public static final int UC_X86_INS_VPINSRQ = 1097; - public static final int UC_X86_INS_VPINSRW = 1098; - public static final int UC_X86_INS_VPLZCNTD = 1099; - public static final int UC_X86_INS_VPLZCNTQ = 1100; - public static final int UC_X86_INS_VPMACSDD = 1101; - public static final int UC_X86_INS_VPMACSDQH = 1102; - public static final int UC_X86_INS_VPMACSDQL = 1103; - public static final int UC_X86_INS_VPMACSSDD = 1104; - public static final int UC_X86_INS_VPMACSSDQH = 1105; - public static final int UC_X86_INS_VPMACSSDQL = 1106; - public static final int UC_X86_INS_VPMACSSWD = 1107; - public static final int UC_X86_INS_VPMACSSWW = 1108; - public static final int UC_X86_INS_VPMACSWD = 1109; - public static final int UC_X86_INS_VPMACSWW = 1110; - public static final int UC_X86_INS_VPMADCSSWD = 1111; - public static final int UC_X86_INS_VPMADCSWD = 1112; - public static final int UC_X86_INS_VPMADDUBSW = 1113; - public static final int UC_X86_INS_VPMADDWD = 1114; - public static final int UC_X86_INS_VPMASKMOVD = 1115; - public static final int UC_X86_INS_VPMASKMOVQ = 1116; - public static final int UC_X86_INS_VPMAXSB = 1117; - public static final int UC_X86_INS_VPMAXSD = 1118; - public static final int UC_X86_INS_VPMAXSQ = 1119; - public static final int UC_X86_INS_VPMAXSW = 1120; - public static final int UC_X86_INS_VPMAXUB = 1121; - public static final int UC_X86_INS_VPMAXUD = 1122; - public static final int UC_X86_INS_VPMAXUQ = 1123; - public static final int UC_X86_INS_VPMAXUW = 1124; - public static final int UC_X86_INS_VPMINSB = 1125; - public static final int UC_X86_INS_VPMINSD = 1126; - public static final int UC_X86_INS_VPMINSQ = 1127; - public static final int UC_X86_INS_VPMINSW = 1128; - public static final int UC_X86_INS_VPMINUB = 1129; - public static final int UC_X86_INS_VPMINUD = 1130; - public static final int UC_X86_INS_VPMINUQ = 1131; - public static final int UC_X86_INS_VPMINUW = 1132; - public static final int UC_X86_INS_VPMOVDB = 1133; - public static final int UC_X86_INS_VPMOVDW = 1134; - public static final int UC_X86_INS_VPMOVM2B = 1135; - public static final int UC_X86_INS_VPMOVM2D = 1136; - public static final int UC_X86_INS_VPMOVM2Q = 1137; - public static final int UC_X86_INS_VPMOVM2W = 1138; - public static final int UC_X86_INS_VPMOVMSKB = 1139; - public static final int UC_X86_INS_VPMOVQB = 1140; - public static final int UC_X86_INS_VPMOVQD = 1141; - public static final int UC_X86_INS_VPMOVQW = 1142; - public static final int UC_X86_INS_VPMOVSDB = 1143; - public static final int UC_X86_INS_VPMOVSDW = 1144; - public static final int UC_X86_INS_VPMOVSQB = 1145; - public static final int UC_X86_INS_VPMOVSQD = 1146; - public static final int UC_X86_INS_VPMOVSQW = 1147; - public static final int UC_X86_INS_VPMOVSXBD = 1148; - public static final int UC_X86_INS_VPMOVSXBQ = 1149; - public static final int UC_X86_INS_VPMOVSXBW = 1150; - public static final int UC_X86_INS_VPMOVSXDQ = 1151; - public static final int UC_X86_INS_VPMOVSXWD = 1152; - public static final int UC_X86_INS_VPMOVSXWQ = 1153; - public static final int UC_X86_INS_VPMOVUSDB = 1154; - public static final int UC_X86_INS_VPMOVUSDW = 1155; - public static final int UC_X86_INS_VPMOVUSQB = 1156; - public static final int UC_X86_INS_VPMOVUSQD = 1157; - public static final int UC_X86_INS_VPMOVUSQW = 1158; - public static final int UC_X86_INS_VPMOVZXBD = 1159; - public static final int UC_X86_INS_VPMOVZXBQ = 1160; - public static final int UC_X86_INS_VPMOVZXBW = 1161; - public static final int UC_X86_INS_VPMOVZXDQ = 1162; - public static final int UC_X86_INS_VPMOVZXWD = 1163; - public static final int UC_X86_INS_VPMOVZXWQ = 1164; - public static final int UC_X86_INS_VPMULDQ = 1165; - public static final int UC_X86_INS_VPMULHRSW = 1166; - public static final int UC_X86_INS_VPMULHUW = 1167; - public static final int UC_X86_INS_VPMULHW = 1168; - public static final int UC_X86_INS_VPMULLD = 1169; - public static final int UC_X86_INS_VPMULLQ = 1170; - public static final int UC_X86_INS_VPMULLW = 1171; - public static final int UC_X86_INS_VPMULUDQ = 1172; - public static final int UC_X86_INS_VPORD = 1173; - public static final int UC_X86_INS_VPORQ = 1174; - public static final int UC_X86_INS_VPOR = 1175; - public static final int UC_X86_INS_VPPERM = 1176; - public static final int UC_X86_INS_VPROTB = 1177; - public static final int UC_X86_INS_VPROTD = 1178; - public static final int UC_X86_INS_VPROTQ = 1179; - public static final int UC_X86_INS_VPROTW = 1180; - public static final int UC_X86_INS_VPSADBW = 1181; - public static final int UC_X86_INS_VPSCATTERDD = 1182; - public static final int UC_X86_INS_VPSCATTERDQ = 1183; - public static final int UC_X86_INS_VPSCATTERQD = 1184; - public static final int UC_X86_INS_VPSCATTERQQ = 1185; - public static final int UC_X86_INS_VPSHAB = 1186; - public static final int UC_X86_INS_VPSHAD = 1187; - public static final int UC_X86_INS_VPSHAQ = 1188; - public static final int UC_X86_INS_VPSHAW = 1189; - public static final int UC_X86_INS_VPSHLB = 1190; - public static final int UC_X86_INS_VPSHLD = 1191; - public static final int UC_X86_INS_VPSHLQ = 1192; - public static final int UC_X86_INS_VPSHLW = 1193; - public static final int UC_X86_INS_VPSHUFB = 1194; - public static final int UC_X86_INS_VPSHUFD = 1195; - public static final int UC_X86_INS_VPSHUFHW = 1196; - public static final int UC_X86_INS_VPSHUFLW = 1197; - public static final int UC_X86_INS_VPSIGNB = 1198; - public static final int UC_X86_INS_VPSIGND = 1199; - public static final int UC_X86_INS_VPSIGNW = 1200; - public static final int UC_X86_INS_VPSLLDQ = 1201; - public static final int UC_X86_INS_VPSLLD = 1202; - public static final int UC_X86_INS_VPSLLQ = 1203; - public static final int UC_X86_INS_VPSLLVD = 1204; - public static final int UC_X86_INS_VPSLLVQ = 1205; - public static final int UC_X86_INS_VPSLLW = 1206; - public static final int UC_X86_INS_VPSRAD = 1207; - public static final int UC_X86_INS_VPSRAQ = 1208; - public static final int UC_X86_INS_VPSRAVD = 1209; - public static final int UC_X86_INS_VPSRAVQ = 1210; - public static final int UC_X86_INS_VPSRAW = 1211; - public static final int UC_X86_INS_VPSRLDQ = 1212; - public static final int UC_X86_INS_VPSRLD = 1213; - public static final int UC_X86_INS_VPSRLQ = 1214; - public static final int UC_X86_INS_VPSRLVD = 1215; - public static final int UC_X86_INS_VPSRLVQ = 1216; - public static final int UC_X86_INS_VPSRLW = 1217; - public static final int UC_X86_INS_VPSUBB = 1218; - public static final int UC_X86_INS_VPSUBD = 1219; - public static final int UC_X86_INS_VPSUBQ = 1220; - public static final int UC_X86_INS_VPSUBSB = 1221; - public static final int UC_X86_INS_VPSUBSW = 1222; - public static final int UC_X86_INS_VPSUBUSB = 1223; - public static final int UC_X86_INS_VPSUBUSW = 1224; - public static final int UC_X86_INS_VPSUBW = 1225; - public static final int UC_X86_INS_VPTESTMD = 1226; - public static final int UC_X86_INS_VPTESTMQ = 1227; - public static final int UC_X86_INS_VPTESTNMD = 1228; - public static final int UC_X86_INS_VPTESTNMQ = 1229; - public static final int UC_X86_INS_VPTEST = 1230; - public static final int UC_X86_INS_VPUNPCKHBW = 1231; - public static final int UC_X86_INS_VPUNPCKHDQ = 1232; - public static final int UC_X86_INS_VPUNPCKHQDQ = 1233; - public static final int UC_X86_INS_VPUNPCKHWD = 1234; - public static final int UC_X86_INS_VPUNPCKLBW = 1235; - public static final int UC_X86_INS_VPUNPCKLDQ = 1236; - public static final int UC_X86_INS_VPUNPCKLQDQ = 1237; - public static final int UC_X86_INS_VPUNPCKLWD = 1238; - public static final int UC_X86_INS_VPXORD = 1239; - public static final int UC_X86_INS_VPXORQ = 1240; - public static final int UC_X86_INS_VPXOR = 1241; - public static final int UC_X86_INS_VRCP14PD = 1242; - public static final int UC_X86_INS_VRCP14PS = 1243; - public static final int UC_X86_INS_VRCP14SD = 1244; - public static final int UC_X86_INS_VRCP14SS = 1245; - public static final int UC_X86_INS_VRCP28PD = 1246; - public static final int UC_X86_INS_VRCP28PS = 1247; - public static final int UC_X86_INS_VRCP28SD = 1248; - public static final int UC_X86_INS_VRCP28SS = 1249; - public static final int UC_X86_INS_VRCPPS = 1250; - public static final int UC_X86_INS_VRCPSS = 1251; - public static final int UC_X86_INS_VRNDSCALEPD = 1252; - public static final int UC_X86_INS_VRNDSCALEPS = 1253; - public static final int UC_X86_INS_VRNDSCALESD = 1254; - public static final int UC_X86_INS_VRNDSCALESS = 1255; - public static final int UC_X86_INS_VROUNDPD = 1256; - public static final int UC_X86_INS_VROUNDPS = 1257; - public static final int UC_X86_INS_VROUNDSD = 1258; - public static final int UC_X86_INS_VROUNDSS = 1259; - public static final int UC_X86_INS_VRSQRT14PD = 1260; - public static final int UC_X86_INS_VRSQRT14PS = 1261; - public static final int UC_X86_INS_VRSQRT14SD = 1262; - public static final int UC_X86_INS_VRSQRT14SS = 1263; - public static final int UC_X86_INS_VRSQRT28PD = 1264; - public static final int UC_X86_INS_VRSQRT28PS = 1265; - public static final int UC_X86_INS_VRSQRT28SD = 1266; - public static final int UC_X86_INS_VRSQRT28SS = 1267; - public static final int UC_X86_INS_VRSQRTPS = 1268; - public static final int UC_X86_INS_VRSQRTSS = 1269; - public static final int UC_X86_INS_VSCATTERDPD = 1270; - public static final int UC_X86_INS_VSCATTERDPS = 1271; - public static final int UC_X86_INS_VSCATTERPF0DPD = 1272; - public static final int UC_X86_INS_VSCATTERPF0DPS = 1273; - public static final int UC_X86_INS_VSCATTERPF0QPD = 1274; - public static final int UC_X86_INS_VSCATTERPF0QPS = 1275; - public static final int UC_X86_INS_VSCATTERPF1DPD = 1276; - public static final int UC_X86_INS_VSCATTERPF1DPS = 1277; - public static final int UC_X86_INS_VSCATTERPF1QPD = 1278; - public static final int UC_X86_INS_VSCATTERPF1QPS = 1279; - public static final int UC_X86_INS_VSCATTERQPD = 1280; - public static final int UC_X86_INS_VSCATTERQPS = 1281; - public static final int UC_X86_INS_VSHUFPD = 1282; - public static final int UC_X86_INS_VSHUFPS = 1283; - public static final int UC_X86_INS_VSQRTPD = 1284; - public static final int UC_X86_INS_VSQRTPS = 1285; - public static final int UC_X86_INS_VSQRTSD = 1286; - public static final int UC_X86_INS_VSQRTSS = 1287; - public static final int UC_X86_INS_VSTMXCSR = 1288; - public static final int UC_X86_INS_VSUBPD = 1289; - public static final int UC_X86_INS_VSUBPS = 1290; - public static final int UC_X86_INS_VSUBSD = 1291; - public static final int UC_X86_INS_VSUBSS = 1292; - public static final int UC_X86_INS_VTESTPD = 1293; - public static final int UC_X86_INS_VTESTPS = 1294; - public static final int UC_X86_INS_VUNPCKHPD = 1295; - public static final int UC_X86_INS_VUNPCKHPS = 1296; - public static final int UC_X86_INS_VUNPCKLPD = 1297; - public static final int UC_X86_INS_VUNPCKLPS = 1298; - public static final int UC_X86_INS_VZEROALL = 1299; - public static final int UC_X86_INS_VZEROUPPER = 1300; - public static final int UC_X86_INS_WAIT = 1301; - public static final int UC_X86_INS_WBINVD = 1302; - public static final int UC_X86_INS_WRFSBASE = 1303; - public static final int UC_X86_INS_WRGSBASE = 1304; - public static final int UC_X86_INS_WRMSR = 1305; - public static final int UC_X86_INS_XABORT = 1306; - public static final int UC_X86_INS_XACQUIRE = 1307; - public static final int UC_X86_INS_XBEGIN = 1308; - public static final int UC_X86_INS_XCHG = 1309; - public static final int UC_X86_INS_XCRYPTCBC = 1310; - public static final int UC_X86_INS_XCRYPTCFB = 1311; - public static final int UC_X86_INS_XCRYPTCTR = 1312; - public static final int UC_X86_INS_XCRYPTECB = 1313; - public static final int UC_X86_INS_XCRYPTOFB = 1314; - public static final int UC_X86_INS_XEND = 1315; - public static final int UC_X86_INS_XGETBV = 1316; - public static final int UC_X86_INS_XLATB = 1317; - public static final int UC_X86_INS_XRELEASE = 1318; - public static final int UC_X86_INS_XRSTOR = 1319; - public static final int UC_X86_INS_XRSTOR64 = 1320; - public static final int UC_X86_INS_XRSTORS = 1321; - public static final int UC_X86_INS_XRSTORS64 = 1322; - public static final int UC_X86_INS_XSAVE = 1323; - public static final int UC_X86_INS_XSAVE64 = 1324; - public static final int UC_X86_INS_XSAVEC = 1325; - public static final int UC_X86_INS_XSAVEC64 = 1326; - public static final int UC_X86_INS_XSAVEOPT = 1327; - public static final int UC_X86_INS_XSAVEOPT64 = 1328; - public static final int UC_X86_INS_XSAVES = 1329; - public static final int UC_X86_INS_XSAVES64 = 1330; - public static final int UC_X86_INS_XSETBV = 1331; - public static final int UC_X86_INS_XSHA1 = 1332; - public static final int UC_X86_INS_XSHA256 = 1333; - public static final int UC_X86_INS_XSTORE = 1334; - public static final int UC_X86_INS_XTEST = 1335; - public static final int UC_X86_INS_FDISI8087_NOP = 1336; - public static final int UC_X86_INS_FENI8087_NOP = 1337; - public static final int UC_X86_INS_ENDING = 1338; -} From 49f9f810799e9aa8e0401a79c14aaeed5da30232 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 19:43:45 -0700 Subject: [PATCH 2/9] First pass of const_generator still requires manual tweak of UC_MODE_BIG_ENDIAN --- bindings/java/unicorn/Arm64Const.java | 39 +- bindings/java/unicorn/ArmConst.java | 43 +- bindings/java/unicorn/M68kConst.java | 27 +- bindings/java/unicorn/MipsConst.java | 121 +- bindings/java/unicorn/SparcConst.java | 31 +- bindings/java/unicorn/UnicornConst.java | 0 bindings/java/unicorn/UnicornHooks.java | 38 - bindings/java/unicorn/X86Const.java | 1369 ++++++++++++++++++++++- 8 files changed, 1450 insertions(+), 218 deletions(-) mode change 100755 => 100644 bindings/java/unicorn/UnicornConst.java delete mode 100644 bindings/java/unicorn/UnicornHooks.java diff --git a/bindings/java/unicorn/Arm64Const.java b/bindings/java/unicorn/Arm64Const.java index 4d384637..6104a277 100644 --- a/bindings/java/unicorn/Arm64Const.java +++ b/bindings/java/unicorn/Arm64Const.java @@ -1,27 +1,11 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface Arm64Regs { +public interface Arm64Const { + +// ARM64 registers + public static final int UC_ARM64_REG_INVALID = 0; public static final int UC_ARM64_REG_X29 = 1; public static final int UC_ARM64_REG_X30 = 2; @@ -282,10 +266,15 @@ public interface Arm64Regs { public static final int UC_ARM64_REG_V29 = 257; public static final int UC_ARM64_REG_V30 = 258; public static final int UC_ARM64_REG_V31 = 259; + +// pseudo registers public static final int UC_ARM64_REG_PC = 260; public static final int UC_ARM64_REG_ENDING = 261; - public static final int UC_ARM64_REG_IP1 = UC_ARM64_REG_X16; - public static final int UC_ARM64_REG_IP0 = UC_ARM64_REG_X17; - public static final int UC_ARM64_REG_FP = UC_ARM64_REG_X29; - public static final int UC_ARM64_REG_LR = UC_ARM64_REG_X30; + +// alias registers + public static final int UC_ARM64_REG_IP1 = 215; + public static final int UC_ARM64_REG_IP0 = 216; + public static final int UC_ARM64_REG_FP = 1; + public static final int UC_ARM64_REG_LR = 2; + } diff --git a/bindings/java/unicorn/ArmConst.java b/bindings/java/unicorn/ArmConst.java index 754547ed..b2c4644a 100644 --- a/bindings/java/unicorn/ArmConst.java +++ b/bindings/java/unicorn/ArmConst.java @@ -1,27 +1,11 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface ArmRegs { +public interface ArmConst { + +// ARM registers + public static final int UC_ARM_REG_INVALID = 0; public static final int UC_ARM_REG_APSR = 1; public static final int UC_ARM_REG_APSR_NZCV = 2; @@ -134,11 +118,14 @@ public interface ArmRegs { public static final int UC_ARM_REG_S30 = 109; public static final int UC_ARM_REG_S31 = 110; public static final int UC_ARM_REG_ENDING = 111; - public static final int UC_ARM_REG_R13 = UC_ARM_REG_SP; - public static final int UC_ARM_REG_R14 = UC_ARM_REG_LR; - public static final int UC_ARM_REG_R15 = UC_ARM_REG_PC; - public static final int UC_ARM_REG_SB = UC_ARM_REG_R9; - public static final int UC_ARM_REG_SL = UC_ARM_REG_R10; - public static final int UC_ARM_REG_FP = UC_ARM_REG_R11; - public static final int UC_ARM_REG_IP = UC_ARM_REG_R12; + +// alias registers + public static final int UC_ARM_REG_R13 = 12; + public static final int UC_ARM_REG_R14 = 10; + public static final int UC_ARM_REG_R15 = 11; + public static final int UC_ARM_REG_SB = 75; + public static final int UC_ARM_REG_SL = 76; + public static final int UC_ARM_REG_FP = 77; + public static final int UC_ARM_REG_IP = 78; + } diff --git a/bindings/java/unicorn/M68kConst.java b/bindings/java/unicorn/M68kConst.java index b36d5400..4f0574d8 100644 --- a/bindings/java/unicorn/M68kConst.java +++ b/bindings/java/unicorn/M68kConst.java @@ -1,27 +1,11 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface M68kRegs { +public interface M68kConst { + +// M68K registers + public static final int UC_M68K_REG_INVALID = 0; public static final int UC_M68K_REG_A0 = 1; public static final int UC_M68K_REG_A1 = 2; @@ -42,4 +26,5 @@ public interface M68kRegs { public static final int UC_M68K_REG_SR = 17; public static final int UC_M68K_REG_PC = 18; public static final int UC_M68K_REG_ENDING = 19; + } diff --git a/bindings/java/unicorn/MipsConst.java b/bindings/java/unicorn/MipsConst.java index f87274d1..9b55cb4e 100644 --- a/bindings/java/unicorn/MipsConst.java +++ b/bindings/java/unicorn/MipsConst.java @@ -1,28 +1,14 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface MipsRegs { +public interface MipsConst { + +// MIPS registers + public static final int UC_MIPS_REG_INVALID = 0; + +// General purpose registers public static final int UC_MIPS_REG_PC = 1; public static final int UC_MIPS_REG_0 = 2; public static final int UC_MIPS_REG_1 = 3; @@ -56,6 +42,8 @@ public interface MipsRegs { public static final int UC_MIPS_REG_29 = 31; public static final int UC_MIPS_REG_30 = 32; public static final int UC_MIPS_REG_31 = 33; + +// DSP registers public static final int UC_MIPS_REG_DSPCCOND = 34; public static final int UC_MIPS_REG_DSPCARRY = 35; public static final int UC_MIPS_REG_DSPEFI = 36; @@ -67,10 +55,14 @@ public interface MipsRegs { public static final int UC_MIPS_REG_DSPOUTFLAG23 = 42; public static final int UC_MIPS_REG_DSPPOS = 43; public static final int UC_MIPS_REG_DSPSCOUNT = 44; + +// ACC registers public static final int UC_MIPS_REG_AC0 = 45; public static final int UC_MIPS_REG_AC1 = 46; public static final int UC_MIPS_REG_AC2 = 47; public static final int UC_MIPS_REG_AC3 = 48; + +// COP registers public static final int UC_MIPS_REG_CC0 = 49; public static final int UC_MIPS_REG_CC1 = 50; public static final int UC_MIPS_REG_CC2 = 51; @@ -79,6 +71,8 @@ public interface MipsRegs { public static final int UC_MIPS_REG_CC5 = 54; public static final int UC_MIPS_REG_CC6 = 55; public static final int UC_MIPS_REG_CC7 = 56; + +// FPU registers public static final int UC_MIPS_REG_F0 = 57; public static final int UC_MIPS_REG_F1 = 58; public static final int UC_MIPS_REG_F2 = 59; @@ -119,6 +113,8 @@ public interface MipsRegs { public static final int UC_MIPS_REG_FCC5 = 94; public static final int UC_MIPS_REG_FCC6 = 95; public static final int UC_MIPS_REG_FCC7 = 96; + +// AFPR128 public static final int UC_MIPS_REG_W0 = 97; public static final int UC_MIPS_REG_W1 = 98; public static final int UC_MIPS_REG_W2 = 99; @@ -160,45 +156,46 @@ public interface MipsRegs { public static final int UC_MIPS_REG_MPL1 = 135; public static final int UC_MIPS_REG_MPL2 = 136; public static final int UC_MIPS_REG_ENDING = 137; - public static final int UC_MIPS_REG_ZERO = UC_MIPS_REG_0; - public static final int UC_MIPS_REG_AT = UC_MIPS_REG_1; - public static final int UC_MIPS_REG_V0 = UC_MIPS_REG_2; - public static final int UC_MIPS_REG_V1 = UC_MIPS_REG_3; - public static final int UC_MIPS_REG_A0 = UC_MIPS_REG_4; - public static final int UC_MIPS_REG_A1 = UC_MIPS_REG_5; - public static final int UC_MIPS_REG_A2 = UC_MIPS_REG_6; - public static final int UC_MIPS_REG_A3 = UC_MIPS_REG_7; - public static final int UC_MIPS_REG_T0 = UC_MIPS_REG_8; - public static final int UC_MIPS_REG_T1 = UC_MIPS_REG_9; - public static final int UC_MIPS_REG_T2 = UC_MIPS_REG_10; - public static final int UC_MIPS_REG_T3 = UC_MIPS_REG_11; - public static final int UC_MIPS_REG_T4 = UC_MIPS_REG_12; - public static final int UC_MIPS_REG_T5 = UC_MIPS_REG_13; - public static final int UC_MIPS_REG_T6 = UC_MIPS_REG_14; - public static final int UC_MIPS_REG_T7 = UC_MIPS_REG_15; - public static final int UC_MIPS_REG_S0 = UC_MIPS_REG_16; - public static final int UC_MIPS_REG_S1 = UC_MIPS_REG_17; - public static final int UC_MIPS_REG_S2 = UC_MIPS_REG_18; - public static final int UC_MIPS_REG_S3 = UC_MIPS_REG_19; - public static final int UC_MIPS_REG_S4 = UC_MIPS_REG_20; - public static final int UC_MIPS_REG_S5 = UC_MIPS_REG_21; - public static final int UC_MIPS_REG_S6 = UC_MIPS_REG_22; - public static final int UC_MIPS_REG_S7 = UC_MIPS_REG_23; - public static final int UC_MIPS_REG_T8 = UC_MIPS_REG_24; - public static final int UC_MIPS_REG_T9 = UC_MIPS_REG_25; - public static final int UC_MIPS_REG_K0 = UC_MIPS_REG_26; - public static final int UC_MIPS_REG_K1 = UC_MIPS_REG_27; - public static final int UC_MIPS_REG_GP = UC_MIPS_REG_28; - public static final int UC_MIPS_REG_SP = UC_MIPS_REG_29; - public static final int UC_MIPS_REG_FP = UC_MIPS_REG_30; - public static final int UC_MIPS_REG_S8 = UC_MIPS_REG_30; - public static final int UC_MIPS_REG_RA = UC_MIPS_REG_31; - public static final int UC_MIPS_REG_HI0 = UC_MIPS_REG_AC0; - public static final int UC_MIPS_REG_HI1 = UC_MIPS_REG_AC1; - public static final int UC_MIPS_REG_HI2 = UC_MIPS_REG_AC2; - public static final int UC_MIPS_REG_HI3 = UC_MIPS_REG_AC3; - public static final int UC_MIPS_REG_LO0 = UC_MIPS_REG_HI0; - public static final int UC_MIPS_REG_LO1 = UC_MIPS_REG_HI1; - public static final int UC_MIPS_REG_LO2 = UC_MIPS_REG_HI2; - public static final int UC_MIPS_REG_LO3 = UC_MIPS_REG_HI3; + public static final int UC_MIPS_REG_ZERO = 2; + public static final int UC_MIPS_REG_AT = 3; + public static final int UC_MIPS_REG_V0 = 4; + public static final int UC_MIPS_REG_V1 = 5; + public static final int UC_MIPS_REG_A0 = 6; + public static final int UC_MIPS_REG_A1 = 7; + public static final int UC_MIPS_REG_A2 = 8; + public static final int UC_MIPS_REG_A3 = 9; + public static final int UC_MIPS_REG_T0 = 10; + public static final int UC_MIPS_REG_T1 = 11; + public static final int UC_MIPS_REG_T2 = 12; + public static final int UC_MIPS_REG_T3 = 13; + public static final int UC_MIPS_REG_T4 = 14; + public static final int UC_MIPS_REG_T5 = 15; + public static final int UC_MIPS_REG_T6 = 16; + public static final int UC_MIPS_REG_T7 = 17; + public static final int UC_MIPS_REG_S0 = 18; + public static final int UC_MIPS_REG_S1 = 19; + public static final int UC_MIPS_REG_S2 = 20; + public static final int UC_MIPS_REG_S3 = 21; + public static final int UC_MIPS_REG_S4 = 22; + public static final int UC_MIPS_REG_S5 = 23; + public static final int UC_MIPS_REG_S6 = 24; + public static final int UC_MIPS_REG_S7 = 25; + public static final int UC_MIPS_REG_T8 = 26; + public static final int UC_MIPS_REG_T9 = 27; + public static final int UC_MIPS_REG_K0 = 28; + public static final int UC_MIPS_REG_K1 = 29; + public static final int UC_MIPS_REG_GP = 30; + public static final int UC_MIPS_REG_SP = 31; + public static final int UC_MIPS_REG_FP = 32; + public static final int UC_MIPS_REG_S8 = 32; + public static final int UC_MIPS_REG_RA = 33; + public static final int UC_MIPS_REG_HI0 = 45; + public static final int UC_MIPS_REG_HI1 = 46; + public static final int UC_MIPS_REG_HI2 = 47; + public static final int UC_MIPS_REG_HI3 = 48; + public static final int UC_MIPS_REG_LO0 = 45; + public static final int UC_MIPS_REG_LO1 = 46; + public static final int UC_MIPS_REG_LO2 = 47; + public static final int UC_MIPS_REG_LO3 = 48; + } diff --git a/bindings/java/unicorn/SparcConst.java b/bindings/java/unicorn/SparcConst.java index 619e00f2..bd00c736 100644 --- a/bindings/java/unicorn/SparcConst.java +++ b/bindings/java/unicorn/SparcConst.java @@ -1,27 +1,11 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface SparcRegs { +public interface SparcConst { + +// SPARC registers + public static final int UC_SPARC_REG_INVALID = 0; public static final int UC_SPARC_REG_F0 = 1; public static final int UC_SPARC_REG_F1 = 2; @@ -112,6 +96,7 @@ public interface SparcRegs { public static final int UC_SPARC_REG_XCC = 87; public static final int UC_SPARC_REG_PC = 88; public static final int UC_SPARC_REG_ENDING = 89; - public static final int UC_SPARC_REG_O6 = UC_SPARC_REG_SP; - public static final int UC_SPARC_REG_I6 = UC_SPARC_REG_FP; + public static final int UC_SPARC_REG_O6 = 85; + public static final int UC_SPARC_REG_I6 = 53; + } diff --git a/bindings/java/unicorn/UnicornConst.java b/bindings/java/unicorn/UnicornConst.java old mode 100755 new mode 100644 diff --git a/bindings/java/unicorn/UnicornHooks.java b/bindings/java/unicorn/UnicornHooks.java deleted file mode 100644 index 703753ba..00000000 --- a/bindings/java/unicorn/UnicornHooks.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ - -package unicorn; - -public interface UnicornHooks { - - public static final int UC_MEM_READ = 16; // Memory is read from - public static final int UC_MEM_WRITE = 17; // Memory is written to - public static final int UC_MEM_READ_WRITE = 18; // Memory is accessed (either READ or WRITE) - - public static final int UC_HOOK_INTR = 32; // Hook all interrupt events - public static final int UC_HOOK_INSN = 33; // Hook a particular instruction - public static final int UC_HOOK_CODE = 34; // Hook a range of code - public static final int UC_HOOK_BLOCK = 35; // Hook basic blocks - public static final int UC_HOOK_MEM_INVALID = 36; // Hook for all invalid memory access events - public static final int UC_HOOK_MEM_READ = 37; // Hook all memory read events. - public static final int UC_HOOK_MEM_WRITE = 38; // Hook all memory write events. - public static final int UC_HOOK_MEM_READ_WRITE = 39; // Hook all memory accesses (either READ or WRITE). -} diff --git a/bindings/java/unicorn/X86Const.java b/bindings/java/unicorn/X86Const.java index 489b7562..1a558a63 100644 --- a/bindings/java/unicorn/X86Const.java +++ b/bindings/java/unicorn/X86Const.java @@ -1,27 +1,11 @@ -/* - -Java bindings for the Unicorn Emulator Engine - -Copyright(c) 2015 Chris Eagle - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -version 2 as published by the Free Software Foundation. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -*/ +// For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT package unicorn; -public interface X86Regs { +public interface X86Const { + +// X86 registers + public static final int UC_X86_REG_INVALID = 0; public static final int UC_X86_REG_AH = 1; public static final int UC_X86_REG_AL = 2; @@ -265,4 +249,1347 @@ public interface X86Regs { public static final int UC_X86_REG_R14W = 240; public static final int UC_X86_REG_R15W = 241; public static final int UC_X86_REG_ENDING = 242; + +// X86 instructions + + public static final int UC_X86_INS_INVALID = 0; + public static final int UC_X86_INS_AAA = 1; + public static final int UC_X86_INS_AAD = 2; + public static final int UC_X86_INS_AAM = 3; + public static final int UC_X86_INS_AAS = 4; + public static final int UC_X86_INS_FABS = 5; + public static final int UC_X86_INS_ADC = 6; + public static final int UC_X86_INS_ADCX = 7; + public static final int UC_X86_INS_ADD = 8; + public static final int UC_X86_INS_ADDPD = 9; + public static final int UC_X86_INS_ADDPS = 10; + public static final int UC_X86_INS_ADDSD = 11; + public static final int UC_X86_INS_ADDSS = 12; + public static final int UC_X86_INS_ADDSUBPD = 13; + public static final int UC_X86_INS_ADDSUBPS = 14; + public static final int UC_X86_INS_FADD = 15; + public static final int UC_X86_INS_FIADD = 16; + public static final int UC_X86_INS_FADDP = 17; + public static final int UC_X86_INS_ADOX = 18; + public static final int UC_X86_INS_AESDECLAST = 19; + public static final int UC_X86_INS_AESDEC = 20; + public static final int UC_X86_INS_AESENCLAST = 21; + public static final int UC_X86_INS_AESENC = 22; + public static final int UC_X86_INS_AESIMC = 23; + public static final int UC_X86_INS_AESKEYGENASSIST = 24; + public static final int UC_X86_INS_AND = 25; + public static final int UC_X86_INS_ANDN = 26; + public static final int UC_X86_INS_ANDNPD = 27; + public static final int UC_X86_INS_ANDNPS = 28; + public static final int UC_X86_INS_ANDPD = 29; + public static final int UC_X86_INS_ANDPS = 30; + public static final int UC_X86_INS_ARPL = 31; + public static final int UC_X86_INS_BEXTR = 32; + public static final int UC_X86_INS_BLCFILL = 33; + public static final int UC_X86_INS_BLCI = 34; + public static final int UC_X86_INS_BLCIC = 35; + public static final int UC_X86_INS_BLCMSK = 36; + public static final int UC_X86_INS_BLCS = 37; + public static final int UC_X86_INS_BLENDPD = 38; + public static final int UC_X86_INS_BLENDPS = 39; + public static final int UC_X86_INS_BLENDVPD = 40; + public static final int UC_X86_INS_BLENDVPS = 41; + public static final int UC_X86_INS_BLSFILL = 42; + public static final int UC_X86_INS_BLSI = 43; + public static final int UC_X86_INS_BLSIC = 44; + public static final int UC_X86_INS_BLSMSK = 45; + public static final int UC_X86_INS_BLSR = 46; + public static final int UC_X86_INS_BOUND = 47; + public static final int UC_X86_INS_BSF = 48; + public static final int UC_X86_INS_BSR = 49; + public static final int UC_X86_INS_BSWAP = 50; + public static final int UC_X86_INS_BT = 51; + public static final int UC_X86_INS_BTC = 52; + public static final int UC_X86_INS_BTR = 53; + public static final int UC_X86_INS_BTS = 54; + public static final int UC_X86_INS_BZHI = 55; + public static final int UC_X86_INS_CALL = 56; + public static final int UC_X86_INS_CBW = 57; + public static final int UC_X86_INS_CDQ = 58; + public static final int UC_X86_INS_CDQE = 59; + public static final int UC_X86_INS_FCHS = 60; + public static final int UC_X86_INS_CLAC = 61; + public static final int UC_X86_INS_CLC = 62; + public static final int UC_X86_INS_CLD = 63; + public static final int UC_X86_INS_CLFLUSH = 64; + public static final int UC_X86_INS_CLFLUSHOPT = 65; + public static final int UC_X86_INS_CLGI = 66; + public static final int UC_X86_INS_CLI = 67; + public static final int UC_X86_INS_CLTS = 68; + public static final int UC_X86_INS_CLWB = 69; + public static final int UC_X86_INS_CMC = 70; + public static final int UC_X86_INS_CMOVA = 71; + public static final int UC_X86_INS_CMOVAE = 72; + public static final int UC_X86_INS_CMOVB = 73; + public static final int UC_X86_INS_CMOVBE = 74; + public static final int UC_X86_INS_FCMOVBE = 75; + public static final int UC_X86_INS_FCMOVB = 76; + public static final int UC_X86_INS_CMOVE = 77; + public static final int UC_X86_INS_FCMOVE = 78; + public static final int UC_X86_INS_CMOVG = 79; + public static final int UC_X86_INS_CMOVGE = 80; + public static final int UC_X86_INS_CMOVL = 81; + public static final int UC_X86_INS_CMOVLE = 82; + public static final int UC_X86_INS_FCMOVNBE = 83; + public static final int UC_X86_INS_FCMOVNB = 84; + public static final int UC_X86_INS_CMOVNE = 85; + public static final int UC_X86_INS_FCMOVNE = 86; + public static final int UC_X86_INS_CMOVNO = 87; + public static final int UC_X86_INS_CMOVNP = 88; + public static final int UC_X86_INS_FCMOVNU = 89; + public static final int UC_X86_INS_CMOVNS = 90; + public static final int UC_X86_INS_CMOVO = 91; + public static final int UC_X86_INS_CMOVP = 92; + public static final int UC_X86_INS_FCMOVU = 93; + public static final int UC_X86_INS_CMOVS = 94; + public static final int UC_X86_INS_CMP = 95; + public static final int UC_X86_INS_CMPPD = 96; + public static final int UC_X86_INS_CMPPS = 97; + public static final int UC_X86_INS_CMPSB = 98; + public static final int UC_X86_INS_CMPSD = 99; + public static final int UC_X86_INS_CMPSQ = 100; + public static final int UC_X86_INS_CMPSS = 101; + public static final int UC_X86_INS_CMPSW = 102; + public static final int UC_X86_INS_CMPXCHG16B = 103; + public static final int UC_X86_INS_CMPXCHG = 104; + public static final int UC_X86_INS_CMPXCHG8B = 105; + public static final int UC_X86_INS_COMISD = 106; + public static final int UC_X86_INS_COMISS = 107; + public static final int UC_X86_INS_FCOMP = 108; + public static final int UC_X86_INS_FCOMPI = 109; + public static final int UC_X86_INS_FCOMI = 110; + public static final int UC_X86_INS_FCOM = 111; + public static final int UC_X86_INS_FCOS = 112; + public static final int UC_X86_INS_CPUID = 113; + public static final int UC_X86_INS_CQO = 114; + public static final int UC_X86_INS_CRC32 = 115; + public static final int UC_X86_INS_CVTDQ2PD = 116; + public static final int UC_X86_INS_CVTDQ2PS = 117; + public static final int UC_X86_INS_CVTPD2DQ = 118; + public static final int UC_X86_INS_CVTPD2PS = 119; + public static final int UC_X86_INS_CVTPS2DQ = 120; + public static final int UC_X86_INS_CVTPS2PD = 121; + public static final int UC_X86_INS_CVTSD2SI = 122; + public static final int UC_X86_INS_CVTSD2SS = 123; + public static final int UC_X86_INS_CVTSI2SD = 124; + public static final int UC_X86_INS_CVTSI2SS = 125; + public static final int UC_X86_INS_CVTSS2SD = 126; + public static final int UC_X86_INS_CVTSS2SI = 127; + public static final int UC_X86_INS_CVTTPD2DQ = 128; + public static final int UC_X86_INS_CVTTPS2DQ = 129; + public static final int UC_X86_INS_CVTTSD2SI = 130; + public static final int UC_X86_INS_CVTTSS2SI = 131; + public static final int UC_X86_INS_CWD = 132; + public static final int UC_X86_INS_CWDE = 133; + public static final int UC_X86_INS_DAA = 134; + public static final int UC_X86_INS_DAS = 135; + public static final int UC_X86_INS_DATA16 = 136; + public static final int UC_X86_INS_DEC = 137; + public static final int UC_X86_INS_DIV = 138; + public static final int UC_X86_INS_DIVPD = 139; + public static final int UC_X86_INS_DIVPS = 140; + public static final int UC_X86_INS_FDIVR = 141; + public static final int UC_X86_INS_FIDIVR = 142; + public static final int UC_X86_INS_FDIVRP = 143; + public static final int UC_X86_INS_DIVSD = 144; + public static final int UC_X86_INS_DIVSS = 145; + public static final int UC_X86_INS_FDIV = 146; + public static final int UC_X86_INS_FIDIV = 147; + public static final int UC_X86_INS_FDIVP = 148; + public static final int UC_X86_INS_DPPD = 149; + public static final int UC_X86_INS_DPPS = 150; + public static final int UC_X86_INS_RET = 151; + public static final int UC_X86_INS_ENCLS = 152; + public static final int UC_X86_INS_ENCLU = 153; + public static final int UC_X86_INS_ENTER = 154; + public static final int UC_X86_INS_EXTRACTPS = 155; + public static final int UC_X86_INS_EXTRQ = 156; + public static final int UC_X86_INS_F2XM1 = 157; + public static final int UC_X86_INS_LCALL = 158; + public static final int UC_X86_INS_LJMP = 159; + public static final int UC_X86_INS_FBLD = 160; + public static final int UC_X86_INS_FBSTP = 161; + public static final int UC_X86_INS_FCOMPP = 162; + public static final int UC_X86_INS_FDECSTP = 163; + public static final int UC_X86_INS_FEMMS = 164; + public static final int UC_X86_INS_FFREE = 165; + public static final int UC_X86_INS_FICOM = 166; + public static final int UC_X86_INS_FICOMP = 167; + public static final int UC_X86_INS_FINCSTP = 168; + public static final int UC_X86_INS_FLDCW = 169; + public static final int UC_X86_INS_FLDENV = 170; + public static final int UC_X86_INS_FLDL2E = 171; + public static final int UC_X86_INS_FLDL2T = 172; + public static final int UC_X86_INS_FLDLG2 = 173; + public static final int UC_X86_INS_FLDLN2 = 174; + public static final int UC_X86_INS_FLDPI = 175; + public static final int UC_X86_INS_FNCLEX = 176; + public static final int UC_X86_INS_FNINIT = 177; + public static final int UC_X86_INS_FNOP = 178; + public static final int UC_X86_INS_FNSTCW = 179; + public static final int UC_X86_INS_FNSTSW = 180; + public static final int UC_X86_INS_FPATAN = 181; + public static final int UC_X86_INS_FPREM = 182; + public static final int UC_X86_INS_FPREM1 = 183; + public static final int UC_X86_INS_FPTAN = 184; + public static final int UC_X86_INS_FFREEP = 185; + public static final int UC_X86_INS_FRNDINT = 186; + public static final int UC_X86_INS_FRSTOR = 187; + public static final int UC_X86_INS_FNSAVE = 188; + public static final int UC_X86_INS_FSCALE = 189; + public static final int UC_X86_INS_FSETPM = 190; + public static final int UC_X86_INS_FSINCOS = 191; + public static final int UC_X86_INS_FNSTENV = 192; + public static final int UC_X86_INS_FXAM = 193; + public static final int UC_X86_INS_FXRSTOR = 194; + public static final int UC_X86_INS_FXRSTOR64 = 195; + public static final int UC_X86_INS_FXSAVE = 196; + public static final int UC_X86_INS_FXSAVE64 = 197; + public static final int UC_X86_INS_FXTRACT = 198; + public static final int UC_X86_INS_FYL2X = 199; + public static final int UC_X86_INS_FYL2XP1 = 200; + public static final int UC_X86_INS_MOVAPD = 201; + public static final int UC_X86_INS_MOVAPS = 202; + public static final int UC_X86_INS_ORPD = 203; + public static final int UC_X86_INS_ORPS = 204; + public static final int UC_X86_INS_VMOVAPD = 205; + public static final int UC_X86_INS_VMOVAPS = 206; + public static final int UC_X86_INS_XORPD = 207; + public static final int UC_X86_INS_XORPS = 208; + public static final int UC_X86_INS_GETSEC = 209; + public static final int UC_X86_INS_HADDPD = 210; + public static final int UC_X86_INS_HADDPS = 211; + public static final int UC_X86_INS_HLT = 212; + public static final int UC_X86_INS_HSUBPD = 213; + public static final int UC_X86_INS_HSUBPS = 214; + public static final int UC_X86_INS_IDIV = 215; + public static final int UC_X86_INS_FILD = 216; + public static final int UC_X86_INS_IMUL = 217; + public static final int UC_X86_INS_IN = 218; + public static final int UC_X86_INS_INC = 219; + public static final int UC_X86_INS_INSB = 220; + public static final int UC_X86_INS_INSERTPS = 221; + public static final int UC_X86_INS_INSERTQ = 222; + public static final int UC_X86_INS_INSD = 223; + public static final int UC_X86_INS_INSW = 224; + public static final int UC_X86_INS_INT = 225; + public static final int UC_X86_INS_INT1 = 226; + public static final int UC_X86_INS_INT3 = 227; + public static final int UC_X86_INS_INTO = 228; + public static final int UC_X86_INS_INVD = 229; + public static final int UC_X86_INS_INVEPT = 230; + public static final int UC_X86_INS_INVLPG = 231; + public static final int UC_X86_INS_INVLPGA = 232; + public static final int UC_X86_INS_INVPCID = 233; + public static final int UC_X86_INS_INVVPID = 234; + public static final int UC_X86_INS_IRET = 235; + public static final int UC_X86_INS_IRETD = 236; + public static final int UC_X86_INS_IRETQ = 237; + public static final int UC_X86_INS_FISTTP = 238; + public static final int UC_X86_INS_FIST = 239; + public static final int UC_X86_INS_FISTP = 240; + public static final int UC_X86_INS_UCOMISD = 241; + public static final int UC_X86_INS_UCOMISS = 242; + public static final int UC_X86_INS_VCOMISD = 243; + public static final int UC_X86_INS_VCOMISS = 244; + public static final int UC_X86_INS_VCVTSD2SS = 245; + public static final int UC_X86_INS_VCVTSI2SD = 246; + public static final int UC_X86_INS_VCVTSI2SS = 247; + public static final int UC_X86_INS_VCVTSS2SD = 248; + public static final int UC_X86_INS_VCVTTSD2SI = 249; + public static final int UC_X86_INS_VCVTTSD2USI = 250; + public static final int UC_X86_INS_VCVTTSS2SI = 251; + public static final int UC_X86_INS_VCVTTSS2USI = 252; + public static final int UC_X86_INS_VCVTUSI2SD = 253; + public static final int UC_X86_INS_VCVTUSI2SS = 254; + public static final int UC_X86_INS_VUCOMISD = 255; + public static final int UC_X86_INS_VUCOMISS = 256; + public static final int UC_X86_INS_JAE = 257; + public static final int UC_X86_INS_JA = 258; + public static final int UC_X86_INS_JBE = 259; + public static final int UC_X86_INS_JB = 260; + public static final int UC_X86_INS_JCXZ = 261; + public static final int UC_X86_INS_JECXZ = 262; + public static final int UC_X86_INS_JE = 263; + public static final int UC_X86_INS_JGE = 264; + public static final int UC_X86_INS_JG = 265; + public static final int UC_X86_INS_JLE = 266; + public static final int UC_X86_INS_JL = 267; + public static final int UC_X86_INS_JMP = 268; + public static final int UC_X86_INS_JNE = 269; + public static final int UC_X86_INS_JNO = 270; + public static final int UC_X86_INS_JNP = 271; + public static final int UC_X86_INS_JNS = 272; + public static final int UC_X86_INS_JO = 273; + public static final int UC_X86_INS_JP = 274; + public static final int UC_X86_INS_JRCXZ = 275; + public static final int UC_X86_INS_JS = 276; + public static final int UC_X86_INS_KANDB = 277; + public static final int UC_X86_INS_KANDD = 278; + public static final int UC_X86_INS_KANDNB = 279; + public static final int UC_X86_INS_KANDND = 280; + public static final int UC_X86_INS_KANDNQ = 281; + public static final int UC_X86_INS_KANDNW = 282; + public static final int UC_X86_INS_KANDQ = 283; + public static final int UC_X86_INS_KANDW = 284; + public static final int UC_X86_INS_KMOVB = 285; + public static final int UC_X86_INS_KMOVD = 286; + public static final int UC_X86_INS_KMOVQ = 287; + public static final int UC_X86_INS_KMOVW = 288; + public static final int UC_X86_INS_KNOTB = 289; + public static final int UC_X86_INS_KNOTD = 290; + public static final int UC_X86_INS_KNOTQ = 291; + public static final int UC_X86_INS_KNOTW = 292; + public static final int UC_X86_INS_KORB = 293; + public static final int UC_X86_INS_KORD = 294; + public static final int UC_X86_INS_KORQ = 295; + public static final int UC_X86_INS_KORTESTB = 296; + public static final int UC_X86_INS_KORTESTD = 297; + public static final int UC_X86_INS_KORTESTQ = 298; + public static final int UC_X86_INS_KORTESTW = 299; + public static final int UC_X86_INS_KORW = 300; + public static final int UC_X86_INS_KSHIFTLB = 301; + public static final int UC_X86_INS_KSHIFTLD = 302; + public static final int UC_X86_INS_KSHIFTLQ = 303; + public static final int UC_X86_INS_KSHIFTLW = 304; + public static final int UC_X86_INS_KSHIFTRB = 305; + public static final int UC_X86_INS_KSHIFTRD = 306; + public static final int UC_X86_INS_KSHIFTRQ = 307; + public static final int UC_X86_INS_KSHIFTRW = 308; + public static final int UC_X86_INS_KUNPCKBW = 309; + public static final int UC_X86_INS_KXNORB = 310; + public static final int UC_X86_INS_KXNORD = 311; + public static final int UC_X86_INS_KXNORQ = 312; + public static final int UC_X86_INS_KXNORW = 313; + public static final int UC_X86_INS_KXORB = 314; + public static final int UC_X86_INS_KXORD = 315; + public static final int UC_X86_INS_KXORQ = 316; + public static final int UC_X86_INS_KXORW = 317; + public static final int UC_X86_INS_LAHF = 318; + public static final int UC_X86_INS_LAR = 319; + public static final int UC_X86_INS_LDDQU = 320; + public static final int UC_X86_INS_LDMXCSR = 321; + public static final int UC_X86_INS_LDS = 322; + public static final int UC_X86_INS_FLDZ = 323; + public static final int UC_X86_INS_FLD1 = 324; + public static final int UC_X86_INS_FLD = 325; + public static final int UC_X86_INS_LEA = 326; + public static final int UC_X86_INS_LEAVE = 327; + public static final int UC_X86_INS_LES = 328; + public static final int UC_X86_INS_LFENCE = 329; + public static final int UC_X86_INS_LFS = 330; + public static final int UC_X86_INS_LGDT = 331; + public static final int UC_X86_INS_LGS = 332; + public static final int UC_X86_INS_LIDT = 333; + public static final int UC_X86_INS_LLDT = 334; + public static final int UC_X86_INS_LMSW = 335; + public static final int UC_X86_INS_OR = 336; + public static final int UC_X86_INS_SUB = 337; + public static final int UC_X86_INS_XOR = 338; + public static final int UC_X86_INS_LODSB = 339; + public static final int UC_X86_INS_LODSD = 340; + public static final int UC_X86_INS_LODSQ = 341; + public static final int UC_X86_INS_LODSW = 342; + public static final int UC_X86_INS_LOOP = 343; + public static final int UC_X86_INS_LOOPE = 344; + public static final int UC_X86_INS_LOOPNE = 345; + public static final int UC_X86_INS_RETF = 346; + public static final int UC_X86_INS_RETFQ = 347; + public static final int UC_X86_INS_LSL = 348; + public static final int UC_X86_INS_LSS = 349; + public static final int UC_X86_INS_LTR = 350; + public static final int UC_X86_INS_XADD = 351; + public static final int UC_X86_INS_LZCNT = 352; + public static final int UC_X86_INS_MASKMOVDQU = 353; + public static final int UC_X86_INS_MAXPD = 354; + public static final int UC_X86_INS_MAXPS = 355; + public static final int UC_X86_INS_MAXSD = 356; + public static final int UC_X86_INS_MAXSS = 357; + public static final int UC_X86_INS_MFENCE = 358; + public static final int UC_X86_INS_MINPD = 359; + public static final int UC_X86_INS_MINPS = 360; + public static final int UC_X86_INS_MINSD = 361; + public static final int UC_X86_INS_MINSS = 362; + public static final int UC_X86_INS_CVTPD2PI = 363; + public static final int UC_X86_INS_CVTPI2PD = 364; + public static final int UC_X86_INS_CVTPI2PS = 365; + public static final int UC_X86_INS_CVTPS2PI = 366; + public static final int UC_X86_INS_CVTTPD2PI = 367; + public static final int UC_X86_INS_CVTTPS2PI = 368; + public static final int UC_X86_INS_EMMS = 369; + public static final int UC_X86_INS_MASKMOVQ = 370; + public static final int UC_X86_INS_MOVD = 371; + public static final int UC_X86_INS_MOVDQ2Q = 372; + public static final int UC_X86_INS_MOVNTQ = 373; + public static final int UC_X86_INS_MOVQ2DQ = 374; + public static final int UC_X86_INS_MOVQ = 375; + public static final int UC_X86_INS_PABSB = 376; + public static final int UC_X86_INS_PABSD = 377; + public static final int UC_X86_INS_PABSW = 378; + public static final int UC_X86_INS_PACKSSDW = 379; + public static final int UC_X86_INS_PACKSSWB = 380; + public static final int UC_X86_INS_PACKUSWB = 381; + public static final int UC_X86_INS_PADDB = 382; + public static final int UC_X86_INS_PADDD = 383; + public static final int UC_X86_INS_PADDQ = 384; + public static final int UC_X86_INS_PADDSB = 385; + public static final int UC_X86_INS_PADDSW = 386; + public static final int UC_X86_INS_PADDUSB = 387; + public static final int UC_X86_INS_PADDUSW = 388; + public static final int UC_X86_INS_PADDW = 389; + public static final int UC_X86_INS_PALIGNR = 390; + public static final int UC_X86_INS_PANDN = 391; + public static final int UC_X86_INS_PAND = 392; + public static final int UC_X86_INS_PAVGB = 393; + public static final int UC_X86_INS_PAVGW = 394; + public static final int UC_X86_INS_PCMPEQB = 395; + public static final int UC_X86_INS_PCMPEQD = 396; + public static final int UC_X86_INS_PCMPEQW = 397; + public static final int UC_X86_INS_PCMPGTB = 398; + public static final int UC_X86_INS_PCMPGTD = 399; + public static final int UC_X86_INS_PCMPGTW = 400; + public static final int UC_X86_INS_PEXTRW = 401; + public static final int UC_X86_INS_PHADDSW = 402; + public static final int UC_X86_INS_PHADDW = 403; + public static final int UC_X86_INS_PHADDD = 404; + public static final int UC_X86_INS_PHSUBD = 405; + public static final int UC_X86_INS_PHSUBSW = 406; + public static final int UC_X86_INS_PHSUBW = 407; + public static final int UC_X86_INS_PINSRW = 408; + public static final int UC_X86_INS_PMADDUBSW = 409; + public static final int UC_X86_INS_PMADDWD = 410; + public static final int UC_X86_INS_PMAXSW = 411; + public static final int UC_X86_INS_PMAXUB = 412; + public static final int UC_X86_INS_PMINSW = 413; + public static final int UC_X86_INS_PMINUB = 414; + public static final int UC_X86_INS_PMOVMSKB = 415; + public static final int UC_X86_INS_PMULHRSW = 416; + public static final int UC_X86_INS_PMULHUW = 417; + public static final int UC_X86_INS_PMULHW = 418; + public static final int UC_X86_INS_PMULLW = 419; + public static final int UC_X86_INS_PMULUDQ = 420; + public static final int UC_X86_INS_POR = 421; + public static final int UC_X86_INS_PSADBW = 422; + public static final int UC_X86_INS_PSHUFB = 423; + public static final int UC_X86_INS_PSHUFW = 424; + public static final int UC_X86_INS_PSIGNB = 425; + public static final int UC_X86_INS_PSIGND = 426; + public static final int UC_X86_INS_PSIGNW = 427; + public static final int UC_X86_INS_PSLLD = 428; + public static final int UC_X86_INS_PSLLQ = 429; + public static final int UC_X86_INS_PSLLW = 430; + public static final int UC_X86_INS_PSRAD = 431; + public static final int UC_X86_INS_PSRAW = 432; + public static final int UC_X86_INS_PSRLD = 433; + public static final int UC_X86_INS_PSRLQ = 434; + public static final int UC_X86_INS_PSRLW = 435; + public static final int UC_X86_INS_PSUBB = 436; + public static final int UC_X86_INS_PSUBD = 437; + public static final int UC_X86_INS_PSUBQ = 438; + public static final int UC_X86_INS_PSUBSB = 439; + public static final int UC_X86_INS_PSUBSW = 440; + public static final int UC_X86_INS_PSUBUSB = 441; + public static final int UC_X86_INS_PSUBUSW = 442; + public static final int UC_X86_INS_PSUBW = 443; + public static final int UC_X86_INS_PUNPCKHBW = 444; + public static final int UC_X86_INS_PUNPCKHDQ = 445; + public static final int UC_X86_INS_PUNPCKHWD = 446; + public static final int UC_X86_INS_PUNPCKLBW = 447; + public static final int UC_X86_INS_PUNPCKLDQ = 448; + public static final int UC_X86_INS_PUNPCKLWD = 449; + public static final int UC_X86_INS_PXOR = 450; + public static final int UC_X86_INS_MONITOR = 451; + public static final int UC_X86_INS_MONTMUL = 452; + public static final int UC_X86_INS_MOV = 453; + public static final int UC_X86_INS_MOVABS = 454; + public static final int UC_X86_INS_MOVBE = 455; + public static final int UC_X86_INS_MOVDDUP = 456; + public static final int UC_X86_INS_MOVDQA = 457; + public static final int UC_X86_INS_MOVDQU = 458; + public static final int UC_X86_INS_MOVHLPS = 459; + public static final int UC_X86_INS_MOVHPD = 460; + public static final int UC_X86_INS_MOVHPS = 461; + public static final int UC_X86_INS_MOVLHPS = 462; + public static final int UC_X86_INS_MOVLPD = 463; + public static final int UC_X86_INS_MOVLPS = 464; + public static final int UC_X86_INS_MOVMSKPD = 465; + public static final int UC_X86_INS_MOVMSKPS = 466; + public static final int UC_X86_INS_MOVNTDQA = 467; + public static final int UC_X86_INS_MOVNTDQ = 468; + public static final int UC_X86_INS_MOVNTI = 469; + public static final int UC_X86_INS_MOVNTPD = 470; + public static final int UC_X86_INS_MOVNTPS = 471; + public static final int UC_X86_INS_MOVNTSD = 472; + public static final int UC_X86_INS_MOVNTSS = 473; + public static final int UC_X86_INS_MOVSB = 474; + public static final int UC_X86_INS_MOVSD = 475; + public static final int UC_X86_INS_MOVSHDUP = 476; + public static final int UC_X86_INS_MOVSLDUP = 477; + public static final int UC_X86_INS_MOVSQ = 478; + public static final int UC_X86_INS_MOVSS = 479; + public static final int UC_X86_INS_MOVSW = 480; + public static final int UC_X86_INS_MOVSX = 481; + public static final int UC_X86_INS_MOVSXD = 482; + public static final int UC_X86_INS_MOVUPD = 483; + public static final int UC_X86_INS_MOVUPS = 484; + public static final int UC_X86_INS_MOVZX = 485; + public static final int UC_X86_INS_MPSADBW = 486; + public static final int UC_X86_INS_MUL = 487; + public static final int UC_X86_INS_MULPD = 488; + public static final int UC_X86_INS_MULPS = 489; + public static final int UC_X86_INS_MULSD = 490; + public static final int UC_X86_INS_MULSS = 491; + public static final int UC_X86_INS_MULX = 492; + public static final int UC_X86_INS_FMUL = 493; + public static final int UC_X86_INS_FIMUL = 494; + public static final int UC_X86_INS_FMULP = 495; + public static final int UC_X86_INS_MWAIT = 496; + public static final int UC_X86_INS_NEG = 497; + public static final int UC_X86_INS_NOP = 498; + public static final int UC_X86_INS_NOT = 499; + public static final int UC_X86_INS_OUT = 500; + public static final int UC_X86_INS_OUTSB = 501; + public static final int UC_X86_INS_OUTSD = 502; + public static final int UC_X86_INS_OUTSW = 503; + public static final int UC_X86_INS_PACKUSDW = 504; + public static final int UC_X86_INS_PAUSE = 505; + public static final int UC_X86_INS_PAVGUSB = 506; + public static final int UC_X86_INS_PBLENDVB = 507; + public static final int UC_X86_INS_PBLENDW = 508; + public static final int UC_X86_INS_PCLMULQDQ = 509; + public static final int UC_X86_INS_PCMPEQQ = 510; + public static final int UC_X86_INS_PCMPESTRI = 511; + public static final int UC_X86_INS_PCMPESTRM = 512; + public static final int UC_X86_INS_PCMPGTQ = 513; + public static final int UC_X86_INS_PCMPISTRI = 514; + public static final int UC_X86_INS_PCMPISTRM = 515; + public static final int UC_X86_INS_PCOMMIT = 516; + public static final int UC_X86_INS_PDEP = 517; + public static final int UC_X86_INS_PEXT = 518; + public static final int UC_X86_INS_PEXTRB = 519; + public static final int UC_X86_INS_PEXTRD = 520; + public static final int UC_X86_INS_PEXTRQ = 521; + public static final int UC_X86_INS_PF2ID = 522; + public static final int UC_X86_INS_PF2IW = 523; + public static final int UC_X86_INS_PFACC = 524; + public static final int UC_X86_INS_PFADD = 525; + public static final int UC_X86_INS_PFCMPEQ = 526; + public static final int UC_X86_INS_PFCMPGE = 527; + public static final int UC_X86_INS_PFCMPGT = 528; + public static final int UC_X86_INS_PFMAX = 529; + public static final int UC_X86_INS_PFMIN = 530; + public static final int UC_X86_INS_PFMUL = 531; + public static final int UC_X86_INS_PFNACC = 532; + public static final int UC_X86_INS_PFPNACC = 533; + public static final int UC_X86_INS_PFRCPIT1 = 534; + public static final int UC_X86_INS_PFRCPIT2 = 535; + public static final int UC_X86_INS_PFRCP = 536; + public static final int UC_X86_INS_PFRSQIT1 = 537; + public static final int UC_X86_INS_PFRSQRT = 538; + public static final int UC_X86_INS_PFSUBR = 539; + public static final int UC_X86_INS_PFSUB = 540; + public static final int UC_X86_INS_PHMINPOSUW = 541; + public static final int UC_X86_INS_PI2FD = 542; + public static final int UC_X86_INS_PI2FW = 543; + public static final int UC_X86_INS_PINSRB = 544; + public static final int UC_X86_INS_PINSRD = 545; + public static final int UC_X86_INS_PINSRQ = 546; + public static final int UC_X86_INS_PMAXSB = 547; + public static final int UC_X86_INS_PMAXSD = 548; + public static final int UC_X86_INS_PMAXUD = 549; + public static final int UC_X86_INS_PMAXUW = 550; + public static final int UC_X86_INS_PMINSB = 551; + public static final int UC_X86_INS_PMINSD = 552; + public static final int UC_X86_INS_PMINUD = 553; + public static final int UC_X86_INS_PMINUW = 554; + public static final int UC_X86_INS_PMOVSXBD = 555; + public static final int UC_X86_INS_PMOVSXBQ = 556; + public static final int UC_X86_INS_PMOVSXBW = 557; + public static final int UC_X86_INS_PMOVSXDQ = 558; + public static final int UC_X86_INS_PMOVSXWD = 559; + public static final int UC_X86_INS_PMOVSXWQ = 560; + public static final int UC_X86_INS_PMOVZXBD = 561; + public static final int UC_X86_INS_PMOVZXBQ = 562; + public static final int UC_X86_INS_PMOVZXBW = 563; + public static final int UC_X86_INS_PMOVZXDQ = 564; + public static final int UC_X86_INS_PMOVZXWD = 565; + public static final int UC_X86_INS_PMOVZXWQ = 566; + public static final int UC_X86_INS_PMULDQ = 567; + public static final int UC_X86_INS_PMULHRW = 568; + public static final int UC_X86_INS_PMULLD = 569; + public static final int UC_X86_INS_POP = 570; + public static final int UC_X86_INS_POPAW = 571; + public static final int UC_X86_INS_POPAL = 572; + public static final int UC_X86_INS_POPCNT = 573; + public static final int UC_X86_INS_POPF = 574; + public static final int UC_X86_INS_POPFD = 575; + public static final int UC_X86_INS_POPFQ = 576; + public static final int UC_X86_INS_PREFETCH = 577; + public static final int UC_X86_INS_PREFETCHNTA = 578; + public static final int UC_X86_INS_PREFETCHT0 = 579; + public static final int UC_X86_INS_PREFETCHT1 = 580; + public static final int UC_X86_INS_PREFETCHT2 = 581; + public static final int UC_X86_INS_PREFETCHW = 582; + public static final int UC_X86_INS_PSHUFD = 583; + public static final int UC_X86_INS_PSHUFHW = 584; + public static final int UC_X86_INS_PSHUFLW = 585; + public static final int UC_X86_INS_PSLLDQ = 586; + public static final int UC_X86_INS_PSRLDQ = 587; + public static final int UC_X86_INS_PSWAPD = 588; + public static final int UC_X86_INS_PTEST = 589; + public static final int UC_X86_INS_PUNPCKHQDQ = 590; + public static final int UC_X86_INS_PUNPCKLQDQ = 591; + public static final int UC_X86_INS_PUSH = 592; + public static final int UC_X86_INS_PUSHAW = 593; + public static final int UC_X86_INS_PUSHAL = 594; + public static final int UC_X86_INS_PUSHF = 595; + public static final int UC_X86_INS_PUSHFD = 596; + public static final int UC_X86_INS_PUSHFQ = 597; + public static final int UC_X86_INS_RCL = 598; + public static final int UC_X86_INS_RCPPS = 599; + public static final int UC_X86_INS_RCPSS = 600; + public static final int UC_X86_INS_RCR = 601; + public static final int UC_X86_INS_RDFSBASE = 602; + public static final int UC_X86_INS_RDGSBASE = 603; + public static final int UC_X86_INS_RDMSR = 604; + public static final int UC_X86_INS_RDPMC = 605; + public static final int UC_X86_INS_RDRAND = 606; + public static final int UC_X86_INS_RDSEED = 607; + public static final int UC_X86_INS_RDTSC = 608; + public static final int UC_X86_INS_RDTSCP = 609; + public static final int UC_X86_INS_ROL = 610; + public static final int UC_X86_INS_ROR = 611; + public static final int UC_X86_INS_RORX = 612; + public static final int UC_X86_INS_ROUNDPD = 613; + public static final int UC_X86_INS_ROUNDPS = 614; + public static final int UC_X86_INS_ROUNDSD = 615; + public static final int UC_X86_INS_ROUNDSS = 616; + public static final int UC_X86_INS_RSM = 617; + public static final int UC_X86_INS_RSQRTPS = 618; + public static final int UC_X86_INS_RSQRTSS = 619; + public static final int UC_X86_INS_SAHF = 620; + public static final int UC_X86_INS_SAL = 621; + public static final int UC_X86_INS_SALC = 622; + public static final int UC_X86_INS_SAR = 623; + public static final int UC_X86_INS_SARX = 624; + public static final int UC_X86_INS_SBB = 625; + public static final int UC_X86_INS_SCASB = 626; + public static final int UC_X86_INS_SCASD = 627; + public static final int UC_X86_INS_SCASQ = 628; + public static final int UC_X86_INS_SCASW = 629; + public static final int UC_X86_INS_SETAE = 630; + public static final int UC_X86_INS_SETA = 631; + public static final int UC_X86_INS_SETBE = 632; + public static final int UC_X86_INS_SETB = 633; + public static final int UC_X86_INS_SETE = 634; + public static final int UC_X86_INS_SETGE = 635; + public static final int UC_X86_INS_SETG = 636; + public static final int UC_X86_INS_SETLE = 637; + public static final int UC_X86_INS_SETL = 638; + public static final int UC_X86_INS_SETNE = 639; + public static final int UC_X86_INS_SETNO = 640; + public static final int UC_X86_INS_SETNP = 641; + public static final int UC_X86_INS_SETNS = 642; + public static final int UC_X86_INS_SETO = 643; + public static final int UC_X86_INS_SETP = 644; + public static final int UC_X86_INS_SETS = 645; + public static final int UC_X86_INS_SFENCE = 646; + public static final int UC_X86_INS_SGDT = 647; + public static final int UC_X86_INS_SHA1MSG1 = 648; + public static final int UC_X86_INS_SHA1MSG2 = 649; + public static final int UC_X86_INS_SHA1NEXTE = 650; + public static final int UC_X86_INS_SHA1RNDS4 = 651; + public static final int UC_X86_INS_SHA256MSG1 = 652; + public static final int UC_X86_INS_SHA256MSG2 = 653; + public static final int UC_X86_INS_SHA256RNDS2 = 654; + public static final int UC_X86_INS_SHL = 655; + public static final int UC_X86_INS_SHLD = 656; + public static final int UC_X86_INS_SHLX = 657; + public static final int UC_X86_INS_SHR = 658; + public static final int UC_X86_INS_SHRD = 659; + public static final int UC_X86_INS_SHRX = 660; + public static final int UC_X86_INS_SHUFPD = 661; + public static final int UC_X86_INS_SHUFPS = 662; + public static final int UC_X86_INS_SIDT = 663; + public static final int UC_X86_INS_FSIN = 664; + public static final int UC_X86_INS_SKINIT = 665; + public static final int UC_X86_INS_SLDT = 666; + public static final int UC_X86_INS_SMSW = 667; + public static final int UC_X86_INS_SQRTPD = 668; + public static final int UC_X86_INS_SQRTPS = 669; + public static final int UC_X86_INS_SQRTSD = 670; + public static final int UC_X86_INS_SQRTSS = 671; + public static final int UC_X86_INS_FSQRT = 672; + public static final int UC_X86_INS_STAC = 673; + public static final int UC_X86_INS_STC = 674; + public static final int UC_X86_INS_STD = 675; + public static final int UC_X86_INS_STGI = 676; + public static final int UC_X86_INS_STI = 677; + public static final int UC_X86_INS_STMXCSR = 678; + public static final int UC_X86_INS_STOSB = 679; + public static final int UC_X86_INS_STOSD = 680; + public static final int UC_X86_INS_STOSQ = 681; + public static final int UC_X86_INS_STOSW = 682; + public static final int UC_X86_INS_STR = 683; + public static final int UC_X86_INS_FST = 684; + public static final int UC_X86_INS_FSTP = 685; + public static final int UC_X86_INS_FSTPNCE = 686; + public static final int UC_X86_INS_FXCH = 687; + public static final int UC_X86_INS_SUBPD = 688; + public static final int UC_X86_INS_SUBPS = 689; + public static final int UC_X86_INS_FSUBR = 690; + public static final int UC_X86_INS_FISUBR = 691; + public static final int UC_X86_INS_FSUBRP = 692; + public static final int UC_X86_INS_SUBSD = 693; + public static final int UC_X86_INS_SUBSS = 694; + public static final int UC_X86_INS_FSUB = 695; + public static final int UC_X86_INS_FISUB = 696; + public static final int UC_X86_INS_FSUBP = 697; + public static final int UC_X86_INS_SWAPGS = 698; + public static final int UC_X86_INS_SYSCALL = 699; + public static final int UC_X86_INS_SYSENTER = 700; + public static final int UC_X86_INS_SYSEXIT = 701; + public static final int UC_X86_INS_SYSRET = 702; + public static final int UC_X86_INS_T1MSKC = 703; + public static final int UC_X86_INS_TEST = 704; + public static final int UC_X86_INS_UD2 = 705; + public static final int UC_X86_INS_FTST = 706; + public static final int UC_X86_INS_TZCNT = 707; + public static final int UC_X86_INS_TZMSK = 708; + public static final int UC_X86_INS_FUCOMPI = 709; + public static final int UC_X86_INS_FUCOMI = 710; + public static final int UC_X86_INS_FUCOMPP = 711; + public static final int UC_X86_INS_FUCOMP = 712; + public static final int UC_X86_INS_FUCOM = 713; + public static final int UC_X86_INS_UD2B = 714; + public static final int UC_X86_INS_UNPCKHPD = 715; + public static final int UC_X86_INS_UNPCKHPS = 716; + public static final int UC_X86_INS_UNPCKLPD = 717; + public static final int UC_X86_INS_UNPCKLPS = 718; + public static final int UC_X86_INS_VADDPD = 719; + public static final int UC_X86_INS_VADDPS = 720; + public static final int UC_X86_INS_VADDSD = 721; + public static final int UC_X86_INS_VADDSS = 722; + public static final int UC_X86_INS_VADDSUBPD = 723; + public static final int UC_X86_INS_VADDSUBPS = 724; + public static final int UC_X86_INS_VAESDECLAST = 725; + public static final int UC_X86_INS_VAESDEC = 726; + public static final int UC_X86_INS_VAESENCLAST = 727; + public static final int UC_X86_INS_VAESENC = 728; + public static final int UC_X86_INS_VAESIMC = 729; + public static final int UC_X86_INS_VAESKEYGENASSIST = 730; + public static final int UC_X86_INS_VALIGND = 731; + public static final int UC_X86_INS_VALIGNQ = 732; + public static final int UC_X86_INS_VANDNPD = 733; + public static final int UC_X86_INS_VANDNPS = 734; + public static final int UC_X86_INS_VANDPD = 735; + public static final int UC_X86_INS_VANDPS = 736; + public static final int UC_X86_INS_VBLENDMPD = 737; + public static final int UC_X86_INS_VBLENDMPS = 738; + public static final int UC_X86_INS_VBLENDPD = 739; + public static final int UC_X86_INS_VBLENDPS = 740; + public static final int UC_X86_INS_VBLENDVPD = 741; + public static final int UC_X86_INS_VBLENDVPS = 742; + public static final int UC_X86_INS_VBROADCASTF128 = 743; + public static final int UC_X86_INS_VBROADCASTI32X4 = 744; + public static final int UC_X86_INS_VBROADCASTI64X4 = 745; + public static final int UC_X86_INS_VBROADCASTSD = 746; + public static final int UC_X86_INS_VBROADCASTSS = 747; + public static final int UC_X86_INS_VCMPPD = 748; + public static final int UC_X86_INS_VCMPPS = 749; + public static final int UC_X86_INS_VCMPSD = 750; + public static final int UC_X86_INS_VCMPSS = 751; + public static final int UC_X86_INS_VCOMPRESSPD = 752; + public static final int UC_X86_INS_VCOMPRESSPS = 753; + public static final int UC_X86_INS_VCVTDQ2PD = 754; + public static final int UC_X86_INS_VCVTDQ2PS = 755; + public static final int UC_X86_INS_VCVTPD2DQX = 756; + public static final int UC_X86_INS_VCVTPD2DQ = 757; + public static final int UC_X86_INS_VCVTPD2PSX = 758; + public static final int UC_X86_INS_VCVTPD2PS = 759; + public static final int UC_X86_INS_VCVTPD2UDQ = 760; + public static final int UC_X86_INS_VCVTPH2PS = 761; + public static final int UC_X86_INS_VCVTPS2DQ = 762; + public static final int UC_X86_INS_VCVTPS2PD = 763; + public static final int UC_X86_INS_VCVTPS2PH = 764; + public static final int UC_X86_INS_VCVTPS2UDQ = 765; + public static final int UC_X86_INS_VCVTSD2SI = 766; + public static final int UC_X86_INS_VCVTSD2USI = 767; + public static final int UC_X86_INS_VCVTSS2SI = 768; + public static final int UC_X86_INS_VCVTSS2USI = 769; + public static final int UC_X86_INS_VCVTTPD2DQX = 770; + public static final int UC_X86_INS_VCVTTPD2DQ = 771; + public static final int UC_X86_INS_VCVTTPD2UDQ = 772; + public static final int UC_X86_INS_VCVTTPS2DQ = 773; + public static final int UC_X86_INS_VCVTTPS2UDQ = 774; + public static final int UC_X86_INS_VCVTUDQ2PD = 775; + public static final int UC_X86_INS_VCVTUDQ2PS = 776; + public static final int UC_X86_INS_VDIVPD = 777; + public static final int UC_X86_INS_VDIVPS = 778; + public static final int UC_X86_INS_VDIVSD = 779; + public static final int UC_X86_INS_VDIVSS = 780; + public static final int UC_X86_INS_VDPPD = 781; + public static final int UC_X86_INS_VDPPS = 782; + public static final int UC_X86_INS_VERR = 783; + public static final int UC_X86_INS_VERW = 784; + public static final int UC_X86_INS_VEXP2PD = 785; + public static final int UC_X86_INS_VEXP2PS = 786; + public static final int UC_X86_INS_VEXPANDPD = 787; + public static final int UC_X86_INS_VEXPANDPS = 788; + public static final int UC_X86_INS_VEXTRACTF128 = 789; + public static final int UC_X86_INS_VEXTRACTF32X4 = 790; + public static final int UC_X86_INS_VEXTRACTF64X4 = 791; + public static final int UC_X86_INS_VEXTRACTI128 = 792; + public static final int UC_X86_INS_VEXTRACTI32X4 = 793; + public static final int UC_X86_INS_VEXTRACTI64X4 = 794; + public static final int UC_X86_INS_VEXTRACTPS = 795; + public static final int UC_X86_INS_VFMADD132PD = 796; + public static final int UC_X86_INS_VFMADD132PS = 797; + public static final int UC_X86_INS_VFMADDPD = 798; + public static final int UC_X86_INS_VFMADD213PD = 799; + public static final int UC_X86_INS_VFMADD231PD = 800; + public static final int UC_X86_INS_VFMADDPS = 801; + public static final int UC_X86_INS_VFMADD213PS = 802; + public static final int UC_X86_INS_VFMADD231PS = 803; + public static final int UC_X86_INS_VFMADDSD = 804; + public static final int UC_X86_INS_VFMADD213SD = 805; + public static final int UC_X86_INS_VFMADD132SD = 806; + public static final int UC_X86_INS_VFMADD231SD = 807; + public static final int UC_X86_INS_VFMADDSS = 808; + public static final int UC_X86_INS_VFMADD213SS = 809; + public static final int UC_X86_INS_VFMADD132SS = 810; + public static final int UC_X86_INS_VFMADD231SS = 811; + public static final int UC_X86_INS_VFMADDSUB132PD = 812; + public static final int UC_X86_INS_VFMADDSUB132PS = 813; + public static final int UC_X86_INS_VFMADDSUBPD = 814; + public static final int UC_X86_INS_VFMADDSUB213PD = 815; + public static final int UC_X86_INS_VFMADDSUB231PD = 816; + public static final int UC_X86_INS_VFMADDSUBPS = 817; + public static final int UC_X86_INS_VFMADDSUB213PS = 818; + public static final int UC_X86_INS_VFMADDSUB231PS = 819; + public static final int UC_X86_INS_VFMSUB132PD = 820; + public static final int UC_X86_INS_VFMSUB132PS = 821; + public static final int UC_X86_INS_VFMSUBADD132PD = 822; + public static final int UC_X86_INS_VFMSUBADD132PS = 823; + public static final int UC_X86_INS_VFMSUBADDPD = 824; + public static final int UC_X86_INS_VFMSUBADD213PD = 825; + public static final int UC_X86_INS_VFMSUBADD231PD = 826; + public static final int UC_X86_INS_VFMSUBADDPS = 827; + public static final int UC_X86_INS_VFMSUBADD213PS = 828; + public static final int UC_X86_INS_VFMSUBADD231PS = 829; + public static final int UC_X86_INS_VFMSUBPD = 830; + public static final int UC_X86_INS_VFMSUB213PD = 831; + public static final int UC_X86_INS_VFMSUB231PD = 832; + public static final int UC_X86_INS_VFMSUBPS = 833; + public static final int UC_X86_INS_VFMSUB213PS = 834; + public static final int UC_X86_INS_VFMSUB231PS = 835; + public static final int UC_X86_INS_VFMSUBSD = 836; + public static final int UC_X86_INS_VFMSUB213SD = 837; + public static final int UC_X86_INS_VFMSUB132SD = 838; + public static final int UC_X86_INS_VFMSUB231SD = 839; + public static final int UC_X86_INS_VFMSUBSS = 840; + public static final int UC_X86_INS_VFMSUB213SS = 841; + public static final int UC_X86_INS_VFMSUB132SS = 842; + public static final int UC_X86_INS_VFMSUB231SS = 843; + public static final int UC_X86_INS_VFNMADD132PD = 844; + public static final int UC_X86_INS_VFNMADD132PS = 845; + public static final int UC_X86_INS_VFNMADDPD = 846; + public static final int UC_X86_INS_VFNMADD213PD = 847; + public static final int UC_X86_INS_VFNMADD231PD = 848; + public static final int UC_X86_INS_VFNMADDPS = 849; + public static final int UC_X86_INS_VFNMADD213PS = 850; + public static final int UC_X86_INS_VFNMADD231PS = 851; + public static final int UC_X86_INS_VFNMADDSD = 852; + public static final int UC_X86_INS_VFNMADD213SD = 853; + public static final int UC_X86_INS_VFNMADD132SD = 854; + public static final int UC_X86_INS_VFNMADD231SD = 855; + public static final int UC_X86_INS_VFNMADDSS = 856; + public static final int UC_X86_INS_VFNMADD213SS = 857; + public static final int UC_X86_INS_VFNMADD132SS = 858; + public static final int UC_X86_INS_VFNMADD231SS = 859; + public static final int UC_X86_INS_VFNMSUB132PD = 860; + public static final int UC_X86_INS_VFNMSUB132PS = 861; + public static final int UC_X86_INS_VFNMSUBPD = 862; + public static final int UC_X86_INS_VFNMSUB213PD = 863; + public static final int UC_X86_INS_VFNMSUB231PD = 864; + public static final int UC_X86_INS_VFNMSUBPS = 865; + public static final int UC_X86_INS_VFNMSUB213PS = 866; + public static final int UC_X86_INS_VFNMSUB231PS = 867; + public static final int UC_X86_INS_VFNMSUBSD = 868; + public static final int UC_X86_INS_VFNMSUB213SD = 869; + public static final int UC_X86_INS_VFNMSUB132SD = 870; + public static final int UC_X86_INS_VFNMSUB231SD = 871; + public static final int UC_X86_INS_VFNMSUBSS = 872; + public static final int UC_X86_INS_VFNMSUB213SS = 873; + public static final int UC_X86_INS_VFNMSUB132SS = 874; + public static final int UC_X86_INS_VFNMSUB231SS = 875; + public static final int UC_X86_INS_VFRCZPD = 876; + public static final int UC_X86_INS_VFRCZPS = 877; + public static final int UC_X86_INS_VFRCZSD = 878; + public static final int UC_X86_INS_VFRCZSS = 879; + public static final int UC_X86_INS_VORPD = 880; + public static final int UC_X86_INS_VORPS = 881; + public static final int UC_X86_INS_VXORPD = 882; + public static final int UC_X86_INS_VXORPS = 883; + public static final int UC_X86_INS_VGATHERDPD = 884; + public static final int UC_X86_INS_VGATHERDPS = 885; + public static final int UC_X86_INS_VGATHERPF0DPD = 886; + public static final int UC_X86_INS_VGATHERPF0DPS = 887; + public static final int UC_X86_INS_VGATHERPF0QPD = 888; + public static final int UC_X86_INS_VGATHERPF0QPS = 889; + public static final int UC_X86_INS_VGATHERPF1DPD = 890; + public static final int UC_X86_INS_VGATHERPF1DPS = 891; + public static final int UC_X86_INS_VGATHERPF1QPD = 892; + public static final int UC_X86_INS_VGATHERPF1QPS = 893; + public static final int UC_X86_INS_VGATHERQPD = 894; + public static final int UC_X86_INS_VGATHERQPS = 895; + public static final int UC_X86_INS_VHADDPD = 896; + public static final int UC_X86_INS_VHADDPS = 897; + public static final int UC_X86_INS_VHSUBPD = 898; + public static final int UC_X86_INS_VHSUBPS = 899; + public static final int UC_X86_INS_VINSERTF128 = 900; + public static final int UC_X86_INS_VINSERTF32X4 = 901; + public static final int UC_X86_INS_VINSERTF32X8 = 902; + public static final int UC_X86_INS_VINSERTF64X2 = 903; + public static final int UC_X86_INS_VINSERTF64X4 = 904; + public static final int UC_X86_INS_VINSERTI128 = 905; + public static final int UC_X86_INS_VINSERTI32X4 = 906; + public static final int UC_X86_INS_VINSERTI32X8 = 907; + public static final int UC_X86_INS_VINSERTI64X2 = 908; + public static final int UC_X86_INS_VINSERTI64X4 = 909; + public static final int UC_X86_INS_VINSERTPS = 910; + public static final int UC_X86_INS_VLDDQU = 911; + public static final int UC_X86_INS_VLDMXCSR = 912; + public static final int UC_X86_INS_VMASKMOVDQU = 913; + public static final int UC_X86_INS_VMASKMOVPD = 914; + public static final int UC_X86_INS_VMASKMOVPS = 915; + public static final int UC_X86_INS_VMAXPD = 916; + public static final int UC_X86_INS_VMAXPS = 917; + public static final int UC_X86_INS_VMAXSD = 918; + public static final int UC_X86_INS_VMAXSS = 919; + public static final int UC_X86_INS_VMCALL = 920; + public static final int UC_X86_INS_VMCLEAR = 921; + public static final int UC_X86_INS_VMFUNC = 922; + public static final int UC_X86_INS_VMINPD = 923; + public static final int UC_X86_INS_VMINPS = 924; + public static final int UC_X86_INS_VMINSD = 925; + public static final int UC_X86_INS_VMINSS = 926; + public static final int UC_X86_INS_VMLAUNCH = 927; + public static final int UC_X86_INS_VMLOAD = 928; + public static final int UC_X86_INS_VMMCALL = 929; + public static final int UC_X86_INS_VMOVQ = 930; + public static final int UC_X86_INS_VMOVDDUP = 931; + public static final int UC_X86_INS_VMOVD = 932; + public static final int UC_X86_INS_VMOVDQA32 = 933; + public static final int UC_X86_INS_VMOVDQA64 = 934; + public static final int UC_X86_INS_VMOVDQA = 935; + public static final int UC_X86_INS_VMOVDQU16 = 936; + public static final int UC_X86_INS_VMOVDQU32 = 937; + public static final int UC_X86_INS_VMOVDQU64 = 938; + public static final int UC_X86_INS_VMOVDQU8 = 939; + public static final int UC_X86_INS_VMOVDQU = 940; + public static final int UC_X86_INS_VMOVHLPS = 941; + public static final int UC_X86_INS_VMOVHPD = 942; + public static final int UC_X86_INS_VMOVHPS = 943; + public static final int UC_X86_INS_VMOVLHPS = 944; + public static final int UC_X86_INS_VMOVLPD = 945; + public static final int UC_X86_INS_VMOVLPS = 946; + public static final int UC_X86_INS_VMOVMSKPD = 947; + public static final int UC_X86_INS_VMOVMSKPS = 948; + public static final int UC_X86_INS_VMOVNTDQA = 949; + public static final int UC_X86_INS_VMOVNTDQ = 950; + public static final int UC_X86_INS_VMOVNTPD = 951; + public static final int UC_X86_INS_VMOVNTPS = 952; + public static final int UC_X86_INS_VMOVSD = 953; + public static final int UC_X86_INS_VMOVSHDUP = 954; + public static final int UC_X86_INS_VMOVSLDUP = 955; + public static final int UC_X86_INS_VMOVSS = 956; + public static final int UC_X86_INS_VMOVUPD = 957; + public static final int UC_X86_INS_VMOVUPS = 958; + public static final int UC_X86_INS_VMPSADBW = 959; + public static final int UC_X86_INS_VMPTRLD = 960; + public static final int UC_X86_INS_VMPTRST = 961; + public static final int UC_X86_INS_VMREAD = 962; + public static final int UC_X86_INS_VMRESUME = 963; + public static final int UC_X86_INS_VMRUN = 964; + public static final int UC_X86_INS_VMSAVE = 965; + public static final int UC_X86_INS_VMULPD = 966; + public static final int UC_X86_INS_VMULPS = 967; + public static final int UC_X86_INS_VMULSD = 968; + public static final int UC_X86_INS_VMULSS = 969; + public static final int UC_X86_INS_VMWRITE = 970; + public static final int UC_X86_INS_VMXOFF = 971; + public static final int UC_X86_INS_VMXON = 972; + public static final int UC_X86_INS_VPABSB = 973; + public static final int UC_X86_INS_VPABSD = 974; + public static final int UC_X86_INS_VPABSQ = 975; + public static final int UC_X86_INS_VPABSW = 976; + public static final int UC_X86_INS_VPACKSSDW = 977; + public static final int UC_X86_INS_VPACKSSWB = 978; + public static final int UC_X86_INS_VPACKUSDW = 979; + public static final int UC_X86_INS_VPACKUSWB = 980; + public static final int UC_X86_INS_VPADDB = 981; + public static final int UC_X86_INS_VPADDD = 982; + public static final int UC_X86_INS_VPADDQ = 983; + public static final int UC_X86_INS_VPADDSB = 984; + public static final int UC_X86_INS_VPADDSW = 985; + public static final int UC_X86_INS_VPADDUSB = 986; + public static final int UC_X86_INS_VPADDUSW = 987; + public static final int UC_X86_INS_VPADDW = 988; + public static final int UC_X86_INS_VPALIGNR = 989; + public static final int UC_X86_INS_VPANDD = 990; + public static final int UC_X86_INS_VPANDND = 991; + public static final int UC_X86_INS_VPANDNQ = 992; + public static final int UC_X86_INS_VPANDN = 993; + public static final int UC_X86_INS_VPANDQ = 994; + public static final int UC_X86_INS_VPAND = 995; + public static final int UC_X86_INS_VPAVGB = 996; + public static final int UC_X86_INS_VPAVGW = 997; + public static final int UC_X86_INS_VPBLENDD = 998; + public static final int UC_X86_INS_VPBLENDMB = 999; + public static final int UC_X86_INS_VPBLENDMD = 1000; + public static final int UC_X86_INS_VPBLENDMQ = 1001; + public static final int UC_X86_INS_VPBLENDMW = 1002; + public static final int UC_X86_INS_VPBLENDVB = 1003; + public static final int UC_X86_INS_VPBLENDW = 1004; + public static final int UC_X86_INS_VPBROADCASTB = 1005; + public static final int UC_X86_INS_VPBROADCASTD = 1006; + public static final int UC_X86_INS_VPBROADCASTMB2Q = 1007; + public static final int UC_X86_INS_VPBROADCASTMW2D = 1008; + public static final int UC_X86_INS_VPBROADCASTQ = 1009; + public static final int UC_X86_INS_VPBROADCASTW = 1010; + public static final int UC_X86_INS_VPCLMULQDQ = 1011; + public static final int UC_X86_INS_VPCMOV = 1012; + public static final int UC_X86_INS_VPCMPB = 1013; + public static final int UC_X86_INS_VPCMPD = 1014; + public static final int UC_X86_INS_VPCMPEQB = 1015; + public static final int UC_X86_INS_VPCMPEQD = 1016; + public static final int UC_X86_INS_VPCMPEQQ = 1017; + public static final int UC_X86_INS_VPCMPEQW = 1018; + public static final int UC_X86_INS_VPCMPESTRI = 1019; + public static final int UC_X86_INS_VPCMPESTRM = 1020; + public static final int UC_X86_INS_VPCMPGTB = 1021; + public static final int UC_X86_INS_VPCMPGTD = 1022; + public static final int UC_X86_INS_VPCMPGTQ = 1023; + public static final int UC_X86_INS_VPCMPGTW = 1024; + public static final int UC_X86_INS_VPCMPISTRI = 1025; + public static final int UC_X86_INS_VPCMPISTRM = 1026; + public static final int UC_X86_INS_VPCMPQ = 1027; + public static final int UC_X86_INS_VPCMPUB = 1028; + public static final int UC_X86_INS_VPCMPUD = 1029; + public static final int UC_X86_INS_VPCMPUQ = 1030; + public static final int UC_X86_INS_VPCMPUW = 1031; + public static final int UC_X86_INS_VPCMPW = 1032; + public static final int UC_X86_INS_VPCOMB = 1033; + public static final int UC_X86_INS_VPCOMD = 1034; + public static final int UC_X86_INS_VPCOMPRESSD = 1035; + public static final int UC_X86_INS_VPCOMPRESSQ = 1036; + public static final int UC_X86_INS_VPCOMQ = 1037; + public static final int UC_X86_INS_VPCOMUB = 1038; + public static final int UC_X86_INS_VPCOMUD = 1039; + public static final int UC_X86_INS_VPCOMUQ = 1040; + public static final int UC_X86_INS_VPCOMUW = 1041; + public static final int UC_X86_INS_VPCOMW = 1042; + public static final int UC_X86_INS_VPCONFLICTD = 1043; + public static final int UC_X86_INS_VPCONFLICTQ = 1044; + public static final int UC_X86_INS_VPERM2F128 = 1045; + public static final int UC_X86_INS_VPERM2I128 = 1046; + public static final int UC_X86_INS_VPERMD = 1047; + public static final int UC_X86_INS_VPERMI2D = 1048; + public static final int UC_X86_INS_VPERMI2PD = 1049; + public static final int UC_X86_INS_VPERMI2PS = 1050; + public static final int UC_X86_INS_VPERMI2Q = 1051; + public static final int UC_X86_INS_VPERMIL2PD = 1052; + public static final int UC_X86_INS_VPERMIL2PS = 1053; + public static final int UC_X86_INS_VPERMILPD = 1054; + public static final int UC_X86_INS_VPERMILPS = 1055; + public static final int UC_X86_INS_VPERMPD = 1056; + public static final int UC_X86_INS_VPERMPS = 1057; + public static final int UC_X86_INS_VPERMQ = 1058; + public static final int UC_X86_INS_VPERMT2D = 1059; + public static final int UC_X86_INS_VPERMT2PD = 1060; + public static final int UC_X86_INS_VPERMT2PS = 1061; + public static final int UC_X86_INS_VPERMT2Q = 1062; + public static final int UC_X86_INS_VPEXPANDD = 1063; + public static final int UC_X86_INS_VPEXPANDQ = 1064; + public static final int UC_X86_INS_VPEXTRB = 1065; + public static final int UC_X86_INS_VPEXTRD = 1066; + public static final int UC_X86_INS_VPEXTRQ = 1067; + public static final int UC_X86_INS_VPEXTRW = 1068; + public static final int UC_X86_INS_VPGATHERDD = 1069; + public static final int UC_X86_INS_VPGATHERDQ = 1070; + public static final int UC_X86_INS_VPGATHERQD = 1071; + public static final int UC_X86_INS_VPGATHERQQ = 1072; + public static final int UC_X86_INS_VPHADDBD = 1073; + public static final int UC_X86_INS_VPHADDBQ = 1074; + public static final int UC_X86_INS_VPHADDBW = 1075; + public static final int UC_X86_INS_VPHADDDQ = 1076; + public static final int UC_X86_INS_VPHADDD = 1077; + public static final int UC_X86_INS_VPHADDSW = 1078; + public static final int UC_X86_INS_VPHADDUBD = 1079; + public static final int UC_X86_INS_VPHADDUBQ = 1080; + public static final int UC_X86_INS_VPHADDUBW = 1081; + public static final int UC_X86_INS_VPHADDUDQ = 1082; + public static final int UC_X86_INS_VPHADDUWD = 1083; + public static final int UC_X86_INS_VPHADDUWQ = 1084; + public static final int UC_X86_INS_VPHADDWD = 1085; + public static final int UC_X86_INS_VPHADDWQ = 1086; + public static final int UC_X86_INS_VPHADDW = 1087; + public static final int UC_X86_INS_VPHMINPOSUW = 1088; + public static final int UC_X86_INS_VPHSUBBW = 1089; + public static final int UC_X86_INS_VPHSUBDQ = 1090; + public static final int UC_X86_INS_VPHSUBD = 1091; + public static final int UC_X86_INS_VPHSUBSW = 1092; + public static final int UC_X86_INS_VPHSUBWD = 1093; + public static final int UC_X86_INS_VPHSUBW = 1094; + public static final int UC_X86_INS_VPINSRB = 1095; + public static final int UC_X86_INS_VPINSRD = 1096; + public static final int UC_X86_INS_VPINSRQ = 1097; + public static final int UC_X86_INS_VPINSRW = 1098; + public static final int UC_X86_INS_VPLZCNTD = 1099; + public static final int UC_X86_INS_VPLZCNTQ = 1100; + public static final int UC_X86_INS_VPMACSDD = 1101; + public static final int UC_X86_INS_VPMACSDQH = 1102; + public static final int UC_X86_INS_VPMACSDQL = 1103; + public static final int UC_X86_INS_VPMACSSDD = 1104; + public static final int UC_X86_INS_VPMACSSDQH = 1105; + public static final int UC_X86_INS_VPMACSSDQL = 1106; + public static final int UC_X86_INS_VPMACSSWD = 1107; + public static final int UC_X86_INS_VPMACSSWW = 1108; + public static final int UC_X86_INS_VPMACSWD = 1109; + public static final int UC_X86_INS_VPMACSWW = 1110; + public static final int UC_X86_INS_VPMADCSSWD = 1111; + public static final int UC_X86_INS_VPMADCSWD = 1112; + public static final int UC_X86_INS_VPMADDUBSW = 1113; + public static final int UC_X86_INS_VPMADDWD = 1114; + public static final int UC_X86_INS_VPMASKMOVD = 1115; + public static final int UC_X86_INS_VPMASKMOVQ = 1116; + public static final int UC_X86_INS_VPMAXSB = 1117; + public static final int UC_X86_INS_VPMAXSD = 1118; + public static final int UC_X86_INS_VPMAXSQ = 1119; + public static final int UC_X86_INS_VPMAXSW = 1120; + public static final int UC_X86_INS_VPMAXUB = 1121; + public static final int UC_X86_INS_VPMAXUD = 1122; + public static final int UC_X86_INS_VPMAXUQ = 1123; + public static final int UC_X86_INS_VPMAXUW = 1124; + public static final int UC_X86_INS_VPMINSB = 1125; + public static final int UC_X86_INS_VPMINSD = 1126; + public static final int UC_X86_INS_VPMINSQ = 1127; + public static final int UC_X86_INS_VPMINSW = 1128; + public static final int UC_X86_INS_VPMINUB = 1129; + public static final int UC_X86_INS_VPMINUD = 1130; + public static final int UC_X86_INS_VPMINUQ = 1131; + public static final int UC_X86_INS_VPMINUW = 1132; + public static final int UC_X86_INS_VPMOVDB = 1133; + public static final int UC_X86_INS_VPMOVDW = 1134; + public static final int UC_X86_INS_VPMOVM2B = 1135; + public static final int UC_X86_INS_VPMOVM2D = 1136; + public static final int UC_X86_INS_VPMOVM2Q = 1137; + public static final int UC_X86_INS_VPMOVM2W = 1138; + public static final int UC_X86_INS_VPMOVMSKB = 1139; + public static final int UC_X86_INS_VPMOVQB = 1140; + public static final int UC_X86_INS_VPMOVQD = 1141; + public static final int UC_X86_INS_VPMOVQW = 1142; + public static final int UC_X86_INS_VPMOVSDB = 1143; + public static final int UC_X86_INS_VPMOVSDW = 1144; + public static final int UC_X86_INS_VPMOVSQB = 1145; + public static final int UC_X86_INS_VPMOVSQD = 1146; + public static final int UC_X86_INS_VPMOVSQW = 1147; + public static final int UC_X86_INS_VPMOVSXBD = 1148; + public static final int UC_X86_INS_VPMOVSXBQ = 1149; + public static final int UC_X86_INS_VPMOVSXBW = 1150; + public static final int UC_X86_INS_VPMOVSXDQ = 1151; + public static final int UC_X86_INS_VPMOVSXWD = 1152; + public static final int UC_X86_INS_VPMOVSXWQ = 1153; + public static final int UC_X86_INS_VPMOVUSDB = 1154; + public static final int UC_X86_INS_VPMOVUSDW = 1155; + public static final int UC_X86_INS_VPMOVUSQB = 1156; + public static final int UC_X86_INS_VPMOVUSQD = 1157; + public static final int UC_X86_INS_VPMOVUSQW = 1158; + public static final int UC_X86_INS_VPMOVZXBD = 1159; + public static final int UC_X86_INS_VPMOVZXBQ = 1160; + public static final int UC_X86_INS_VPMOVZXBW = 1161; + public static final int UC_X86_INS_VPMOVZXDQ = 1162; + public static final int UC_X86_INS_VPMOVZXWD = 1163; + public static final int UC_X86_INS_VPMOVZXWQ = 1164; + public static final int UC_X86_INS_VPMULDQ = 1165; + public static final int UC_X86_INS_VPMULHRSW = 1166; + public static final int UC_X86_INS_VPMULHUW = 1167; + public static final int UC_X86_INS_VPMULHW = 1168; + public static final int UC_X86_INS_VPMULLD = 1169; + public static final int UC_X86_INS_VPMULLQ = 1170; + public static final int UC_X86_INS_VPMULLW = 1171; + public static final int UC_X86_INS_VPMULUDQ = 1172; + public static final int UC_X86_INS_VPORD = 1173; + public static final int UC_X86_INS_VPORQ = 1174; + public static final int UC_X86_INS_VPOR = 1175; + public static final int UC_X86_INS_VPPERM = 1176; + public static final int UC_X86_INS_VPROTB = 1177; + public static final int UC_X86_INS_VPROTD = 1178; + public static final int UC_X86_INS_VPROTQ = 1179; + public static final int UC_X86_INS_VPROTW = 1180; + public static final int UC_X86_INS_VPSADBW = 1181; + public static final int UC_X86_INS_VPSCATTERDD = 1182; + public static final int UC_X86_INS_VPSCATTERDQ = 1183; + public static final int UC_X86_INS_VPSCATTERQD = 1184; + public static final int UC_X86_INS_VPSCATTERQQ = 1185; + public static final int UC_X86_INS_VPSHAB = 1186; + public static final int UC_X86_INS_VPSHAD = 1187; + public static final int UC_X86_INS_VPSHAQ = 1188; + public static final int UC_X86_INS_VPSHAW = 1189; + public static final int UC_X86_INS_VPSHLB = 1190; + public static final int UC_X86_INS_VPSHLD = 1191; + public static final int UC_X86_INS_VPSHLQ = 1192; + public static final int UC_X86_INS_VPSHLW = 1193; + public static final int UC_X86_INS_VPSHUFB = 1194; + public static final int UC_X86_INS_VPSHUFD = 1195; + public static final int UC_X86_INS_VPSHUFHW = 1196; + public static final int UC_X86_INS_VPSHUFLW = 1197; + public static final int UC_X86_INS_VPSIGNB = 1198; + public static final int UC_X86_INS_VPSIGND = 1199; + public static final int UC_X86_INS_VPSIGNW = 1200; + public static final int UC_X86_INS_VPSLLDQ = 1201; + public static final int UC_X86_INS_VPSLLD = 1202; + public static final int UC_X86_INS_VPSLLQ = 1203; + public static final int UC_X86_INS_VPSLLVD = 1204; + public static final int UC_X86_INS_VPSLLVQ = 1205; + public static final int UC_X86_INS_VPSLLW = 1206; + public static final int UC_X86_INS_VPSRAD = 1207; + public static final int UC_X86_INS_VPSRAQ = 1208; + public static final int UC_X86_INS_VPSRAVD = 1209; + public static final int UC_X86_INS_VPSRAVQ = 1210; + public static final int UC_X86_INS_VPSRAW = 1211; + public static final int UC_X86_INS_VPSRLDQ = 1212; + public static final int UC_X86_INS_VPSRLD = 1213; + public static final int UC_X86_INS_VPSRLQ = 1214; + public static final int UC_X86_INS_VPSRLVD = 1215; + public static final int UC_X86_INS_VPSRLVQ = 1216; + public static final int UC_X86_INS_VPSRLW = 1217; + public static final int UC_X86_INS_VPSUBB = 1218; + public static final int UC_X86_INS_VPSUBD = 1219; + public static final int UC_X86_INS_VPSUBQ = 1220; + public static final int UC_X86_INS_VPSUBSB = 1221; + public static final int UC_X86_INS_VPSUBSW = 1222; + public static final int UC_X86_INS_VPSUBUSB = 1223; + public static final int UC_X86_INS_VPSUBUSW = 1224; + public static final int UC_X86_INS_VPSUBW = 1225; + public static final int UC_X86_INS_VPTESTMD = 1226; + public static final int UC_X86_INS_VPTESTMQ = 1227; + public static final int UC_X86_INS_VPTESTNMD = 1228; + public static final int UC_X86_INS_VPTESTNMQ = 1229; + public static final int UC_X86_INS_VPTEST = 1230; + public static final int UC_X86_INS_VPUNPCKHBW = 1231; + public static final int UC_X86_INS_VPUNPCKHDQ = 1232; + public static final int UC_X86_INS_VPUNPCKHQDQ = 1233; + public static final int UC_X86_INS_VPUNPCKHWD = 1234; + public static final int UC_X86_INS_VPUNPCKLBW = 1235; + public static final int UC_X86_INS_VPUNPCKLDQ = 1236; + public static final int UC_X86_INS_VPUNPCKLQDQ = 1237; + public static final int UC_X86_INS_VPUNPCKLWD = 1238; + public static final int UC_X86_INS_VPXORD = 1239; + public static final int UC_X86_INS_VPXORQ = 1240; + public static final int UC_X86_INS_VPXOR = 1241; + public static final int UC_X86_INS_VRCP14PD = 1242; + public static final int UC_X86_INS_VRCP14PS = 1243; + public static final int UC_X86_INS_VRCP14SD = 1244; + public static final int UC_X86_INS_VRCP14SS = 1245; + public static final int UC_X86_INS_VRCP28PD = 1246; + public static final int UC_X86_INS_VRCP28PS = 1247; + public static final int UC_X86_INS_VRCP28SD = 1248; + public static final int UC_X86_INS_VRCP28SS = 1249; + public static final int UC_X86_INS_VRCPPS = 1250; + public static final int UC_X86_INS_VRCPSS = 1251; + public static final int UC_X86_INS_VRNDSCALEPD = 1252; + public static final int UC_X86_INS_VRNDSCALEPS = 1253; + public static final int UC_X86_INS_VRNDSCALESD = 1254; + public static final int UC_X86_INS_VRNDSCALESS = 1255; + public static final int UC_X86_INS_VROUNDPD = 1256; + public static final int UC_X86_INS_VROUNDPS = 1257; + public static final int UC_X86_INS_VROUNDSD = 1258; + public static final int UC_X86_INS_VROUNDSS = 1259; + public static final int UC_X86_INS_VRSQRT14PD = 1260; + public static final int UC_X86_INS_VRSQRT14PS = 1261; + public static final int UC_X86_INS_VRSQRT14SD = 1262; + public static final int UC_X86_INS_VRSQRT14SS = 1263; + public static final int UC_X86_INS_VRSQRT28PD = 1264; + public static final int UC_X86_INS_VRSQRT28PS = 1265; + public static final int UC_X86_INS_VRSQRT28SD = 1266; + public static final int UC_X86_INS_VRSQRT28SS = 1267; + public static final int UC_X86_INS_VRSQRTPS = 1268; + public static final int UC_X86_INS_VRSQRTSS = 1269; + public static final int UC_X86_INS_VSCATTERDPD = 1270; + public static final int UC_X86_INS_VSCATTERDPS = 1271; + public static final int UC_X86_INS_VSCATTERPF0DPD = 1272; + public static final int UC_X86_INS_VSCATTERPF0DPS = 1273; + public static final int UC_X86_INS_VSCATTERPF0QPD = 1274; + public static final int UC_X86_INS_VSCATTERPF0QPS = 1275; + public static final int UC_X86_INS_VSCATTERPF1DPD = 1276; + public static final int UC_X86_INS_VSCATTERPF1DPS = 1277; + public static final int UC_X86_INS_VSCATTERPF1QPD = 1278; + public static final int UC_X86_INS_VSCATTERPF1QPS = 1279; + public static final int UC_X86_INS_VSCATTERQPD = 1280; + public static final int UC_X86_INS_VSCATTERQPS = 1281; + public static final int UC_X86_INS_VSHUFPD = 1282; + public static final int UC_X86_INS_VSHUFPS = 1283; + public static final int UC_X86_INS_VSQRTPD = 1284; + public static final int UC_X86_INS_VSQRTPS = 1285; + public static final int UC_X86_INS_VSQRTSD = 1286; + public static final int UC_X86_INS_VSQRTSS = 1287; + public static final int UC_X86_INS_VSTMXCSR = 1288; + public static final int UC_X86_INS_VSUBPD = 1289; + public static final int UC_X86_INS_VSUBPS = 1290; + public static final int UC_X86_INS_VSUBSD = 1291; + public static final int UC_X86_INS_VSUBSS = 1292; + public static final int UC_X86_INS_VTESTPD = 1293; + public static final int UC_X86_INS_VTESTPS = 1294; + public static final int UC_X86_INS_VUNPCKHPD = 1295; + public static final int UC_X86_INS_VUNPCKHPS = 1296; + public static final int UC_X86_INS_VUNPCKLPD = 1297; + public static final int UC_X86_INS_VUNPCKLPS = 1298; + public static final int UC_X86_INS_VZEROALL = 1299; + public static final int UC_X86_INS_VZEROUPPER = 1300; + public static final int UC_X86_INS_WAIT = 1301; + public static final int UC_X86_INS_WBINVD = 1302; + public static final int UC_X86_INS_WRFSBASE = 1303; + public static final int UC_X86_INS_WRGSBASE = 1304; + public static final int UC_X86_INS_WRMSR = 1305; + public static final int UC_X86_INS_XABORT = 1306; + public static final int UC_X86_INS_XACQUIRE = 1307; + public static final int UC_X86_INS_XBEGIN = 1308; + public static final int UC_X86_INS_XCHG = 1309; + public static final int UC_X86_INS_XCRYPTCBC = 1310; + public static final int UC_X86_INS_XCRYPTCFB = 1311; + public static final int UC_X86_INS_XCRYPTCTR = 1312; + public static final int UC_X86_INS_XCRYPTECB = 1313; + public static final int UC_X86_INS_XCRYPTOFB = 1314; + public static final int UC_X86_INS_XEND = 1315; + public static final int UC_X86_INS_XGETBV = 1316; + public static final int UC_X86_INS_XLATB = 1317; + public static final int UC_X86_INS_XRELEASE = 1318; + public static final int UC_X86_INS_XRSTOR = 1319; + public static final int UC_X86_INS_XRSTOR64 = 1320; + public static final int UC_X86_INS_XRSTORS = 1321; + public static final int UC_X86_INS_XRSTORS64 = 1322; + public static final int UC_X86_INS_XSAVE = 1323; + public static final int UC_X86_INS_XSAVE64 = 1324; + public static final int UC_X86_INS_XSAVEC = 1325; + public static final int UC_X86_INS_XSAVEC64 = 1326; + public static final int UC_X86_INS_XSAVEOPT = 1327; + public static final int UC_X86_INS_XSAVEOPT64 = 1328; + public static final int UC_X86_INS_XSAVES = 1329; + public static final int UC_X86_INS_XSAVES64 = 1330; + public static final int UC_X86_INS_XSETBV = 1331; + public static final int UC_X86_INS_XSHA1 = 1332; + public static final int UC_X86_INS_XSHA256 = 1333; + public static final int UC_X86_INS_XSTORE = 1334; + public static final int UC_X86_INS_XTEST = 1335; + public static final int UC_X86_INS_FDISI8087_NOP = 1336; + public static final int UC_X86_INS_FENI8087_NOP = 1337; + public static final int UC_X86_INS_ENDING = 1338; + } From 1d6bd17a1319705fa608ae02710c46db8cf83eda Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 20:54:05 -0700 Subject: [PATCH 3/9] Update java bindings for new version of uc_mem_map --- bindings/java/Makefile | 13 +++++++ .../java/samples/SampleNetworkAuditing.java | 38 +++++++++---------- bindings/java/samples/Sample_arm.java | 4 +- bindings/java/samples/Sample_arm64.java | 2 +- bindings/java/samples/Sample_m68k.java | 2 +- bindings/java/samples/Sample_mips.java | 4 +- bindings/java/samples/Sample_sparc.java | 2 +- bindings/java/samples/Sample_x86.java | 20 +++++----- bindings/java/samples/Shellcode.java | 2 +- bindings/java/unicorn/Unicorn.java | 2 +- bindings/java/unicorn_Unicorn.c | 6 +-- include/unicorn/unicorn.h | 2 +- 12 files changed, 55 insertions(+), 42 deletions(-) mode change 100644 => 100755 bindings/java/Makefile mode change 100644 => 100755 bindings/java/samples/SampleNetworkAuditing.java mode change 100644 => 100755 bindings/java/samples/Sample_arm.java mode change 100644 => 100755 bindings/java/samples/Sample_arm64.java mode change 100644 => 100755 bindings/java/samples/Sample_m68k.java mode change 100644 => 100755 bindings/java/samples/Sample_mips.java mode change 100644 => 100755 bindings/java/samples/Sample_sparc.java mode change 100644 => 100755 bindings/java/samples/Sample_x86.java mode change 100644 => 100755 bindings/java/samples/Shellcode.java mode change 100644 => 100755 bindings/java/unicorn_Unicorn.c mode change 100644 => 100755 include/unicorn/unicorn.h diff --git a/bindings/java/Makefile b/bindings/java/Makefile old mode 100644 new mode 100755 index 94fcfee6..4d3af3e5 --- a/bindings/java/Makefile +++ b/bindings/java/Makefile @@ -1,3 +1,6 @@ + +.PHONY: gen_const clean + JAVA_HOME := $(shell jrunscript -e 'java.lang.System.out.println(java.lang.System.getProperty("java.home"));') JAVA_INC := $(shell realpath $(JAVA_HOME)/../include) @@ -63,3 +66,13 @@ jar: jarfiles install: lib jar cp libunicorn_java$(LIB_EXT) $(JAVA_HOME)/lib/ext cp $(JARFILE) $(JAVA_HOME)/lib/ext + +gen_const: + cd .. && python const_generator.py java + +clean: + rm unicorn/*.class + rm samples/*.class + rm *.so + rm *.dylib + rm *.dll \ No newline at end of file diff --git a/bindings/java/samples/SampleNetworkAuditing.java b/bindings/java/samples/SampleNetworkAuditing.java old mode 100644 new mode 100755 index 7242b9e7..c275a25d --- a/bindings/java/samples/SampleNetworkAuditing.java +++ b/bindings/java/samples/SampleNetworkAuditing.java @@ -245,25 +245,25 @@ public class SampleNetworkAuditing { static { SOCKET_TYPES = new Hashtable(); ADDR_FAMILY = new Hashtable(); - SOCKET_TYPES.put(1, "SOCK_STREAM"); - SOCKET_TYPES.put(2, "SOCK_DGRAM"); - SOCKET_TYPES.put(3, "SOCK_RAW"); - SOCKET_TYPES.put(4, "SOCK_RDM"); - SOCKET_TYPES.put(5, "SOCK_SEQPACKET"); - SOCKET_TYPES.put(10, "SOCK_PACKET"); + SOCKET_TYPES.put(1L, "SOCK_STREAM"); + SOCKET_TYPES.put(2L, "SOCK_DGRAM"); + SOCKET_TYPES.put(3L, "SOCK_RAW"); + SOCKET_TYPES.put(4L, "SOCK_RDM"); + SOCKET_TYPES.put(5L, "SOCK_SEQPACKET"); + SOCKET_TYPES.put(10L, "SOCK_PACKET"); - ADDR_FAMILY.put(0, "AF_UNSPEC"); - ADDR_FAMILY.put(1, "AF_UNIX"); - ADDR_FAMILY.put(2, "AF_INET"); - ADDR_FAMILY.put(3, "AF_AX25"); - ADDR_FAMILY.put(4, "AF_IPX"); - ADDR_FAMILY.put(5, "AF_APPLETALK"); - ADDR_FAMILY.put(6, "AF_NETROM"); - ADDR_FAMILY.put(7, "AF_BRIDGE"); - ADDR_FAMILY.put(8, "AF_AAL5"); - ADDR_FAMILY.put(9, "AF_X25"); - ADDR_FAMILY.put(10, "AF_INET6"); - ADDR_FAMILY.put(12, "AF_MAX"); + ADDR_FAMILY.put(0L, "AF_UNSPEC"); + ADDR_FAMILY.put(1L, "AF_UNIX"); + ADDR_FAMILY.put(2L, "AF_INET"); + ADDR_FAMILY.put(3L, "AF_AX25"); + ADDR_FAMILY.put(4L, "AF_IPX"); + ADDR_FAMILY.put(5L, "AF_APPLETALK"); + ADDR_FAMILY.put(6L, "AF_NETROM"); + ADDR_FAMILY.put(7L, "AF_BRIDGE"); + ADDR_FAMILY.put(8L, "AF_AAL5"); + ADDR_FAMILY.put(9L, "AF_X25"); + ADDR_FAMILY.put(10L, "AF_INET6"); + ADDR_FAMILY.put(12L, "AF_MAX"); } // http://shell-storm.org/shellcode/files/shellcode-861.php @@ -395,7 +395,7 @@ public class SampleNetworkAuditing { Unicorn mu = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - mu.mem_map(ADDRESS, 2 * 1024 * 1024); + mu.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory mu.mem_write(ADDRESS, code); diff --git a/bindings/java/samples/Sample_arm.java b/bindings/java/samples/Sample_arm.java old mode 100644 new mode 100755 index 8d6ddebe..ca3a8163 --- a/bindings/java/samples/Sample_arm.java +++ b/bindings/java/samples/Sample_arm.java @@ -51,7 +51,7 @@ public class Sample_arm { Unicorn u = new Unicorn(Unicorn.UC_ARCH_ARM, Unicorn.UC_MODE_ARM); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, ARM_CODE); @@ -93,7 +93,7 @@ public class Sample_arm { Unicorn u = new Unicorn(Unicorn.UC_ARCH_ARM, Unicorn.UC_MODE_THUMB); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, THUMB_CODE); diff --git a/bindings/java/samples/Sample_arm64.java b/bindings/java/samples/Sample_arm64.java old mode 100644 new mode 100755 index d406d176..12464eaa --- a/bindings/java/samples/Sample_arm64.java +++ b/bindings/java/samples/Sample_arm64.java @@ -79,7 +79,7 @@ public class Sample_arm64 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_ARM64, Unicorn.UC_MODE_ARM); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, ARM_CODE); diff --git a/bindings/java/samples/Sample_m68k.java b/bindings/java/samples/Sample_m68k.java old mode 100644 new mode 100755 index 1988c500..129cad2e --- a/bindings/java/samples/Sample_m68k.java +++ b/bindings/java/samples/Sample_m68k.java @@ -95,7 +95,7 @@ public class Sample_m68k { Unicorn u = new Unicorn(Unicorn.UC_ARCH_M68K, Unicorn.UC_MODE_BIG_ENDIAN); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, M68K_CODE); diff --git a/bindings/java/samples/Sample_mips.java b/bindings/java/samples/Sample_mips.java old mode 100644 new mode 100755 index 60c85fab..14ac5d14 --- a/bindings/java/samples/Sample_mips.java +++ b/bindings/java/samples/Sample_mips.java @@ -78,7 +78,7 @@ public class Sample_mips { Unicorn u = new Unicorn(Unicorn.UC_ARCH_MIPS, Unicorn.UC_MODE_MIPS32 + Unicorn.UC_MODE_BIG_ENDIAN); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, MIPS_CODE_EB); @@ -116,7 +116,7 @@ public class Sample_mips { Unicorn u = new Unicorn(Unicorn.UC_ARCH_MIPS, Unicorn.UC_MODE_MIPS32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, MIPS_CODE_EL); diff --git a/bindings/java/samples/Sample_sparc.java b/bindings/java/samples/Sample_sparc.java old mode 100644 new mode 100755 index 0b109f86..e30daf60 --- a/bindings/java/samples/Sample_sparc.java +++ b/bindings/java/samples/Sample_sparc.java @@ -79,7 +79,7 @@ public class Sample_sparc { Unicorn u = new Unicorn(Unicorn.UC_ARCH_SPARC, Unicorn.UC_MODE_BIG_ENDIAN); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, SPARC_CODE); diff --git a/bindings/java/samples/Sample_x86.java b/bindings/java/samples/Sample_x86.java old mode 100644 new mode 100755 index 5f847428..f92e1392 --- a/bindings/java/samples/Sample_x86.java +++ b/bindings/java/samples/Sample_x86.java @@ -91,7 +91,7 @@ public class Sample_x86 { System.out.printf(">>> Missing memory is being WRITE at 0x%x, data size = %d, data value = 0x%x\n", address, size, value); // map this memory in with 2MB in size - u.mem_map(0xaaaa0000, 2 * 1024*1024); + u.mem_map(0xaaaa0000, 2 * 1024*1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // return true to indicate we want to continue return true; } @@ -193,7 +193,7 @@ public class Sample_x86 { } // map 2MB memory for this emulation - uc.mem_map(ADDRESS, 2 * 1024 * 1024); + uc.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory try { @@ -251,7 +251,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_INOUT); @@ -294,7 +294,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_JUMP); @@ -326,7 +326,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_LOOP); @@ -363,7 +363,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_MEM_READ); @@ -410,7 +410,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_MEM_WRITE); @@ -470,7 +470,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_JMP_INVALID); @@ -528,7 +528,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_64); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE64); @@ -615,7 +615,7 @@ public class Sample_x86 { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_16); // map 8KB memory for this emulation - u.mem_map(0, 8 * 1024); + u.mem_map(0, 8 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(0, X86_CODE16); diff --git a/bindings/java/samples/Shellcode.java b/bindings/java/samples/Shellcode.java old mode 100644 new mode 100755 index 7a15e7a3..9a1c1c81 --- a/bindings/java/samples/Shellcode.java +++ b/bindings/java/samples/Shellcode.java @@ -121,7 +121,7 @@ public class Shellcode { Unicorn u = new Unicorn(Unicorn.UC_ARCH_X86, Unicorn.UC_MODE_32); // map 2MB memory for this emulation - u.mem_map(ADDRESS, 2 * 1024 * 1024); + u.mem_map(ADDRESS, 2 * 1024 * 1024, Unicorn.UC_PROT_READ | Unicorn.UC_PROT_WRITE); // write machine code to be emulated to memory u.mem_write(ADDRESS, X86_CODE32_SELF); diff --git a/bindings/java/unicorn/Unicorn.java b/bindings/java/unicorn/Unicorn.java index 7d94c345..985a322d 100755 --- a/bindings/java/unicorn/Unicorn.java +++ b/bindings/java/unicorn/Unicorn.java @@ -623,7 +623,7 @@ public class Unicorn implements UnicornConst, ArmConst, Arm64Const, M68kConst, S * @param address Base address of the memory range * @param size Size of the memory block. */ - public native void mem_map(long address, long size) throws UnicornException; + public native void mem_map(long address, long size, int perms) throws UnicornException; } diff --git a/bindings/java/unicorn_Unicorn.c b/bindings/java/unicorn_Unicorn.c old mode 100644 new mode 100755 index aa141bb2..cd0428f9 --- a/bindings/java/unicorn_Unicorn.c +++ b/bindings/java/unicorn_Unicorn.c @@ -502,13 +502,13 @@ JNIEXPORT void JNICALL Java_unicorn_Unicorn_hook_1del /* * Class: unicorn_Unicorn * Method: mem_map - * Signature: (JJ)V + * Signature: (JJI)V */ JNIEXPORT void JNICALL Java_unicorn_Unicorn_mem_1map - (JNIEnv *env, jobject self, jlong address, jlong size) { + (JNIEnv *env, jobject self, jlong address, jlong size, jint perms) { uch handle = getHandle(env, self); - uc_err err = uc_mem_map(handle, (uint64_t)address, (size_t)size); + uc_err err = uc_mem_map(handle, (uint64_t)address, (size_t)size, (uint32_t)perms); if (err != UC_ERR_OK) { throwException(env, err); } diff --git a/include/unicorn/unicorn.h b/include/unicorn/unicorn.h old mode 100644 new mode 100755 index 556b6c17..fbe5991c --- a/include/unicorn/unicorn.h +++ b/include/unicorn/unicorn.h @@ -95,7 +95,7 @@ typedef enum uc_mode { UC_MODE_MIPS32R6 = 1 << 6, // Mips32r6 ISA UC_MODE_V9 = 1 << 4, // SparcV9 mode (Sparc) UC_MODE_QPX = 1 << 4, // Quad Processing eXtensions mode (PPC) - UC_MODE_BIG_ENDIAN = 1 << 31, // big-endian mode + UC_MODE_BIG_ENDIAN = 1 << 30, // big-endian mode UC_MODE_MIPS32 = UC_MODE_32, // Mips32 ISA (Mips) UC_MODE_MIPS64 = UC_MODE_64, // Mips64 ISA (Mips) } uc_mode; From e29cdbe8675ce9fa537c7b9b72474aec348907d2 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 20:56:16 -0700 Subject: [PATCH 4/9] File permissions --- bindings/java/Makefile | 0 bindings/java/samples/SampleNetworkAuditing.java | 0 bindings/java/samples/Sample_arm.java | 0 bindings/java/samples/Sample_arm64.java | 0 bindings/java/samples/Sample_m68k.java | 0 bindings/java/samples/Sample_mips.java | 0 bindings/java/samples/Sample_sparc.java | 0 bindings/java/samples/Sample_x86.java | 0 bindings/java/samples/Shellcode.java | 0 bindings/java/unicorn/Unicorn.java | 0 bindings/java/unicorn_Unicorn.c | 0 include/unicorn/unicorn.h | 0 regress/nr_mem_test.c | 0 13 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 bindings/java/Makefile mode change 100755 => 100644 bindings/java/samples/SampleNetworkAuditing.java mode change 100755 => 100644 bindings/java/samples/Sample_arm.java mode change 100755 => 100644 bindings/java/samples/Sample_arm64.java mode change 100755 => 100644 bindings/java/samples/Sample_m68k.java mode change 100755 => 100644 bindings/java/samples/Sample_mips.java mode change 100755 => 100644 bindings/java/samples/Sample_sparc.java mode change 100755 => 100644 bindings/java/samples/Sample_x86.java mode change 100755 => 100644 bindings/java/samples/Shellcode.java mode change 100755 => 100644 bindings/java/unicorn/Unicorn.java mode change 100755 => 100644 bindings/java/unicorn_Unicorn.c mode change 100755 => 100644 include/unicorn/unicorn.h mode change 100755 => 100644 regress/nr_mem_test.c diff --git a/bindings/java/Makefile b/bindings/java/Makefile old mode 100755 new mode 100644 diff --git a/bindings/java/samples/SampleNetworkAuditing.java b/bindings/java/samples/SampleNetworkAuditing.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_arm.java b/bindings/java/samples/Sample_arm.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_arm64.java b/bindings/java/samples/Sample_arm64.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_m68k.java b/bindings/java/samples/Sample_m68k.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_mips.java b/bindings/java/samples/Sample_mips.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_sparc.java b/bindings/java/samples/Sample_sparc.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Sample_x86.java b/bindings/java/samples/Sample_x86.java old mode 100755 new mode 100644 diff --git a/bindings/java/samples/Shellcode.java b/bindings/java/samples/Shellcode.java old mode 100755 new mode 100644 diff --git a/bindings/java/unicorn/Unicorn.java b/bindings/java/unicorn/Unicorn.java old mode 100755 new mode 100644 diff --git a/bindings/java/unicorn_Unicorn.c b/bindings/java/unicorn_Unicorn.c old mode 100755 new mode 100644 diff --git a/include/unicorn/unicorn.h b/include/unicorn/unicorn.h old mode 100755 new mode 100644 diff --git a/regress/nr_mem_test.c b/regress/nr_mem_test.c old mode 100755 new mode 100644 From 4e1cb3afde36c697ebfa359589bc080e9ac73f24 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 23:07:52 -0700 Subject: [PATCH 5/9] pre-pull cleanup --- bindings/const_generator.py | 0 qemu/header_gen.py | 0 qemu/scripts/make_device_config.sh | 0 3 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 bindings/const_generator.py mode change 100755 => 100644 qemu/header_gen.py mode change 100644 => 100755 qemu/scripts/make_device_config.sh diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100755 new mode 100644 diff --git a/qemu/header_gen.py b/qemu/header_gen.py old mode 100755 new mode 100644 diff --git a/qemu/scripts/make_device_config.sh b/qemu/scripts/make_device_config.sh old mode 100644 new mode 100755 From 72d69d5d38d1025ca756905e9070f4cef9f060a8 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 23:29:59 -0700 Subject: [PATCH 6/9] Fix capitalization for unicorn.h mapping in java binding --- bindings/const_generator.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 bindings/const_generator.py diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100644 new mode 100755 index f28681ec..41371e7b --- a/bindings/const_generator.py +++ b/bindings/const_generator.py @@ -52,7 +52,7 @@ template = { 'x86.h': 'X86', 'sparc.h': 'Sparc', 'm68k.h': 'M68k', - 'unicorn.h': 'unicorn', + 'unicorn.h': 'Unicorn', 'comment_open': '//', 'comment_close': '', }, From 52b04f5939fa44100a2dd1a9ea0e86ff3bfda455 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 23:31:15 -0700 Subject: [PATCH 7/9] Fix perms --- bindings/const_generator.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 bindings/const_generator.py diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100755 new mode 100644 From c24944cfa93ac045cf174e8e796862f7dbdc7f27 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 23:33:38 -0700 Subject: [PATCH 8/9] Fix capitalization for unicorn.h mapping in java and go binding --- bindings/const_generator.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 bindings/const_generator.py diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100644 new mode 100755 index 41371e7b..5a50accf --- a/bindings/const_generator.py +++ b/bindings/const_generator.py @@ -36,7 +36,7 @@ template = { 'x86.h': 'x86', 'sparc.h': 'sparc', 'm68k.h': 'm68k', - 'unicorn.h': 'Unicorn', + 'unicorn.h': 'unicorn', 'comment_open': '//', 'comment_close': '', }, From 27d5c7ec48a13d17ca4fcbc4207b877817519973 Mon Sep 17 00:00:00 2001 From: Chris Eagle Date: Fri, 28 Aug 2015 23:33:49 -0700 Subject: [PATCH 9/9] Fix perms --- bindings/const_generator.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 bindings/const_generator.py diff --git a/bindings/const_generator.py b/bindings/const_generator.py old mode 100755 new mode 100644